These new platforms will be great as long as we pay attention to application developers
Some metrics to track and a mindset to keep. Also an easy chili recipe, "edge" is a vendor concept, and the Picasso in Vondelpark.
Remember that a platform is for application developers
Sam Newman has a great take on the dangers of forgetting the point of developers platforms. As you may recall, I think the same: infrastructure builders get easily distracted by building infrastructure when it’d be more helpful to pay more attention to developer usability and needs.
This is inevitable, and all too human. The point is not that they’re “bad,” just that we all need to build up the habit of always thinking about the customer. And when it comes to platforms, that’s the application developers.
While I wouldn’t say my case is rock solid, I think the obsession both on the buy and sell/supplier side with kubernetes is proof of this bad habit: we focused on kubernetes for seven years instead of focusing on improving developer experience. It’s been long enough now that there are benefits in the cloud native community. I’m not sure about the other 85% to 95% of normie IT shops, but it’ll come if we stick with it.
Also, we’re past the point of no return, probably, with kubernetes. To suggest we do something else is just to lose more time. We’ve lost a lot of time, and it’s great we’re returning to application developers. Let’s try to stick on that a little longer this go-round.
And, also, maybe it was all a good idea!
Despite my whole “distraction” vibe, thanks to all that time spent on infrastructure, if you’re in infrastructure nowadays, you’ve now in a great position to improve things.
Pay close(r) attention the what developers needs, and track developer-related metrics and improvement. To tell if you’re going in the right direction, pay attention to things like shortening your app release cycles, growing revenue and profit, better customer retention and experience. If your developers aren’t deploying faster, if they’re not using your platforms, if your business isn’t growing revenue/profits, customer retention, and customer experience, you’re doing something wrong.
There was fantastic work done, and more being done, to create and establish kubernetes as an infrastructure standard. That kind of work and then industry acceptance is usually impossible. Getting an industry standard set takes a long time (remember HTML, Java, JavaScript, MySQL and Postgres, etc.?), but once you do it you have to stop tinkering (remember RIA?). Then the whole community can take advantage of it.
Sam on why kubernetes won:
Kubernetes, again vanilla Kubernetes, not that complex expensive disappointment your CIO purchased, also doesn’t do much. At its heart, its main job is to help schedule containers. It was successful for a number of reasons. Firstly, because it has a pretty good API allowing for extensibility. Secondly, because it was competing against solutions that were by turns too expensive (PCF) [well, and here we are spending on building it out again…], confusingly complex (Mesos), or suffering an identity crisis (like Docker Swarm - I can only assume the marketing geniuses at Docker ended up in charge of naming stuff at Google). Thirdly, and most importantly, because a bunch of people got scared by AWS and thought backing the project might stop Amazon becoming the dominant cloud platform for deploying software.
Also, he references the DevOps Loop video I commissioned from him. I re-listened to it recently driving to cfgmgmtcamp. He develops the concept of “habitability” as a good mix of developer usability, lowering cognitive load, and, like, wanting to build a nice space for developers.
Another point he raises in the post, and that video, is the importance of letting developers chose to use your platform. This is a was to force the platform team to do a good job. This point is difficult - it’s close to a doctor telling you that to be healthy you need to eat more vegetables and exercise more. The difficulty isn’t the desired end-state, it’s how to get there.
One thing that’s also notable in Sam’s commentary (in a good way) is that he rarely goes down the security and compliance FUD-hole. Us vendors focus on that a lot because the infrastructure people who pay for our stuff care about it, but developers generally don’t.
Indeed, I think developers assume that security and compliance is someone else’s problem. And…it is…sort of? I mean, there’s whole separate groups of people and policy. The org structure is the single source of truth.
In the same drive to Ghent, I listened Kelsey’s talk on SaLSA (secure software supply chain!…and all that). It was a great, and inspiring even. That’s the kind of approach you have to take with developers to get them to care about something. I’m not sure the security-FUD marketing we all do is at that level yet.
Speaking of!
You should check out how we’re trying to close the gap between infrastrure and what application developers need. There are two ways:
The Tanzu Application Platform - it’s our toolkit for building a platform on-top of kubernetes. Look, it’s a big, sprawling suite of many different applications. That’s what makes it a toolkit and so useful to most any, large IT shop. It’ll solve your internal developer portal problems, your API management problems, how you package, configure and deploy apps to run on kubernetes, how your developers can monitor their applications in production…and more. If you’re working on platforms, if you’re an infrastructure team building out kubernetes for developers, you need to check it out.
We have a methodology for running and building platforms called platform as a product. We’ve honed it in the real world for about ten years now, learning what works and doesn’t work in large organizations. Check out this white paper on it and talk to use about putting it in place. The methodology works.
Also, if you’d just like a pre-integrated application developer stack that’s mature and proven to work in large organizations, check out the Tanzu Application Platform (formally called Pivotal Cloud Foundry). It’s an alternative approach to platforms and focuses on making many decisions for you when you don’t need to customize how it all works and fits together. If you’re doing Java apps, it’ll be especially fantastic.
While Sam says it was too expensive, I think if you compare it to the going rate of the what we have now, it’s pretty much the same…and it has the benefit of requiring little bootstrapping time.
Quick and Easy Chili
I like Chili, but I haven’t figured out an easy recipe. Here’s my documentation of Kenji’s recent video making chili. The recipe in his book and on serious eats is a bit more complicated, but his video is simple, but not documented. The below looks lengthy, but it’s actually very easy. I don’t know about 15 minutes, but it should all be done in about 30 or 40. Also, it uses very basic ingredients - I mean, if you keep a proper Texas kitchen with, among other things, chili powder and cumin
Cover the bottom of a Dutch oven with olive oil and heat on mid-high. Put in three pounds of ground beef and push it down into one lump.
While the ground meat is cooking, cut up one US-sized onion in little pieces and six cloves of garlic, diced too.
While it cooks, mix together: 2 tablespoons chili powder, 1 tablespoon ground cumin, 1 tablespoon oregano, a teaspoon of salt, and a teaspoon of garlic power. You can do this in a pestle and mortar kind of crushing it all together, but whatever.
By this point, your beef should be browned on one side. Break up the meant some and turn it over on the other side. Keep it on high heat.
Meanwhile, get a tablespoon or two of tomato paste and two cans of crushed tomatoes.
Now, don’t drain the beef, leave everything in there, and mix in the onions and garlic for five or so minutes, mixing frequently. Then mix in the tomato paste and the chili mix. Stir that around for three or so minutes so that it mixes in with everything.
Then pour in the crushed tomatoes. Pour in a one or two cups of chicken broth (depending on how “soup” you like things - just eyeball it), add two bay leaves, and stir around. Mix in a can or two of kidney beans. (I am a Texan, so I know the bean shit-fit people have. I don’t care: I like beans.)
Bring to a boil, and it’s fine to eat. You can also let it sit there for thirty or so more minutes.
You can add some ripped up cilantro leaves, sour cream if you have it, fresh diced jalapeños would be good. A like some finely chopped fresh onion. Shredded mild cheese is good on it too.
This is spicy for a three year old, but just good enough for a nine year old. Add another tablespoon of chili if you want it spicier.
You can also do this with chicken. Instead of putting ground meat in, brown four or so chicken breasts. Again, put the Dutch oven on mid-high heath with lots of oil. Leave the chicken on each side, like, five minutes. Then follow the same steps. With chicken, let it cook more in the liquid. Measure it until it’s about 165F. Then take out each piece and pull it apart with forks, shredding it. Put it back in and mix it, and then eat.
With the chicken chili, the next morning you can cook some eggs and spoon on just the chili juice. An omelette with some oude kaas will remind of home but keep you ground in The Netherlands.
Wastebook
If you’re a contrarian consistently and long enough, eventually you’ll find someone who’s wrong and you’ll finally be right.
I guess the other side is: in matters of mental health, the things you disliked at the time seem good after they’ve been helpful.
“Krasznahorkai’s principle tool is the very very very long sentence, sometimes a whole chapter in length, and it is utilised here to suspend time, and to derange time.” Here.
Relative to your interests
Cyborgism - ‘the idea of cyborgism is to keep simulators as simulators, and to provide the “missing pieces” of agency with human intelligence instead.” For example: ‘Myopic thinking: Humans struggle to separate themselves from their long-term context, and think about a problem completely fresh. It’s very easy to get stuck in unproductive modes of thought and our minds cannot be easily “reset.” Simulators have no such trouble, and reason “from scratch” about any situation you put them in, relying on a limited context which can be easily replaced or modified to obtain fresh thoughts."’
The Global Economy Looks OK. So, What’s With All the Layoffs? - More analysis from the “we’re all one family” front.
The Stubborn Immaturity of Edge Computing - Two points: (1) “edge” is mostly a vendor construct. Customers actually just think of it as computers, and, (2) as such, you’ll see a people using a bunch of different things and creating “sprawl,” that is, incompatible systems that are managed differently and so create more work. Ever the same with enterprise IT.
Elon Musk fires a top Twitter engineer over his declining view count - “Almost two months later, though, view counts have had the opposite effect, emphasizing how little engagement most posts get relative to their audience size.”
Logoff
It’s Monday, I don’t have any travel until I go to SCALE and DevOpsDays LA at the start of March. Matt Ray and I will both be there, so we’d like to have a Software Defined Talk podcast meetup. I am shit-poor at organizing things like this, so we’ll see what happens. If anything, hopefully, we can just reserve a table at a bar-like place and buy a few rounds of drinks and snacks for everyone. If you’re going to be there and want to come, make sure you’re subscribed to this newsletter and you’ll have more details.