why and how a.i. became the programmer's worst best friend
AI is making programmers more productive, while helping them learn more than ever. Too bad their bosses decided they're now obsolete...
Writers in legacy media love stories about people being hoisted by their own petards because dog bites man is a headline no one will bother to check out, but a man saved by dog bites said dog? Oh ho ho! Now we got drama. Now we got flare. Now we have an irresistible headline readers will have to click because their curiosity is going to get the better of them every time. In this vein, story after story about the looming collapse of human programmers keeps coming out. These prosperous middle class workers of today, undone by the fruits of their very own labors. Oh, the irony.
We can point to the fact that most automated coders fall flat on their face, that so far, most AI projects tend to fail, and adoption of the technology is much slower than Sam Altman & Co. expected because — who would’ve thunk it? — companies aren’t fans of feeding their proprietary data into a giant black box famous for gobbling all the data in the world to spit out hopefully accurate approximations of it.
Or, they just don’t really need it because Wesley’s Widgets, provider of quality gears since 1933 probably isn’t going to benefit much from investing millions into putting AI into everything. If they do, it will be like Long Island Iced Tea, Inc. changing its name to Long Blockchain Corporation during the first big crypto craze, and pretending as if it’s going to pivot to Bitcoin mining only to never follow through. Oh, and be delisted from the NASDAQ stock exchange over the stunt.
None of that matters. Thanks to the runaway hype train, you will be told that in just six to twelve to eighteen months, everything will be solved, AGI will be summoned, and a chatbot will be conquering the galaxy for humanity. Which brings us back to the lowly programmers and their sad fate in the world of glorious machines that no longer need them, or rather, the world of tech executives who don’t want to pay them anymore to make stuff and ask questions.
Yes, that’s right, the ultimate dream of AI is for a certain type of CEO or tech founder to enter a description of their dream app into a text box and five minutes later, there it is, ready to send to Apple and Google for approval. No need to pay all those four eyed dorks who talk in jargon they don’t really understand or care to. The AI will handle it all as they collect subscription revenues and make colorful presentations for VCs.
to b2b or b2c, to code, perchance to vibe
Imagine drop-shipping but with code, and you have the general idea. This is why tech executives are salivating at the notion of automating away their engineers, keep laying off as many as possible, and make more and more grandiose pronouncements about how much code is being written by AI. The subtext is clear. Shut up about the benefits and stock options. You’re lucky to still have a job, so remember your station.
Unfortunately for those executives, those dreams keep meeting reality. And in reality, all these over-hyped coding agents can do is help with grunt work. If you know what you’re trying to build and have a good design in place, they save you time you would spend on physically typing code, or implement a basic algorithm for you. They can’t do much more since they’d either need way more input parameters, or a fundamental redesign, and expanding the number of inputs means you get a weaker, less reliable network of associations and a much higher error rate.
Likewise, just “vibe coding” has been a disaster outside of personal projects and very simple prototypes. Scaling, caching, security, error hardening, logging, all of those are difficult problems in the best of times, under the best possible circumstances, and will vary from project to project in implementation. Hence the need for there to be context not just for your code, but also of business practices, customer wants, and the actual, real needs of all three.
“Okay, but in a year, all these agents will figure this out and that’s when you’re cooked nerds! Look at how quickly they’ve been advancing so it’s inevitable that...”
For the sake of Cthulhu’s unwashed jock strap, stop with that. People who study how to create good code their entire careers as we’re constantly inventing new tools, new languages, and new concepts to meet new needs don’t always agree and need to not only have the contextual knowledge and expertise of the project and the domain, but other projects in other domains to understand what designs work, when, and why.
Writing code can be regurgitated. Creating production-ready, fully functional software requires problem solving and LLMs suck at problem solving no matter how much their devoted fans refuse to admit it. That’s what tech executives are hoping can simply be automated away, and furious that it can’t because that’s for what they have to pay the — well, not big anymore considering inflation — but definitely not insignificant bucks.
Cheering for machines to take over even that is like being a roach rooting for RAID, or a peon fighting for feudalism, or a fish for deep sea trawlers. If everything is relegated to computers, sure, the nerds you don’t like are out of work, but what’s next for you? I should warn that people out of work can only subscribe to so many bullshit “AI-driven business innovation and synergy masterclass” scams, especially as the competition in the AI guru space gets tougher every year and with every new model release.
And yet, that’s the goal that all AI hype fans are cheering and salivating over: getting rid of human expertise, passion, and originality so that the already wealthy can profit off selling buggy, unreliable, vibe coded crap to the masses.
the little a.i. engine that sort of, kinda could
Even worse, because AI agents can take on the simplest part of programming, they’re rapidly displacing entry level jobs and abstracting away important components, which will sabotage software as we know it over the long term if it’s allowed to take hold. If a trendy AI model decides what algorithm to use and gets it wrong, and there’s no one left on hand to figure out why the service has suddenly slowed to crawl or falls into an apocalyptic crash loop, enraging customers, all you can do is keep begging the AIs to try again and hope that you’ll hit the jackpot and fix it. For now.
This is the trade-off. Employ humans who use AI agents for hands-on-keyboard work while they try to solve real problems, pay them properly for their expertise to get more reliable designs and actual troubleshooting, or just have the AIs keep trying until your prototype works, dealing with problems and their fallout as they come, gambling that all those much hyped advances are shipped and actually work as promised before the next major bug or issue raises its ugly head.
Of course, there is a practical solution to all this. AI tools are good enough to make a very basic prototype that can serve as a proof of concept for a much bigger platform or product. They can be rolled out and tested quickly, allowing your engineers to work on scaling, securing, and fine-tuning the final version while users test-drive your POC and give their feedback. Bad projects will fail fast. Good projects will gain traction and raise capital to have capable engineers make them good products.
This would be an actual win-win. Founders and investors hate throwing money away on a project that’s going nowhere fast and has no user base. Engineers hate working on doomed products because they know their jobs will be on the chopping block if an investor pulls out or a fundraising round fails, and the company’s anxieties are vented into their faces every day. And with AI fever dreams having convinced so many hiring managers not to recruit engineering talent, they’re worried about not finding another job after that and having to enter the rigged founder game just to survive.
Over the long term, this is exactly what’s going to need to happen. LLMs, by virtue of what they are, can only regurgitate code they’ve seen in various permutations, not to mention that code itself is the easiest part of programming and software design. Each project is unique and requires experienced humans to guide while also training a new generation to take over for them. We, the computer science pros, are a necessary evil on a tech company’s P&L statement. Emphasis on necessary.
the cold, gleeful, inhuman present
Today’s AI coding agent hype beasts will calm down in a few years when the hurricane force gusts of hot air finally fizzle out in the face of mathematical reality and execs will allow us to simply incorporate coding agents as part of our workflow, or build our own models on our preferred training sets, so we can get back to work and hopefully solve real problems for real people while building fewer and fewer useless apps.
Ultimately, I know my profession will be fine. What I do today is almost nothing like my first coding jobs. Even the same languages I’ve used from the first day are profoundly different, having undergone major revisions and updates once a year or two. Of all the professions that could adapt to radical adjustments, it’s this one. After all, we actively direct and facilitate change, with very few, very specialized exceptions.
But what really, really irks me about this discourse isn’t people talking about the huge changes to millions of careers. Again, this is part of the job, so much so that doing the same thing for more than three years is seen as a major negative in our work. If we’re not working with new tools, frameworks, or major updates on a regular basis, we used to fire up the ol’ resume and look for a new challenge. So, no, it’s not that.
It’s the open, gleeful celebration of the idea that these careers will be obsolete and all these millions of coders, designers, and engineers will be out of work. The admiration for multi-millionaires and billionaires panting like starving stray dogs at a juicy steak at the idea of firing armies of computer experts so they could pocket millions and billions more. The open, naked disregard for even perfunctory politeness, or even the fleeting thought for your fellow human.
More than anything, this entire protracted public conversation shows how so many of us became such open, cruel bastards to each other, basking in the thoughts of either capitalizing on someone’s misfortune or just seeing people we don’t like suffer. Every working day now, people like me have to get up and know for a fact that many of our bosses openly hate us, wish us nothing but ill, and cannot wait to get rid of us, but we still have to put on a smile and keep solving wildly complex problems since at the end of the day, bills have to be paid. Until we’re kicked to the curb on a whim, that is.