Excuse my language, but I feel it's necessary to explain the levels of my confusion right now. Like it or loathe it, generative AI has changed the coding game. I've not played with a lot of tools, and have really only used Claude Code in anger for a couple of months, here's a brief overview to set the stage:
So when I talk about AI in this post, I'm mostly referring to my experiences with Claude Code, but from what I've seen there's not a lot to choose between the major players in terms of capability, more just how they operate.
Most of my confusion around AI and where software development is headed stems from the fact that it's capabilities are so mixed, and the ecosystem around it so messed up. Ed Zitron is the man to follow if you want a chance in hell of understanding some of the financials, and they're frankly bonkers. AI tools are cheap right now, but the companies providing them are burning cash and energy at an unfathomable rate. I think we're in a window of opportunity where these tools are capable and cheap, I don't believe that window will be open for long, and for some businesses now is the time to make hay. Something has to give.
It's all too easy to be fully doom and gloom about it, so for now I want to ignore the financial side, I'm considering only what the tools do now for the money they cost now as an end user. Are they bad for the planet? Yes. Are prices going to have to rise? Yes. Might it crash the whole tech industry? Good odds. But as I said, let's ignore that. I just want to get my thoughts out as a long-time coder. So, what are the contrasts of which I've hinted? Here's a short list:
So where does that leave us? In summary, Claude Code is the fastest and most knowledgeable junior developer I've ever worked with (and I've had the pleasure of working with some great junior developers). No I can't use a lot of it's output verbatim, but the correction and feedback loop is so fast a human just can't compete.
I don't have no idea, which is why I wrote this, not that I expect it to help. What does this all mean? Where the fuck are we going with this? I really don't know. I believe those poised to get the most out of these tools right now are those with a decent whack of experience under their belt, because the output needs careful review, and the AI needs guiding. Some of the output is terrible, some just needs tweaks, and some needs an experienced eye to spot an issue. I feel deeply for those just graduating or entering our field, they likely don't have the experience to judge the output themselves and therefore can't use the tools in the same way, but they can use these tools to help learn. From a learning perspective, it's a world apart from learning from books, guesswork, and QBASIC online (as in built-in, not on the net) help I started with. I still recall installing the CD based MSDN library and it feeling like a revolution, all that information so easily searchable! That kind of learning defined a lot of my formative programming years, but learning today can be as simple as a series of very specific and pointed questions that get almost immediate answers.
The tough/brutal/shit part is this: if LLMs are as good as juniors, but faster and far cheaper, then suddenly it makes hiring juniors a very tough proposition for a company. Of course it's the right thing to do, but sometimes the dollar wins, and that doesn't mean turning a profit, it might just mean not going out of business. Depending on whether it all goes to shit or not, hiring any developers might be a laughable proposition in a few years time; maybe we're all done for. In the space of a few months I've accepted that my job has changed, but it's not necessarily a bad thing. I wasn't enjoying fixing crappy bugs in Jira tickets, and now I don't have to do that so much. Sure I have to review the output and check each one, but I can outsource the tedious work of it.
There's an argument that developers love to code and that's why we do it for a career: it's true for many and was for me, but I'm more than happy to keep the act of programming for my hobbies where I can tinker with retro computers and random projects without having to worry about crappy CSS issues on a specific device, or wondering why iOS 26 is now showing a black bar where a keyboard should be. I'm tired of those problems and that kind of work, and now Claude can do it for me. That's not even hyperbole, on a few occasions I've pointed it at a Jira ticket and it's read it, looked at the code, suggested a fix inside of a minute, and it's gotten it correct with no changes required.
Yes, some (many even) tickets I can do faster myself, and some I chose to, but the real speed up is not in having it replace me, it's having it do one thing while I do another. Or having it do two or three things while I do another. I've done this. I've had it working on a R&D prototype, fixing a bug, and documenting a process for a team member; all while I've been investigating another bug in a specific customer environment. There are genuine use cases where this can boost my output, so that's great right?
And yet. And fucking yet. Sure, it is great from a let's-save-money-and-not-hire-juniors point of view, but if we don't hire juniors, how will they get experienced? Will we even need experienced developers? It might be in a few years nobody builds software; you'll just ask your phone to do something and it'll build an app for it on the fly if it doesn't exist. Or, the costs of LLM based tools will go through the roof, the industry will crash and burn and we'll be back to square one. Most likely neither of these things because this train is headed for parts unknown: we're off the map and here be dragons or world-carrying space turtles or paranoid androids.
So yes, it's great that it can improve my output, but it's not the be all and end all. Some simply dismiss any and all AI technologies out of hand, or think it "It's AI so it must be crap output"; often it is, often it isn't. From a business perspective right now, in the right context it can make a lot of sense. In other contexts it feels like the Segway, neat, but you could likely run faster, stay fit and stop your muscles wasting away. More than a few studies have shown already that outsourcing all your thinking to these things does not generate good results, either in your work or your capacity to solve problems. I use it to do work, but so that I can use my problem solving elsewhere simultaneously.
I don't have a takeaway here, other than to say I don't think anybody knows what's actually going on and where the software industry is headed. Though I'd be surprised if there's a single person out there who's not sick to the back teeth having AI agents and features being jammed into every single piece of software they use. Thank fuck for open source.