Feel free to ignore GenAI for now – a new kind of software developer is being born
Kubernetes whizz says devs can redefine their roles and capitalize on coding ML rewards
Interview Software industry veteran and developer advocate Kelsey Hightower, well known for his contributions to the Kubernetes community, has an interesting take on generative AI: he won't be paying too much attention to it for now, except insofar as how it will be instrumental in changing what it means to be a software engineer.
While the current obsession sweeping the industry is not lost on him, he prefers to focus on other areas. "I actually made a conscious decision on social media. I said generative AI is the one wave that I'm just going to completely ignore."
Last week, The Register wrote about one part of a discussion we had with the Kubernetes guru at Civo's recent Navigate event in Berlin. Today we cover the rest of it.
Most people don't study software development. They study the craft of how to write software. They don't study the art
The coder brought up an analogy to the Olympics when he advocated for government bankrolling of open source, arguing: "Every country invests in their athletes year-round, and they show up to compete at the highest levels, and when they can no longer do so, then the next breed of athletes show up, and there's always a pipeline for them to train to get better, and hopefully we create nice things."
This, he said, would create a pipeline of athletes and coders to future-proof the industry – which needs to redefine what a dev is at the same time as it considers both AI risks and how to capitalize on its rewards.
He argued that a "pipeline of athletes or developers is important since there is a real danger that over-reliance on AI coding assistants might choke off that pipeline in the future, removing the next generation of engineers."
He's not too concerned about this. "If you shift the conversation to 'What is a software developer?' to me, that is a person that understands how to leverage software to solve problems. Today, unfortunately, too much of that time is spent with the ceremony between you convincing the computer what to do by writing code in the arcane language that is purpose-built for the compiler and not the human.
"So that's what we spend a lot of our time on. That means we don't do a lot of rough drafts, we don't do a lot of prototyping, we don't do a lot of models and renderings. We don't go out and talk to every customer and watch them work.
"But imagine if you had your time back. I think the new software developer would be doing way more of those activities. They would become students of software development. Most people don't study software development. They study the craft of how to write software. They don't study the art."
Hightower's take is that AI coding assistants are not to be feared by developers but instead present an opportunity. Developers won't need decades of experience to draw an input box. Getting the assistant to do what the user wants requires learning how to instruct it rather than learning all the ins, outs, and pitfalls of C++.
- K8s celebrates KuberTENes: A decade of working together
- Detecting drift and dealing with the Silicon Valley mindset
- DevTernity conference collapses amid claims women speakers were faked
- Kubernetes goes in for nip and tuck, comes out with 25 'enhancements': We take a look at v1.15
Speaking of his decisions to "completely ignore" generative AI, Hightower tells The Reg: "A lot of people were like, 'Oh my God, how could you miss out on what they consider the biggest wave ever?'
A lot of these things start as waves, and they never make it to shore.
"There are so many waves happening in energy, medicine, education, and politics, and I'm unaware of most of them. And so I guess the question is, where do you focus? Crypto two years ago, three years ago, it was the talk of the town. You had every major brand talking about making NFTs the future of their loyalty programs. Not a word today. And so when I look at this kind of wave today, I look at it and say, that's not the one for me.
"There are so many waves. And I think the real question is, what are we going to finish? A lot of these things start as waves, and they never make it to shore. And we have so many waves we started in the last ten years. We need to finish some of them."
Cloud-native computing
All of which brings us to cloud-native technologies. 2024 is the tenth anniversary of the cloud orchestration platform Kubernetes, of which Hightower became an evangelist.
He cites the example of the technology beneath web browsers: "HTTP is kind of like furniture in many ways. It's a standard thing; the whole world communicates on it. But web browsers are not so standard. They all have different features and experiences, and then you have JavaScript and web frameworks that allow you to express yourself.
"What makes Kubernetes very interesting is if you look at what's inside of Kubernetes, it's very 'furniture': a bunch of VMs and the same loops we were using for 20 years."
It is the enhancements to the Kubernetes API that excite him, says Hightower, particularly the dialect that allows infrastructure to be described with static typing.
"Python developers love dynamic typing. Is it a struct? Is it a string? Is it a map? Is it a dictionary? Good luck – you will get that when you start processing. And there's a lot of flexibility in that.
"But Kubernetes brings a type system that says, 'You have to get way more mature about this.'
"It's almost like a culture shift... You know how much infrastructure we have yet to describe? We've only described 'put this app over there' and 'put on an IP and load-balancer,' but there are millions of fragments of infrastructure that are yet to be described."
In the future, Hightower expects the API vendors to simply describe a Kubernetes implementation in a way that matches the customer's needs, be it in the cloud, on the edge, or on-premises.
"I would say that GKE, Google's Kubernetes engine, is very different than what Civo is shipping in their on-prem appliance," he says. "They're giving people a flavor of Kubernetes that matches their needs on-premises; those are all different implementations of Kubernetes.
"Kind of like Chrome and Microsoft Edge. They both are using Chromium underneath the hood, but they both offer different experiences."
Hightower sees the same thing happening with Kubernetes. Users can pick and choose what they need, and if what they need isn't there yet, then it can be easily created.
"From cultural standpoints, we just say Kubernetes. The Kubernetes ecosystem. And this is why we have so many more of those logos. All because it's so much easier to create a logo right now.
"If you don't like something, you can mix your ingredients, ship it, just pick your logo, and you're back in the game." ®