Posted by goostavos 2 days ago
I worked hard a couple of years ago to reverse engineer a game to produce a very specific tool. Recently, the game was updated, so I worked on my free time to do a free contribution to the community, and then, a few hours later a tool that does the same thing appeared entirely vibecoded.
Even if some parts of the community care about how a tool was made – Most don't, they just want something that fulfill the goal.
Now even my hobby programming was overtaken by AI, something I did for love and expected no pay out of it whatsoever, which is... depressing, to say the least.
If you were running a marathon and, halfway through, everybody just hopped in a cab and drove to the finish line, you'd be disappointed.
While doing the whole project, I learned a lot about reverse engineering itself, the tooling, understanding static vs dynamic analysis, etc. Which was the most fun part of the project itself.
The rate at what people are delivering projects removes that opportunity heavily, even in hobby communities, which is part of the point!
I've always enjoyed the process rather than the end-product, which is why this personally affects me more than other folks I guess. Some people are motivated on producing more, I was more motivated by the learning process behind it, and those two things aren't compatible, so speed is winning the race, sadly, even if you're not profit motivated. I admit I'm a bit more of a doomer, I still use AI tools at work, but I guess it was time to search for hobbies that are not related to programming anymore.
I think just about everyone in the industry appreciated hand-typed programming as a job, because it was a pleasant enough craft to practice and for a solid couple of decades programmers were treated extremely well in comparison to the vast majority of other careers out there.
Today, juggling a bunch of agents to do what you want them to do, figuring out how to verify their work, remediating problems, and spreading yourself thin cognitively—all the while looking over your shoulder at an increasingly precarious job market—is notably less pleasant for a lot of people. It sounds and feels a lot more like an engineering or product management role—something a lot of programmers would never in a million years have signed up to do voluntarily.
I'm probably an 8 out of 10 on the cooked scale—I'm juggling a suite of ten iOS apps and haven't written or read a line of code in over a year—but I get where these people are coming from. I think the suggestion that they can reclaim what they've lost in this new job they've been loudly expressing distaste for by adopting a new unpaid hobby will ring hollow to them.
This makes no sense. Everybody I know, including me, who hates the big picture of what AI has done loves programming immensely and does it as a hobby as well as a job. The people at my job who are most positive about AI are those who didn't particularly enjoy programming. You're applying Occam's Razor backwards.
The last 20 years of experience have told me that that's the #1 variable that correlates with the death of a project, so I'm in no hurry to speed that along. People have been trying to find some way to skip that difficult step of actually understanding what's happened since programming was invented, and its always a bad idea - because that process of internalising a projects structure is the single most valuable thing for a project. Creating a project structure that can be internalised by human beings - and then doing that - is software engineering
But i get where you sre coming from
However there are other folks in my company who, with very little programming knowledge, have produced viable, workable solutions for our company to use. All projects that were in my list of TODOs that I hadn’t gotten around to.
It was in that moment that I realized I’m very quickly going to be surpassed if I don’t adapt and move quicker with AI solutions. Since then my output has increased a bunch.
I’m not the most stoked on it, but as with all companies, results are far more important than the journey. So long as it works and is at least mostly maintainable, leadership does not really care how we got there.
But all of this was forcing my hand because people without the foundational skill set were creating equivalent output to my artisan, bespoke solutions. Writing is on the wall.
It's not necessarily a given that the person you're replying to agrees on the latter, and therefore they might not be stoked on you starting off by agreeing with them but going on to make an argument that supports the companies responsible for the very thing they're complaining about.
I think there's a contradiction in you stating that management thinks LLM-generated output is "maintainable". They went to business school, they don't know what that means. It's your job to explain to them the consequences of shipping code faster than the people whose job it is to understand it can do so.
True, but dealing with agents is still easier than dealing with people (at least for introverted personalities). That being said, you still need to deal with other people's army of agents.
Now all I have to do is make sure they're not peddling an actively bad idea and if not I can just tell the bot to incorporate their dubious ideas.
In the past it was all, I'm not familiar with this construct that solves our problem perfectly, why don't we cludge adapter pattern in here again.
I'd love to genuinely love these blog posts but they are all the same! They're all like "now that machine are better than us $xyzargument". I'm so pissed off when I read so blantant lies like AI "writing code better than me" maybe better than you! But in general it's just a big lie.
> the economics of purely hand-written code have changed
who are you to know? I still hand code and produce a lot of value because I do care and polish everything I do. There are some pieces of the software that I wrote that I never touched again, they work perfectly, no errors no customer complaints
I would recommend "The Leprechauns of Software Engineering" by Laurent Bossavit for an insightful and entertaining overview of just how much of software "engineering" is based on "truths" that we don't question.
There are a lot of mediocre programmers aren't there, I wouldn't be surprised if on average Claude is doing better than what exists. It's not a "lie", anyways, just a point of view.
I'm ok with vibecoding scripts, I love programming the machine and making the end user happy and not dealing with bash! I don't judge scripts quality as long as they are tools in the workflow, I dont care about that, unless they will somehow be part of the production. The name Script implies that, there isn't any architecture and Claude Opus sucks at architecture
For me, it writes code that mostly works, which is great. It insists on adding some of the least readable comments I've seen. It also likes to pad out the code to about double or triple what I would write.
It doesn't seem to have that little voice that says "hey, this approach sucks" so it needs the harness or the prompter to tell it to go back and refactor. Even Fable and Opus struggle with this.
I don't begrudge the business for making the prudent choice of making me use AI, I just sort of lament that what I spent years enjoying and getting good at was so utterly derivative that it was perfect for the LLMs. It would be insulting if it weren't just a fact.
On the other hand, if you mean tight, performant, simple, well-factored code, then yeah. LLMs simply aren't there, and may never be. On the other hand, maybe that matters less than we thought it did. Time will tell.
To me it's just crazy of how dumb it is to test an idea with a vibecoded shitty app. I'm not saying it should be perfect from day zero, let's pretend we are talking about cakes, how crazy it would sound you will tell people to try and judge your new idea of a cake you don't even know how it taste or what's inside?
It's disappointing that the prevailing sentiment now is that architecture is less important than we thought. Software is always going to be getting more important, and all of it should be well thought out. If these people had these tools in 2004 they might've made thousands of fragmented buggy social media startups and actually slowed progress on that front.
I completely agree. The fact that the software from places that are very vocally pro-AI (microsoft, salesforce, etc...) is still so full of bugs is really contrary evidence.
Those weren't lies. The AI does produce better code than those people. They simply weren't very good programmers to begin with.
I think this goes a long way to explain why there is such a huge difference in opinion about the quality of AI-written code: Some people say LLMs write code far better than they could, and others say the code is always terrible and requires a great deal of fixing before it's acceptable. How can two different developers say those very different things about the same product?
It might be a tough pill to swallow, but if you think your LLM is producing better code than you could produce... well, I might have some bad news for you about your own skills.
But in the new environment of LLM-assisted coding, the LLM produces acceptable code so much faster than I can write it. Just taking time to understand and retool the LLM's output means an order of magnitude lower productivity and it doesn't feel like that's acceptable in this era.
Folks I know are landing 10+ PRs a day and nobody is reviewing anymore, and these are not companies that would have been skipping code review 2 years ago. The whole culture is turning against taking the time to comprehend and reason about our own work.
There is a wide range of code that will do the same job. 15s vs 2h for code 60% as good? 10 minutes for code 80% as good? 10 minutes today and 10 minutes tomorrow to fix something that is 30% as good?
A lot of people are going to draw that line in a different place and now that people can make that trade off you will quickly find they will and it probably wont fall where you would like it to.
At the end of the day a business pays you to produce value that will earn them money / customers. They don't pay you to write good code. Sometimes those two align and both sides are happy but they don't and often wont.
"The AI labs are scared of their own models, surely they must be credible sources on how powerful those models are"
"They are asking the government for regulation, they must be even more responsible than the average company"
"They are claiming to be a software engineer who automated their job with AI, surely I have to buy their course"
There are many boilerplate pieces of software that an LLM can generate faster than a human, but nearly half a decade into the LLM era there is no evidence that it's leading to the apocalyptic end of software organizations. And that's all with the subsidy in place that is now disappearing. Everyone online is lying for money, and that money is coming out of the same investor-subsidized marketing budgets.
I've resolved to just building stuff for my own businesses and myself for fun. If an opportunity or enlightened soul comes along that wants to benefit from my knowledge, great. But I think it's best to just let people feel the full brunt of what's coming. Sometimes the only way to learn the lesson is to stick the fork in the socket.
The part of programming that sucks the most is untangling ambiguity. In my current app I had an ultra simple proxy convention, but it sucks. I have since settled on a different single convention to cover 6 different scenarios of traffic redirection, but it was a challenge to distill simplicity from chaos of the wilds and write all the various tests. It’s moving forward faster now but it was like starting over to get this rolling.
What I find is fun is building things that solve real problems I have. Then my problem is solved, I am paying nothing for it, and I can extend it however I want for any reason without downstream restrictions.
There is so much AI still cannot do in software. If you ask AI to build a faster WebSocket solution, for example, you will get more of what’s already there. I have a WebSocket library I wrote myself 4 or 5 years ago. I thought it was fast, turns out it wasn’t. I wrote my own perf tool for it and had a defect in the perf tool that spit out wrong results, but that defect showed me where the performance bottleneck was. Now my library is 40x-100x faster than other WebSocket libraries. I did use Claude to analyze my earlier perf bug, and it made the same mistakes I was making. If you want to go faster than popular battle tested solutions you have to be original and AI just isn’t quite there.
I think it could be argued this is exactly what programming _is_.
And the skills they provide are transferable. Patience, attention to detail, staying on task.
There's also a tension in your comment. Are we prioritizing "advancing society" or programmer feelings? If it's the former, then it doesn't matter if AI is better than humans, whatever moves us forward faster is better. If it's the latter, then we're talking about holding back progress for the sake of a programmer's feelings.
For the record, I'm a lifelong programmer who loves AI because now I can experiment with new ideas at a scale I could not before. I feel zero loss. In fact using AI brings back the magic of technology that we lost in the 90s with the "business-ifying" of tech.
The second thing revolves around this:
> In fact using AI brings back the magic of technology that we lost in the 90s with the "business-ifying" of tech.
This is the complete opposite of my experience. AI seems like the logical conclusion of the business-ifying of tech. Get rid of all those pesky nerds, and the MBAs can just create whatever grift pops into their head.
I was just pointing out the logical tension in the comment I was replying to.
> This is the complete opposite of my experience. AI seems like the logical conclusion of the business-ifying of tech. Get rid of all those pesky nerds, and the MBAs can just create whatever grift pops into their head.
I have dozens of extremely nerdy projects going thanks to AI. I wouldn't have had time for any of them because I was too busy making money to spend 100+ extra hours programming my wildest tech fantasies, but now that's possible!
AI also makes it possible to do hardware programming, reverse engineering (when Anthropic isn't censoring itself) and all manner of other geeky pursuits.
I'm genuinely happy that you're having fun with it. I can't get over the feeling that _I'm not building anything._ To me, it seems like hopping on an IRC channel and copy-pasting code from a greybeard instead of writing it myself. I just don't find that satisfying at all.
programming will likely be the same. fewer people who care to be craftsmen, more hobbyist, a few artisans who really dig deep and make new patterns (we still dont see AI sampling out of distribution).
>reduction of the job to a hobby takes that away from them.
this is your personal feeling. they never had anything in the first place, just that the market was valuing a certain skill for what it could output. the perspective you are posting is purely a construct.
I didn't mean to say sewing and knitting weren't impactful - on the contrary, they are analogous to programming: they were impactful but now they're basically hobbies. Maybe there are more developments left in the clothing making process - not sure.
Programming is the art of automation, and is being taken to new levels. It'd be quite damming to the field if a substantial % of the world's output over many decade hadn't brought us here, tbh.
Were builders crying when the Hagia Sophia was built? Projects come and go, nothing is forever.
One step closer to the matrix. Send the white rabbit over, I've got your floppies ready to go. No ai, and developed without an active internet connection, so you can listen to music safe in the knowledge that your music isn't listening to you.
Work is a significant amount of my waking life. I chose this career because it is something I enjoy. But AI is removing a lot of the enjoyment for me. And saying "if you don't like it, just switch careers" is not helpful, and ignores the difficulty and cost of doing so.
Building software is hard for humans, managing the complexity of large projects has been at the frontier of our intellectual capabilities for a while, leading to well known issues in cyber security and exploding costs. At some point machines are simply better suited to the task.