Next Two Years of Software Engineering
Overall it is a slight shift in skills and about knowing how to use the new tools effectively. At the minute for example, reviewing code is as much about making sure it is nice and readable, long term that we can come back and understand it. That the names are good, not too large functions, tests exist. However AI code looks good right out of the bat. But that does not mean good. The heuristic of nice readable code is good code doesn’t work anymore. It might be nice looking but bad code. It might not do the right job or the tests don’t test for the actual thing we want. Does it follow requirements.
We move on from being ones that write code to orchestrating agents. Its not the same work but its not boring work either. There’s still a lot going on. It probably will also involve another layer of abstraction where engineers are up a level, closer to architects, strategists and product managers operate.
What can we do about this then? One option is to focus on improving skills. Before you could specialise narrowly in a specific niche. That is no longer enough on its own. Now you need to be able to tie that in with other things so you can at the very least operate the agents working on adjacent things, rather than just shipping that off to another team
Takeaway
Nothing here is all that groundbreaking. Go through all the big shifts the last decade and you’d find the same stuff. Focus on
Read Full Post...A Falling Tsar
This one from 2003 brought back a different time. It was written at a time when Putin almost had to be introduced as to who he was. It was written on how this whole guy is a temporary blip in the system, trying to reach out and grab power, but how the system is fighting back. It talks about Russian elections being contested, or even mattering. The main guy of the tale, Mikhail Khodorkovsky, was once Russia’s richest man after accumulating an oil empire. The story was written after he’d been arrested for corruption and details how he never really feared jail, probably because he never though it’d pass.
Interesting times I guess.
Now the same guy lives in Europe somewhere and the company he founded was broken up for parts. The other guy needs no introduction nor does politics in Russia need a whole lot of words to explain what is going on.
Dan Wang 2025 Letter
I’ve read a few of these letters now and I’ve been meaning to read the book. It’s all about topics that I’m interested in but are not all that useful to me so I’m never sure how much time I want to put into them. They’re all down to the China-US relations and how that might play out the next few years. Who will win and what is going to happen when all this ends. It is all a bit up in the air now I guess but he does give an interesting perspective from the whole thing given he’s one of the few that write about their experiences living in both of them. I guess he doesn’t know either though but the letter is still interesting to see the both sides of the story.
AI is the main part of the story, as it is for much of the world here too. He’s not overly bullish on the tech but still leaves room for plenty of upside. I mean this in the way that it can do a lot of things but the exponential progress from the current standing point over the next few years he throws plenty of shade on. I guess on this I’m in agreement. I think it has plenty of potential but the likelihood of it completely changing everything in the next few years is very limited. Everywhere I look I see loads of pushback or pessimism on the way it is affecting things already, probably a symptom of how tech
Read Full Post...Simon Willison 2025 Review
I’m amazed continually at the productivity of these people. I can barely keep up with a few blog posts a week from all the places and here’s these people not only seemingly reading them all but actually putting them into use from local LLMs to the releases from the big labs to building things out of them all the whole time. It seems like such a long continuous effort from it all. It all makes me feeling left behind in that there’s so much to try and do but where does one even start. All this makes me exhausted just reading the thing, nevermind trying to actually do anything with it all.
I guess a lot happened this year in AI and this puts into perspective that some of the biggest movements like vibe code and claude code happened this year, as well as things I’m not familiar with like the explosion in image models
I admire the tools repo he’s got and though I can’t figure out if it would be useful for me it does inspire me to do something similar. I’m not sure how or what I’d use it for but something to start and then work on I guess
code tools
The next afternoon, instead of a new iteration of the calculator, Chris unveiled his new approach, which he called “the Steve Jobs Roll Your Own Calculator Construction Set”. Every decision regarding graphical attributes of the calculator were parameterized by pull-down menus. You could select line thicknesses, button sizes, background patterns, etc.
Steve took a look at the new program, and immediately started fiddling with the parameters. After trying out alternatives for ten minutes or so, he settled on something that he liked. When I implemented the calculator UI (Donn Denman did the math semantics) for real a few months later, I used Steve’s design, and it remained the standard calculator on the Macintosh for many years, all the way up through OS 9.
This story is one of those that has just stuck with me even after all these years after reading the Steve Jobs book by Walter Isaacson. The link has the full story which isn’t that long and worth the read.
I think potentially it takes on a new significance in the age of AI where instead of asking the AI to make a change and waiting for it to create the code and regenerate whatever, you instead ask for a tool to get quick feedback on new iterations. It works for UI but also probably other things too, anything that needs fast feedback.
television
I’ve been noticing this phenomenon for a while now and this piece puts it into words. It also illustrates that this is not a new thing but a thing that has been going on for 50 odd years now. Everything is becoming this endless feed of moving pictures, just long enough to capture attention, just short enough to not make it boring.
In mathematics, the word “attractor” describes a state toward which a dynamic system tends to evolve. To take a classic example: Drop a marble into a bowl, and it will trace several loops around the bowl’s curves before settling to rest at the bottom. In the same way, water draining in a sink will ultimately form a spiral pattern around the drain. Complex systems often settle into recurring forms, if you give them enough time. Television seems to be the attractor of all media.
Eventually everything becomes a single end state. Whether it be crabs or short video feeds, eventually all becomes the same. I guess it is the most addictive thing out there
Ben Thompson of Stratechery wrote mostly the same piece about Sora and the next evolution of this in AI Bicycles and Meta though he strikes more of an upbeat note where maybe this leads to more people creating and getting their ideas out there. The underlying rule of seemingly every content/consumption though is that:
one of the oldest axioms in technology: the 90/9/1 rule. 90% of users consume 9% of users edit/distribute 1% of users create
I really doubt this is going to change
Read Full Post...Why weren't they grateful?
In that instant, Caro says, everything became clear. “When I heard that line, I said, ‘Oh, that’s what this book is about,’” he recalls. And he didn’t just know how the book would end—with a description of that day’s event, ending with those four words. He could see—“in a flash,” he says—how everything he had learned and everything he was still to write would lead to that point. “I knew in that moment how to do the book. And I remember going back to my office and writing an outline as fast as I could. I was abbreviating words because I wanted to get all the words in there.” With each subsequent book, Caro has needed to know where he would end before he could launch into writing it. https://www.smithsonianmag.com/history/rifling-through-archives-legendary-historian-robert-caro-180985956/
The line was “Why weren’t they grateful?”. A line uttered by Robert Moses’ men alluding to the public’s ingratitude towards him.
Both quotes speak volumes about both men. The attitude by Moses’ men and himself show how the power had truly taken him to a place where he could not comprehend the actual feelings of the public
As for the quotes from Caro, they show his working process. How he wanted to have the end in mind so the entire book could work its way towards the final destination. The article is overall a good read showing his process and what it really takes to be a great writer
NFTables
This means that when a packet comes in, the time it takes the kernel to check it against all of the Service rules is O(n) in the number of Services. As the number of Services increases, both the average and the worst-case latency for the first packet of a new connection increases (with the difference between best-case, average, and worst-case being mostly determined by whether a given Service IP address appears earlier or later in the KUBE-SERVICES chain).
https://kubernetes.io/blog/2025/02/28/nftables-kube-proxy
NFTables are an alternative to iptables in kubernetes that should be better for high load clusters. There’s obvious difficulties with replacing such a critical piece of functionality for kubernetes so it definitely needs a lot more testing in the real world before it is put into production systems. But the benefits are there and are clear. It is far faster, especially at high scale. For packet routing iptables is O(n) whereas NFTables should be closer to constant time. As for inserting and making changes, iptables often has to make changes to everything, whereas NFTables can make much more incremental updates such as only to what has changed
Read Full Post...With both iptables and nftables, the total size of the ruleset as a whole (actual rules, plus associated data) is O(n) in the combined number of Services and their endpoints. Originally, the iptables backend would rewrite every rule on every update, and with tens of thousands of Services, this could grow to be hundreds of thousands of iptables rules. Starting in Kubernetes 1.26, we began