September 25, 2026

Unbounded: Progress, Economic Growth, and Society (via)

I’m looking forward to reading this series by Tim Pratley. He’s an author and engineer I have a lot of respect for and I’ve grappled with a lot of similar thoughts he raises here. I always appreciate data-driven arguments and an approach to topics like this based on convincing your audience with evidence.

When everyone has a chance to participate in the economy we get more ideas, more productivity, and more opportunity. Extreme wealth concentration blocks innovation and limits broad prosperity.

This only makes sense to me. I think disagreement arises around what we mean by “participate in the economy”. I’d argue that working for wages to survive is not meaningful participation. When people aren’t free to pursue their ambitions or desired careers for whatever reason (sometimes education is too expensive, or maybe they’re stuck at a current employer because they need to retain certain benefits, maybe they can’t afford to move to where the opportunities are, maybe the job market isn’t recognizing their skills, whatever), that limits their potential contributions to society in ways that only limit innovation and degrade overall prosperity.

My nephews and nieces have entered a workforce that offers none of the opportunities I had. Humanity is on a long-term positive trajectory, driven by knowledge creation and sharing, yet we are clearly self-inflicting unnecessary pain in the short term.

This has been on my mind a lot more since a had a kid earlier this year. The world is already unrecognizable to me relative to when I entered the workforce. The way I got into tech and built my career would never work for someone starting out today. I wonder what the world will be like by the time my child reaches working age. I really hope we’ve figured out some of these problems by then and want to be part of the solution.

link#careers#economics#reflections#society#workforce

August 13, 2026

AI is removing the middle class of software engineering (via)

This was a pretty scathing indictment of the tech industry but I think on point. It says a lot of things that you’re not supposed to say out loud right now but that everyone is thinking. Like:

AI makes projects with weak engineering culture fail much faster.

and

In every team, there are competent people who make the project possible. There are also people who essentially make it harder for everyone else.

I don’t actually think anyone benefits from being mean about it, but this is generally true in my experience. Not just in software but in life generally, sadly.

There used to be a time when people sat down and talked about how they'd do something. Now they can just prompt an agent for a few hours and open a PR.

The most tragic aspect of this way of working is that, to the untrained eye, it works.

It does appear to work and I think this is the most dangerous part. Something I really struggle with lately is finding the right balance between excitement and gatekeeping. On one hand it’s really cool to see more people with different ways of seeing things coming up with software solutions to their problems. On the other hand I die a little inside every time I see what’s under the hood, especially when I’m asked why it doesn’t quite work.

This project has become so convoluted, with so many layers and services, that no one on your team could possibly start to understand what's going on.

So, what do you do?

Fixing it would require such a colossal amount of work that it would be impossible to even start justifying it to anyone in management.

It’s always been frustrating to me that “management” (in my experience it's more often product teams than management who control engineering time, but same concept) don't understand the importance of untangling these kinds of architectural messes. "Tech debt" work often gets prioritized alongside regular product development and engineers are constantly forced to justify its "business value", but this makes absolutely no sense and fundamentally misunderstands the cost and consequences of carrying technical debt.

More often than not there is no direct value (in the business sense) in paying down tech debt, but it's a non-negotiable prerequisite for getting literally anything else done. Like real debt, you don't get anything new when you pay it off -- you already consumed the value when you took on the debt. But until you do pay it off you can't buy anything else.

At some point, someone still has to know what is going on. And that's the most valuable person on the team.

It has become very annoying to be this person. I used to just go in and fix things and make software work. Now I have to stage an intervention first.

link#ai#careers#complexity#quality#reflections#software-engineering#tech-industry

August 9, 2026

“Code was never the hard part” is an insult to all programmers (via)

Well this is awkward. Literally yesterday I wrote “the hard part of software engineering was never writing the code.” I concede that that way of describing what’s happening to the software industry is a bit lazy and exaggerated.

Nobody knows how the AI revolution will play out in the end, but it is clear many aspects of work and life will be transformed—including programming.

This definitely feels true to me. My day to day is already completely unrecognizable compared to a year ago and I wouldn’t have known how to even begin describing the nature of my job now if you’d asked me to only a few months ago.

If coding is easy, how come programmers were in high demand, and have demanded large salaries for years (even before ZIRP)?

This is answerable though, in terms of economics. How hard a skill is isn’t what determines its price. It’s true that a very small proportion of the labour force is willing to put up with solving abstract symbolic logic puzzles for 40 hours a week, but the main reason software engineers are so highly paid is more because the marginal cost of scaling software is effectively zero than anything to do with the work itself. Lots of jobs are harder and pay less.

I have met many programmers throughout my career, and very few of them want to talk to stakeholders, much less customers (exceptions are freelancers and founders, especially of software development shops). And, “having clarity on the priorities” boils down to “just tell me what to do and don't switch it up every two days

Relatable.

Whoever you are, don't outsource your understanding, judgement, empathy and taste to AI.

This feels like the most important takeaway for this moment. What drives me more crazy than anything else these days is people trying to pass off AI generated output as their own. It’s lazy and inconsiderate to ask someone to read piles of slop on your behalf, but that’s not even what I hate the most about it. It’s the abdication of our unique human ability to relate to other humans that gets me. I wish people would stop pretending like generated AI output could ever replace human interaction.

link#ai#careers#ethics#human-computer-interaction#programming#reflections#software-engineering