Agreeing with the means/end framing, and the bit that's missing is that most of us are both depending on the day. I'll happily let it generate the CSV parser and still want to hand-write the tricky state machine.
1. Compare the code against production data with MCP.
We use a read only platform called Metabase which reads one of the MySQL replicas. I tell the agent to fetch production data and make a static pass (it doesn't run the code) in which it compares shapes and inputs, and oh boy it has caught a few misnomers.
2. To debug production data and create graphs. It connects to datadog (where we store the logs), checks the history of the commits, and many times suggest fixes. These are for low-medium impact like validations that didn't need to go through, or a step check that it was missing
3. Creating tickets on the board (we use linear). Now PRs are more detailed and can be understood.
And for coding? I've been spending the last 4 weeks scrutinizing EVERY output and decision from frontier models, and pushed back in many decisions.
Appreciate the read, even if the workflow's not for me personally. I've found that I'm just not that interested in writing the code by hand now that the option to not do so is available - but I totally understand people who still want to!
After programming for 40 years, my brain has many language parsers. But languages and interfaces and classes evolve and it been a huge productivity boost the use LLMs for coding.
I use AI like StackOverflow on steroids. And like using stackoverflow, I do it in a browser and I don't let the LLM touch my code.
So what are people like me, who fall into "some values of no one" supposed to do?
I guess just blow my brains out? Just.. Thanks for trying man, but you picked the wrong thing to specialize in, now you're completely redundant and worthless to society. Here's your cyanide pill?
God damn I'm so bitter about all of this. I was doing so well for a bit now I feel like I've completely wasted my life.
This is why societies should make it as easy as possible for people to retrain / re-educate themselves. I highly doubt most white collar workers graduating today will be able to do what they trained for until retirement age. Programmers may be among first to see serious reduction in employment, but other office workers will follow.
Even with web projects, the issues of LLM coding tendencies and its lack of product 'taste' or whatever you want to call it are apparent. Janky UX, poor information transmission, bloated modules... it's just easier to sell web-based AI output because it's visual and interactive, and we are easily impressed by bright colours smooth animations.
I won't argue that the web is more 'capturable' by LLMs, though. It was maybe slightly out of reach by a large cohort of developers who wouldn't have considered themselves "UI people" (or who scoffed at it for various reasons), but now is well within vibe-territory.
Indeed, the OP's point seems very focused on programmers enjoying programming. And that's a perfectly laudable goal, but obviously this then means that the goal is programmer enjoyment, satisfaction, etc. If the goal is code that allows the user to benefit while also being correct and secure, then that drastically changes the economics and hence potential solutions of what parts of the work should be done by a LLM agent and what parts of the work should be done by a human agent. Economics is the study of the allocation of scarce resources to satisfy human wants; so what you want from code determines a great deal of how to get there with the greatest benefit and the least cost.
it can not not? moreover, it can totally ruin existing invariants, introduce dead code, falsify tests and sabotage further work by poisoning comments and documentation in a few hours.
This comment highly resonates with me. I strongly believe coding by hand (defined as an act of writing computer code in some programming language) is moreless obsolete. I.e. my skill to implement dijkstra or quicksort in 10 minutes at 1am in 10 different languages while being hangover/drunk is absolutely worthless now.
Software Engineering itself is more than just coding, the creative (and well engineering) part is still there.
> Writing code is like trying to build a house without powertools. Could you do it? Sure. But no one ever will, for most values of no one.
If LLMs could be relied upon to produce a good result every time, then they would be like power tools. But they can't, so they aren't. Nobody would use a cordless drill that has a 10% chance of the drill bit suddenly moving several inches to the left of where you were aiming.
I've lately been using LLMs to do a lot of testing and verification.
An LLM can go and pull files off NFS, and write and run verification scripts in less time than I can even think of a testing strategy or locate the files.
Sometimes they'll do it unprompted
For writing unit tests, which are often repetative and verbose, they are another godsend.
Overall they're freeing up a lot more time for nice things like thoughtful API design, refactoring, system architecture and design work etc.
I find it quite entertaining that programmers seem to find themselves in the same position as every other person that has hobbies that were once serious jobs but got automated away, and can't seem to connect the dots. How to keep enjoying programming? The same way people still make their own clothes, their own furniture, their own shoes, their own bread, and so on. They do it for themselves, for their own satisfaction and for the transformative potential doing things on your own have.
These narratives are designed for people who want to see programmers taken down a peg. The truth is that LLM generated code is not sustainable and the people hawking it are operating recklessly.
Some bakers started baking as a hobby, got really good at it, and then better tools and profit margins came about. Now they were forced to make low quality bread at work for 8 hours straight every day and seeing 90% of their colleagues that they considered pretty good bakers actually be fine with it.
How exciting do you think those bakers are to bake more bread at home after they go though slopping bread at work? How enthusiastic are they still about their hobby after a few years or a decade?
I don't see how LLMs change the picture then. The hobbyist who fell in love with programming didn't dream of Spring Boot configs, enterprise middleware or the Nth CRUD app either. There was already a huge gap between programming as a craft and programming as a job, and most people never had the privilege of working on anything particularly exciting or fun[1]. If your job is slop bread for 8 hours, and for most of us it already was, then the joy has to come from somewhere other than the job. That's the adjustment every one of those trades had to make.
[1] On another note, a lot of my friends who are professional musicians barely play or make music in their free time, apart from keeping their skills up.
You can also program by hand professionally. There's a reason why the handmade, luxery items are more valuable and desirable than the heavily manufactured counterpart.
1. Because they're genuinely better quality. Usually.
2. There's a human connection (way more important than people think. I.e commodity fetishism)
3. Less people can do it.
-- all of these properties will apply to software in the near future. The person that can hand code the thing an llm does poorly, or because an llm cant be trusted will be extremely valuable, especially as this category of people begins to shrink, as peoppe atrophy their skills with llms.
The rest of y'all are excited about handing over the value of your labor to some billionaires thinking machine because that same billionaire has convinced you that you're going to be able to create your own startup or something stupid.
Nah, you're going to become a (underpaid/poor) conveyor belt operator making mass manufactured slop. Some smart ones will become the swiss watchmakers of software. Rare and in demand.
Valued by whom? The market? Most people who craft as a hobby never sell a thing. They do it for the love of it. If something's only worth doing when someone pays a premium for it, boy, you're in for a hard time.
No. The people. You know, the Shown HN: I wrote a cool thing. Here's the thing on GitHub.
It's not about selling, it's about sharing and people appreciating it, using it, sharing tips to improve it. Most people who write FLOSS in their free time do it to solve their own problem first, but they also do it to share with others a cool thing they did etc.
> Most people who craft as a hobby never sell a thing
Sure. But they do craft for SOMEONE. Initially for themselves but at some point they want to show their skills to someone, even if only to family and friends. People are social animals.
I don't know that hand crafted software has the same appreciation as say woodworking.
> I don't know that hand crafted software has the same appreciation as say woodworking.
Yet. But I doubt you'll find that appreciation here on Hacker News, or on GitHub. You'll probably have to find a community of like-minded people who enjoy tinkering with software by hand, and those already exist, e.g. parts of the IndieWeb, or Lobsters. Posting your hand-crafted software here is a bit like a knitting enthusiast showing off their sweater at a textile industry trade fair.
I don't mind using an LLM while programming. At least the way I use it, I still feel like my experience, knowledge and taste is being utilized to make it better than if I were to vibe it.
What has made me enjoy it less, is having to deal with colleagues' use of it. Sorry to say, but I don't enjoy talking to meat proxies, or getting huge PRs that solve the wrong problem. It's like half the people have turned off their brain. We produce faster, but we don't produce the right stuff.
Yeah same here. I feel like I’ve been promoted and not get to manage my own very efficient team that needs a lot of micromanaging. I’ve seen what other people have made without any experience, but I personally feel like I can get my vision done much, much faster, and like I’m not so encumbered by how long it might take to implement some small feature.
In fairness though I never really enjoyed programming for the sake of it, I was always about what you’re getting at the end.
> It's like half the people have turned off their brain.
LLMs are for people who want to turn off their brain. If you want your team to improve, you should lead by example and stop using LLMs. You need to create an environment where it is unacceptable to turn off your brain. Your underlings will never use LLM tools the way you want them to. LLM tools are designed to be used the way your underlings use them.
> We produce faster, but we don't produce the right stuff.
Same here...
We commit bad decision, then in the next PR, workaround the bad decision (instead of undoing it), then in the next PR we have to workaround (aka deal with) the initial bad decision + work around...so on and so forth...
And at any point, manually reviewing the changes becomes impossible because you have to reason about the changes keeping all the workarounds and special cases in your mind...
> workaround the bad decision (instead of undoing it)
I'm convinced that LLM-generated comments accelerate this problem, because they embed twists that a human didn't choose, and then those affect what gets generated next.
Much the same way LLM-characters don't do so well at answering "I don't know", there's a problem of them failing to cull context that ought to be irrelevant.
No, it's not a bias. If I vet every line of code still, but my coworker ships thousands of lines they don't understand, we're actually using it differently.
Still, isn't programming fine as a hobby? Honestly, when I program, I hand off the parts I don't want to do to AI, and these days I just do what I want to do. It seems like something worth doing as a hobby. At work, you're forced to use AI to meet deadlines, but as a hobby it seems perfectly good too.
This is great for personal projects, but at work chances are someone will have completely rewritten/refactored/rearchitected everything I'd built up a good mental model of next time I blinked.
I recently (2 days ago) noticed i enjoy it a lot more if i use a super fast model with low reasoning (gpt 6 luna low effort + fast mode). That way, i can still have hands on the entire time and dont have to wait around for 20minutes for it to finish up and have made a bunch of decisions without me.
Also, LLMs are first and foremost excellent at reading ultra fast. Makes it excellent for summarizing and re-representing modules of your code
That's a great idea, I will try that too. The LLMs are so capable, but the slowness annoys me. I always end up working on a few things at once and always doing rounds of reading its output, giving new orders, and going back to Reddit/HN/YouTube while it's doing its thing for the next 5 minutes.
I’ve also found that fast cheap models are more sustainable because they make it easier to keep technical debt under control. Partially because I’m keeping sustained attention in one place. And partially because small fast models with low reasoning don’t seem to love technical debt either and will (unintentionally) start to give you negative feedback signals when you’re letting things get messy.
I've had bad experiences with gpt 6 luna, but 5.6 luna worked real nicely with e.g React, you can do a back n forth and it'll work like a teammate vs just a "done!" where you then have to clean everything up afterwards
It uses a Chinese sage to illustrate the fight against using machines:
"I have heard my teacher say that whoever uses machines does all his work like a machine. He who does his work like a machine grows a heart like a machine, and he who carries the heart of a machine in his breast loses his simplicity. He who has lost his simplicity becomes unsure in the strivings of his soul. Uncertainty in the strivings of the soul is something which does not agree with honest sense. It is not that I do not know of such things;
I am ashamed to use them."
OpenAI/Anthropic's marketing here reminds me of the way colonizers will exalt criminal groups in the regions they wish to dominate. Similarly, these AI firms have exalted a caste of lower-performing engineers who have been wreaking havoc with AI spam for the last few years. I'm not worried about losing my job and these people will become scapegoats when the bottom falls out.
I don't understand these posts. I've never been more excited to program. Everything that I disliked about it disappeared overnight.
Who likes typing code, writing boilerplate, reading bad documentation for nights looking for that small thing, asking around in forums, reading dependency source code, writing trivial unit/ui tests.
And who likes planning, architecting, directing a team, steering and giving advice, reviewing code, designing interfaces and APIs.
LLMs truly took the worst of this trade, and left all the enjoyable things (which they will be unable to do until AGI = for a long time if ever).
> Who likes typing code, writing boilerplate, reading bad documentation for nights looking for that small thing, asking around in forums, reading dependency source code
Me? I enjoy that stuff for what it is. Reviewing code is definitely not the truly enjoyable thing. Writing code, expressing my logic in code. That is enjoyable to me.
And I'm sure elevator operators stood pressing buttons long after they didn't need to...
We're going through a change in software development. People can either move with the times or hang on to their old way of working and age out of the workforce. Either through biological age or just being left behind by those moving with the times.
There will always be those that still think they can code better/faster than the models. It's a combination of professional arrogance, and struggling to let go of a skill that took them decades to acquire which lost its value in a few short years.
It's hard on people, it's hard for those with lots of experience because they are being left behind, and it's hard on the juniors that went into CS thinking it'll be a well paid job for life only to find they aren't needed anymore.
It will take longer than we think. Those of us in the industry have a few years yet, things always change more slowly than anticipated, but all these HN'ers still whining about their emotional attachment to code/coding that can be trivially recreated are just in denial. Are models perfect today? No of course not. Just like most programmers. But they are already better than the majority, and they are just getting better. Coding is over. Software development is of course just fine. We'll just learn new and better ways of solving human centric problems using computers. Just like all the assembly programmers did.
The value of Instagram was never the code. The code was just a means to an end. Well, the means have changed.
I feel for those who lose their livelihoods. That is obviously awful and no amount of "things change" rhetoric will ease that pain, and I have no ideas for those. Sleep under your desk and buy the market with every cent you earn for as long as you continue to earn and hope the market grows 10x in 10 years like Musk predicts and just hope to be on the right side of the industrial change.
People other than you, I guess. I think your first chunk is a bit of an unfavorable perspective, but still I would take that over the second every time.
That's great for you, but you're completely devoid of empathy if you can't understand these posts. For many, many people, the things that are left are not the enjoyable ones. People have built hobbies and careers around doing something they love and its relevance is evaporating at an unprecedented rate.
I’m not sure which group you consider worst but LLMs already does both. I can only vouch for Opus 5.5. It just needs someone to tell it to do it that’s all. And I am the most anti AI person this post is targeted to.
Not commenting on the first “who likes” of whether typing out code is enjoyable (because I think that’s inherently personal preference [0]), but I think the second category is to be understood as “things LLMs enable you to do more of”, not things the author is unwilling to do. So actually, you’d agree with them there.
[0] Okay, I am going to comment on it some more: For me, it also depends on whether I’m “forced” to do the code writing (or reading) because I just want the resulting output or need to modify the program to my wishes; or whether I want to do it because it fulfills me, is interesting, teaches me something new, etc. Both can be true for one person at different times/in different contexts.
> Who likes typing code, writing boilerplate, reading bad documentation for nights looking for that small thing, asking around in forums, reading dependency source code, writing trivial unit/ui tests.
I, for one, liked it. I decided to pursue a career as a software engineer because, for all the downsides, I actually enjoyed working with code so closely. It really allowed me to learn and know the code that I wrote.
Whenever I'm using LLMs for code generation, the one huge downside I notice, is that even if I review everything line by line, I don't get the same "I know precisely how it works, because I wrote it" feeling.
I really wonder what the implications of this will be. For instance, if the young devs who are just entering the field will actually be able to write code on their own? Or maybe it will truly not be needed a few years from now?
I think there will be a divide. The SaaS of the future can probably absorb much more LLM use with less knowledgeable devs, because the product not being trash was never critical; it just has to be good enough that Sales can keep convincing people who won't use it to buy it for their orgs. But for things that actually need to be right, there will always be a need for devs who can understand and write code. There has already been some pullback among a few of my colleagues who were riding high earlier this year because what we're working on is more of the second type.
I'm with you. During most of my career, I was considered very technical and a good coder, but I never really loved the slowness of it. I enjoyed designing solutions but found "putting them into code" tiresome because for me the fun is in actually solving the problem.
But it's clear that many people feel otherwise. Software engineering has many classes of tasks and the difference in opinions about AI seem to exist because different people like different aspects of it.
Can you draw such a clear line? I put out some thing to experiment with an idea and then iterate over it till i get a solution and then spend time trying to polish that for production use. Thinking and coding are very rarely two separate states for me.
It's not that clear and still involves coding. But as I start coding and modules/APIs/classes take shape, it gets to a point where I say "ok, from here on it's just filling in the blanks".
But filling in the blanks can still involve a lot of grindy, time consuming work where you iterate through collections, build parameters for other APIs. Allbod that stuff is boring to me.
What I'm trying to say is that most coding tasks require "senior level thinking" and "intern level thinking". The latter can sometimes be the majority of the work and I don't want to do that anymore.
Coding is solving puzzles creatively. When trying to achieve an overall goal, I get some easy problems that remind me how much I've improved since I started out, and some hard problems that are intellectually stimulating. Debugging, reading documentation or source code feels a bit like being a fictional detective running an investigation; plus I'm not just improving my understanding of the system but connecting with other humans through understanding their intent. And finally, I get to choose which solution to implement and how, therefore expressing myself and my own taste.
I come out of it intellectually stimulated, with a sense of achievement and improvement and increased understanding; with also a bit of human connection, and creativity. And of course I also get a working program, so I feel productive too.
If you don't understand this you never enjoyed programming per se. It's fine, people like different things. But I think you might be mistaken calling whatever your job is "coding" or "the trade" because I get the impression it just isn't.
Why exactly do you think LLM'S will be unable to do planning, architecting, code review, interface and API design? Given good enough specs, they absolutely can do these things.
I feel like coding will be dead soon, and what will be left are project management / team lead / product owner kind of jobs where you craft specs and steer AI agents on very high level. I would hardly call that "coding" anymore.
What I dislike of the status quo is being stuck between traditional programmer, and such project management role. With AI coding I can't really get into a flow state anymore, and without flow state it's hard to focus on the details.
>I feel like coding will be dead soon, and what will be left are project management / team lead / product owner kind of jobs where you craft specs and steer AI agents on very high level.
And these will be gone, too, a couple months later. Or possibly even at the same time.
> And who likes planning, architecting, directing a team, steering and giving advice, reviewing code, designing interfaces and APIs. Coding became more mentally exciting.
I love these parts. But in my experience, LLMs break much of that.
Planning/architecting? Great. So far, I haven't found any agent that actually follows the plans set out, though. They get something wrong, and it snowballs from here.
Directing a team, steering and giving advice? Absolutely. Some of my greatest achievements involve mentoring. But human teams learn from their mistakes, grow up and contribute insights. Agents don't.
Reviewing code? Well, maybe not so much fun, but it's usually a good way to understand what's going on, and to share experience. Except with agents, you need to spend most of your brainpower seeing through the misleading comments and documentation and choices and sycophancy, and the agent never learns from its mistakes.
Designing interfaces and APIs? Absolutely. Yet every time I look at code modified by my agent, I see that the contracts (internal or public) have been broken by the latest edits.
In my experience, LLMs can be very useful, for refactorings and as learning and review assistants, and sometimes as replacement for missing documentation. But codegen is the worst way to use them.
I was with you on your second list until this part. It feels like a poison pill rider that's added to a bill in Congress, because I've always found code review to be the single most soul-sucking aspect of the job.
I'll grant that may be at least partially due to poor practices at the places I've worked, but semi-regularly having large PRs that take hours to comb through and where you either rubber-stamp it or look like the bad guy (because you're retarding release velocity) has never been particularly fulfilling.
I had great discussions in PRs, debates we would never have in real life conversations. In these times review is maybe the last holdout to think teams have control over the code. AI made also this nicer by making summaries and answering the stupid questions without shame before turning to the author with confident criticism.
Sounds dreamy. Let's plug in and "write" code without interacting with anyone ever. That way you can further abstract yourself from all meaningful connections to become more efficient. Seriously cannot get inside the head of people like you.
> I don't understand these posts. I've never been more excited to program. Everything that I disliked about it disappeared overnight.
Based on your post, you never liked programming in the first place. You liked having software. Typing the code in, reading the documentation, all that stuff is programming.
> Who likes typing code, writing boilerplate, reading bad documentation for nights looking for that small thing, asking around in forums, reading dependency source code, writing trivial unit/ui tests.
Me! I do!
> And who likes planning, architecting, directing a team, steering and giving advice, reviewing code, designing interfaces and APIs. Coding became more mentally exciting.
I'd rather eat rusty barbed wire. I'd avoid your middle manager hellscape even if if doubled my salary, I swear!
I just realized that the last time I wrote a for loop was in November 2025, so it’s been ten months.
The previous time I had this kind of break from hands-on imperative programming was in… 1987.
I was seven years old when I started doing BASIC, and though interests came and went (at one point I went to film school), I never stopped coding entirely. Until now.
The amount of code I’m producing today is higher than before. I’m now also middle-managing a team and doing what’s effectively customer-facing product management, a combination that has become bearable thanks to AI. But it’s hard to shake the feeling that something is permanently gone from my life.
It’s very clear AI writes great code and will even review it for bugs much better and faster than a human can. With cloud agents like Devin, you can spawn an army of these agents at a moments notice. Teams who figure out how to do this will simply out compete any teams who don’t.
Now humans operate at a higher level of abstraction. Our focus area is now ensuring the high-level architecture will accommodate future needs well, ensuring the final product meets requirements, and most importantly, ensuring the final product has been validated. It’s important to use every strategy in the book to test the output via unit tests, smoke tests, integration tests, and end to end tests. On our team, we’ve been investing a lot in setting up full test environments that include the entire stack at a level simply unachievable before AI. Now we can merge code changes at an unprecedented velocity without losing confidence in the system.
I think since LLMs make code generation cheaper, we are left with more complicated, often more social tasks. Programming is becoming even less "leave me alone and let me to code" (on average). This can lead to burnout for many people, but this exploitative capitalism doesn't care.
It’s hard to build up trust in something that pretends to be much cleverer than yourself.
I think this point captures the crux of my struggle with LLMs. I want to let loose, but I don't trust the outcome. Will it make a dumb mistake? Will it make a smart implementation, that I won't understand 3 months from now? Am I building something that I will need an LLM to explain to be later? If so, I am perpetually dependent on this technology. That's fine if I can just take it anywhere I go and can own it. I have switched IDEs and Editors every few years, sometimes leaning into their "smartness", and sometimes completely stepping away from the "quality of life" features. But every time, I knew I will have it with me wherever and whenever I needed.
Depending on LLMs doesn't feel that way now. And that really makes me reluctant.
I’ve been experimenting with this idea that I can implement features faster and more accurately than the big model + agent swarm paradigm. I also have been trying this because of what the post brings up when it comes to AI burnout.
For me, writing the code (literally typing), shifting files around, renaming things is slow. So I’ve been using small models + much stronger grasp on the reins. Similar to what this post mentions. It’s been great, the decisions come from me. I tell it to make a domain class with these fields and these invariants. It does it in a split second, I look it over, tweak it and move to the next part of implementation.
When I experimented with swarms it would spend an hour just having agents adversarially review to decide some pretty trivial details. This way, when someone asks me a question during review, I can answer it. When I need to dive back in, I know what to look for and where to look for it. I have way more connection to my work, than a few months prior.
Early copilot was exactly what I wanted for a long time. A smarter autocomplete. Then they started taking it too far with just filling in the entire file.
I have been programming for 25+ years and the last year has been the most fun because every single useless-for-everyone-but-me idea ... I could spend a few hours on and get it working. Did 30-40 different small projects this year.[1] Mostly used by me (and some by a couple of friends).
I write software because I am interested in the final outcomes, not because I enjoy the journey, which is often infuriating because of the mistakes you make, or the crap you depend on to get your work done.
Whether people will still have jobs in three years, or thirty, only time will tell, but I feel people are kidding themselves if they think LLMs won't have an impact. We were fine with using machines to automate physical labor as we now balk at the same thing happening to the intellectual side of things.
I, personally, have done a complete volte-face as far as my views on the subject are concerned over the past year or so as I use LLMs more and more for coding and other tasks.
---
[1] There is this idea I have had of an Excel replacement: simple, purely functional, TSV-based spreadsheet with zero backward compatibility with styles as purely optional sidecar material that I have always wanted to do but lacked the time. Brainstormed a spec with Claude today. Might work on it in the near future.
I used to enjoy the journey more. I feel like the explosion of insane complexity and layers and the mess of dependencies and all the rest ruined the fun of the journey long before AI came along.
Take user interfaces. Making one wasn’t so bad in the 90s or 2000s. Now it’s a hellscape of either bloated Electron or the shifting sands of native APIs that are all complex and special.
All of it imposes cognitive load that has nothing to do with the problem I want to solve and it foists ugliness on you. Before you can touch your problem you have to create all this boilerplate.
I can just have the bot do that crap now.
If I want to code for fun I can code only the parts that are fun.
That's been my experience too. 7+ years in industry and lot more before, and I now finally feel like I have more time to do fun side projects. Some may say it is all about the journey, but i rather build for whoever is going to use it, even though it might only be for myself.
People are comparing this to tech automating wood work, knitting, baking etc. That comparison is fundamentally flawed.
You still needed to know how to operate those machines. Where to begin, when to do what. Know what’s right and what’s wrong. They are just tools.
Something like claude desktop can help people build, and I am putting myself behind this, a fully functioning scalable maintainable program(whatever platform) in an hour without having ever written a line of code themselves.
You and I took years to learn it, I have been writing code for 14 years now and everything I learned from my failures and successes someone else can get for free. Even newer paradigms these LLM’s can dream up.
Its the democratisation, or however you wanna call it, of that foundation people put so much effort into building is what pissed off everyone here. Including me.
Results of all these years of hard earned knowledge are accessible to any random person off the street without any effort.
I use claude code at work, even for architectural decisions it can iterate small prototypes to validate. I still read code because I am old school but it can replace most people I know.
148 comments
[ 0.24 ms ] story [ 10.1 ms ] thread1. Compare the code against production data with MCP. We use a read only platform called Metabase which reads one of the MySQL replicas. I tell the agent to fetch production data and make a static pass (it doesn't run the code) in which it compares shapes and inputs, and oh boy it has caught a few misnomers.
2. To debug production data and create graphs. It connects to datadog (where we store the logs), checks the history of the commits, and many times suggest fixes. These are for low-medium impact like validations that didn't need to go through, or a step check that it was missing
3. Creating tickets on the board (we use linear). Now PRs are more detailed and can be understood.
And for coding? I've been spending the last 4 weeks scrutinizing EVERY output and decision from frontier models, and pushed back in many decisions.
I use AI like StackOverflow on steroids. And like using stackoverflow, I do it in a browser and I don't let the LLM touch my code.
I, personally, love programming more than ever!
Writing code is like trying to build a house without powertools. Could you do it? Sure. But no one ever will, for most values of no one.
I guess just blow my brains out? Just.. Thanks for trying man, but you picked the wrong thing to specialize in, now you're completely redundant and worthless to society. Here's your cyanide pill?
God damn I'm so bitter about all of this. I was doing so well for a bit now I feel like I've completely wasted my life.
Right now I'm just at a loss. I've never wanted to be anything other than a programmer before.
Thank you.
I won't argue that the web is more 'capturable' by LLMs, though. It was maybe slightly out of reach by a large cohort of developers who wouldn't have considered themselves "UI people" (or who scoffed at it for various reasons), but now is well within vibe-territory.
Power tools cannot "produce any house in hours"
You know, it is called "soft" for a reason...
If LLMs could be relied upon to produce a good result every time, then they would be like power tools. But they can't, so they aren't. Nobody would use a cordless drill that has a 10% chance of the drill bit suddenly moving several inches to the left of where you were aiming.
An LLM can go and pull files off NFS, and write and run verification scripts in less time than I can even think of a testing strategy or locate the files.
Sometimes they'll do it unprompted
For writing unit tests, which are often repetative and verbose, they are another godsend.
Overall they're freeing up a lot more time for nice things like thoughtful API design, refactoring, system architecture and design work etc.
Some bakers started baking as a hobby, got really good at it, and then better tools and profit margins came about. Now they were forced to make low quality bread at work for 8 hours straight every day and seeing 90% of their colleagues that they considered pretty good bakers actually be fine with it.
How exciting do you think those bakers are to bake more bread at home after they go though slopping bread at work? How enthusiastic are they still about their hobby after a few years or a decade?
[1] On another note, a lot of my friends who are professional musicians barely play or make music in their free time, apart from keeping their skills up.
And I still very much like using LLMs for certain things. I do not miss Googling for hours to compile the right information.
1. Because they're genuinely better quality. Usually.
2. There's a human connection (way more important than people think. I.e commodity fetishism)
3. Less people can do it.
-- all of these properties will apply to software in the near future. The person that can hand code the thing an llm does poorly, or because an llm cant be trusted will be extremely valuable, especially as this category of people begins to shrink, as peoppe atrophy their skills with llms.
The rest of y'all are excited about handing over the value of your labor to some billionaires thinking machine because that same billionaire has convinced you that you're going to be able to create your own startup or something stupid.
Nah, you're going to become a (underpaid/poor) conveyor belt operator making mass manufactured slop. Some smart ones will become the swiss watchmakers of software. Rare and in demand.
No. The people. You know, the Shown HN: I wrote a cool thing. Here's the thing on GitHub.
It's not about selling, it's about sharing and people appreciating it, using it, sharing tips to improve it. Most people who write FLOSS in their free time do it to solve their own problem first, but they also do it to share with others a cool thing they did etc.
> Most people who craft as a hobby never sell a thing
Sure. But they do craft for SOMEONE. Initially for themselves but at some point they want to show their skills to someone, even if only to family and friends. People are social animals.
I don't know that hand crafted software has the same appreciation as say woodworking.
Yet. But I doubt you'll find that appreciation here on Hacker News, or on GitHub. You'll probably have to find a community of like-minded people who enjoy tinkering with software by hand, and those already exist, e.g. parts of the IndieWeb, or Lobsters. Posting your hand-crafted software here is a bit like a knitting enthusiast showing off their sweater at a textile industry trade fair.
For tasks you enjoy, write them yourself.
What has made me enjoy it less, is having to deal with colleagues' use of it. Sorry to say, but I don't enjoy talking to meat proxies, or getting huge PRs that solve the wrong problem. It's like half the people have turned off their brain. We produce faster, but we don't produce the right stuff.
In fairness though I never really enjoyed programming for the sake of it, I was always about what you’re getting at the end.
The correct response to "I feel I have been promoted (without a corresponding title or pay change)" is to be pissed off, not excited
A promotion is only a good thing if you actually benefit from it
LLMs are for people who want to turn off their brain. If you want your team to improve, you should lead by example and stop using LLMs. You need to create an environment where it is unacceptable to turn off your brain. Your underlings will never use LLM tools the way you want them to. LLM tools are designed to be used the way your underlings use them.
Same here...
We commit bad decision, then in the next PR, workaround the bad decision (instead of undoing it), then in the next PR we have to workaround (aka deal with) the initial bad decision + work around...so on and so forth...
And at any point, manually reviewing the changes becomes impossible because you have to reason about the changes keeping all the workarounds and special cases in your mind...
I'm convinced that LLM-generated comments accelerate this problem, because they embed twists that a human didn't choose, and then those affect what gets generated next.
Much the same way LLM-characters don't do so well at answering "I don't know", there's a problem of them failing to cull context that ought to be irrelevant.
> What has made me enjoy it less, is having to deal with colleagues' use of it.
https://en.wikipedia.org/wiki/Third-person_effect
Also, LLMs are first and foremost excellent at reading ultra fast. Makes it excellent for summarizing and re-representing modules of your code
Frenetic multitasking is for suckers.
It uses a Chinese sage to illustrate the fight against using machines:
"I have heard my teacher say that whoever uses machines does all his work like a machine. He who does his work like a machine grows a heart like a machine, and he who carries the heart of a machine in his breast loses his simplicity. He who has lost his simplicity becomes unsure in the strivings of his soul. Uncertainty in the strivings of the soul is something which does not agree with honest sense. It is not that I do not know of such things; I am ashamed to use them."
It resonates with me similarly as the post.
A lot of these AI guys seem pretty simple to me...
The machine burns time as fuel, and gives more time back. It's the system around the machine that causes shame.
Who likes typing code, writing boilerplate, reading bad documentation for nights looking for that small thing, asking around in forums, reading dependency source code, writing trivial unit/ui tests.
And who likes planning, architecting, directing a team, steering and giving advice, reviewing code, designing interfaces and APIs.
LLMs truly took the worst of this trade, and left all the enjoyable things (which they will be unable to do until AGI = for a long time if ever).
Me? I enjoy that stuff for what it is. Reviewing code is definitely not the truly enjoyable thing. Writing code, expressing my logic in code. That is enjoyable to me.
We're going through a change in software development. People can either move with the times or hang on to their old way of working and age out of the workforce. Either through biological age or just being left behind by those moving with the times.
There will always be those that still think they can code better/faster than the models. It's a combination of professional arrogance, and struggling to let go of a skill that took them decades to acquire which lost its value in a few short years.
It's hard on people, it's hard for those with lots of experience because they are being left behind, and it's hard on the juniors that went into CS thinking it'll be a well paid job for life only to find they aren't needed anymore.
It will take longer than we think. Those of us in the industry have a few years yet, things always change more slowly than anticipated, but all these HN'ers still whining about their emotional attachment to code/coding that can be trivially recreated are just in denial. Are models perfect today? No of course not. Just like most programmers. But they are already better than the majority, and they are just getting better. Coding is over. Software development is of course just fine. We'll just learn new and better ways of solving human centric problems using computers. Just like all the assembly programmers did.
The value of Instagram was never the code. The code was just a means to an end. Well, the means have changed.
I feel for those who lose their livelihoods. That is obviously awful and no amount of "things change" rhetoric will ease that pain, and I have no ideas for those. Sleep under your desk and buy the market with every cent you earn for as long as you continue to earn and hope the market grows 10x in 10 years like Musk predicts and just hope to be on the right side of the industrial change.
People other than you, I guess. I think your first chunk is a bit of an unfavorable perspective, but still I would take that over the second every time.
It really does seem like the target audience of LLM users are people who never learned to use Vim.
> And who likes planning, architecting, directing a team, steering and giving advice, reviewing code, designing interfaces and APIs.
Why would anyone pay you to work for them if you aren't willing to do these things? This is the entire job.
[0] Okay, I am going to comment on it some more: For me, it also depends on whether I’m “forced” to do the code writing (or reading) because I just want the resulting output or need to modify the program to my wishes; or whether I want to do it because it fulfills me, is interesting, teaches me something new, etc. Both can be true for one person at different times/in different contexts.
I, for one, liked it. I decided to pursue a career as a software engineer because, for all the downsides, I actually enjoyed working with code so closely. It really allowed me to learn and know the code that I wrote.
Whenever I'm using LLMs for code generation, the one huge downside I notice, is that even if I review everything line by line, I don't get the same "I know precisely how it works, because I wrote it" feeling.
I really wonder what the implications of this will be. For instance, if the young devs who are just entering the field will actually be able to write code on their own? Or maybe it will truly not be needed a few years from now?
But it's clear that many people feel otherwise. Software engineering has many classes of tasks and the difference in opinions about AI seem to exist because different people like different aspects of it.
But filling in the blanks can still involve a lot of grindy, time consuming work where you iterate through collections, build parameters for other APIs. Allbod that stuff is boring to me.
What I'm trying to say is that most coding tasks require "senior level thinking" and "intern level thinking". The latter can sometimes be the majority of the work and I don't want to do that anymore.
I come out of it intellectually stimulated, with a sense of achievement and improvement and increased understanding; with also a bit of human connection, and creativity. And of course I also get a working program, so I feel productive too.
If you don't understand this you never enjoyed programming per se. It's fine, people like different things. But I think you might be mistaken calling whatever your job is "coding" or "the trade" because I get the impression it just isn't.
It doesn't exist yet, but you could easily create it.
I feel like coding will be dead soon, and what will be left are project management / team lead / product owner kind of jobs where you craft specs and steer AI agents on very high level. I would hardly call that "coding" anymore.
What I dislike of the status quo is being stuck between traditional programmer, and such project management role. With AI coding I can't really get into a flow state anymore, and without flow state it's hard to focus on the details.
And these will be gone, too, a couple months later. Or possibly even at the same time.
I love these parts. But in my experience, LLMs break much of that.
Planning/architecting? Great. So far, I haven't found any agent that actually follows the plans set out, though. They get something wrong, and it snowballs from here.
Directing a team, steering and giving advice? Absolutely. Some of my greatest achievements involve mentoring. But human teams learn from their mistakes, grow up and contribute insights. Agents don't.
Reviewing code? Well, maybe not so much fun, but it's usually a good way to understand what's going on, and to share experience. Except with agents, you need to spend most of your brainpower seeing through the misleading comments and documentation and choices and sycophancy, and the agent never learns from its mistakes.
Designing interfaces and APIs? Absolutely. Yet every time I look at code modified by my agent, I see that the contracts (internal or public) have been broken by the latest edits.
In my experience, LLMs can be very useful, for refactorings and as learning and review assistants, and sometimes as replacement for missing documentation. But codegen is the worst way to use them.
Mmm..almost everyone who loves programming. If I hated typing code, I would not been a programmer, because it used to involve a lot of typing.
Or else you did it for $$$. But then don't assume every one who programs hates typing code.
I was with you on your second list until this part. It feels like a poison pill rider that's added to a bill in Congress, because I've always found code review to be the single most soul-sucking aspect of the job.
I'll grant that may be at least partially due to poor practices at the places I've worked, but semi-regularly having large PRs that take hours to comb through and where you either rubber-stamp it or look like the bad guy (because you're retarding release velocity) has never been particularly fulfilling.
Hackers.
Based on your post, you never liked programming in the first place. You liked having software. Typing the code in, reading the documentation, all that stuff is programming.
Me! I do!
> And who likes planning, architecting, directing a team, steering and giving advice, reviewing code, designing interfaces and APIs. Coding became more mentally exciting.
I'd rather eat rusty barbed wire. I'd avoid your middle manager hellscape even if if doubled my salary, I swear!
The previous time I had this kind of break from hands-on imperative programming was in… 1987.
I was seven years old when I started doing BASIC, and though interests came and went (at one point I went to film school), I never stopped coding entirely. Until now.
The amount of code I’m producing today is higher than before. I’m now also middle-managing a team and doing what’s effectively customer-facing product management, a combination that has become bearable thanks to AI. But it’s hard to shake the feeling that something is permanently gone from my life.
Now humans operate at a higher level of abstraction. Our focus area is now ensuring the high-level architecture will accommodate future needs well, ensuring the final product meets requirements, and most importantly, ensuring the final product has been validated. It’s important to use every strategy in the book to test the output via unit tests, smoke tests, integration tests, and end to end tests. On our team, we’ve been investing a lot in setting up full test environments that include the entire stack at a level simply unachievable before AI. Now we can merge code changes at an unprecedented velocity without losing confidence in the system.
It's very clear they dont. Maybe they will one day. That day isnt today.
Depending on LLMs doesn't feel that way now. And that really makes me reluctant.
For me, writing the code (literally typing), shifting files around, renaming things is slow. So I’ve been using small models + much stronger grasp on the reins. Similar to what this post mentions. It’s been great, the decisions come from me. I tell it to make a domain class with these fields and these invariants. It does it in a split second, I look it over, tweak it and move to the next part of implementation.
When I experimented with swarms it would spend an hour just having agents adversarially review to decide some pretty trivial details. This way, when someone asks me a question during review, I can answer it. When I need to dive back in, I know what to look for and where to look for it. I have way more connection to my work, than a few months prior.
And that's not a criticism, that's what I've come back to myself.
I write software because I am interested in the final outcomes, not because I enjoy the journey, which is often infuriating because of the mistakes you make, or the crap you depend on to get your work done.
Whether people will still have jobs in three years, or thirty, only time will tell, but I feel people are kidding themselves if they think LLMs won't have an impact. We were fine with using machines to automate physical labor as we now balk at the same thing happening to the intellectual side of things.
I, personally, have done a complete volte-face as far as my views on the subject are concerned over the past year or so as I use LLMs more and more for coding and other tasks.
---
[1] There is this idea I have had of an Excel replacement: simple, purely functional, TSV-based spreadsheet with zero backward compatibility with styles as purely optional sidecar material that I have always wanted to do but lacked the time. Brainstormed a spec with Claude today. Might work on it in the near future.
I used to enjoy the journey more. I feel like the explosion of insane complexity and layers and the mess of dependencies and all the rest ruined the fun of the journey long before AI came along.
Take user interfaces. Making one wasn’t so bad in the 90s or 2000s. Now it’s a hellscape of either bloated Electron or the shifting sands of native APIs that are all complex and special.
All of it imposes cognitive load that has nothing to do with the problem I want to solve and it foists ugliness on you. Before you can touch your problem you have to create all this boilerplate.
I can just have the bot do that crap now.
If I want to code for fun I can code only the parts that are fun.
You still needed to know how to operate those machines. Where to begin, when to do what. Know what’s right and what’s wrong. They are just tools.
Something like claude desktop can help people build, and I am putting myself behind this, a fully functioning scalable maintainable program(whatever platform) in an hour without having ever written a line of code themselves.
You and I took years to learn it, I have been writing code for 14 years now and everything I learned from my failures and successes someone else can get for free. Even newer paradigms these LLM’s can dream up.
Its the democratisation, or however you wanna call it, of that foundation people put so much effort into building is what pissed off everyone here. Including me.
Results of all these years of hard earned knowledge are accessible to any random person off the street without any effort.
I use claude code at work, even for architectural decisions it can iterate small prototypes to validate. I still read code because I am old school but it can replace most people I know.