My AI skeptic friends are all nuts

2356 pointsposted 8 months ago
by tabletcorry

635 Comments

matthewsinclair

8 months ago

I think this article is pretty spot on — it articulates something I’ve come to appreciate about LLM-assisted coding over the past few months.

I started out very sceptical. When Claude Code landed, I got completely seduced — borderline addicted, slot machine-style — by what initially felt like a superpower. Then I actually read the code. It was shockingly bad. I swung back hard to my earlier scepticism, probably even more entrenched than before.

Then something shifted. I started experimenting. I stopped giving it orders and began using it more like a virtual rubber duck. That made a huge difference.

It’s still absolute rubbish if you just let it run wild, which is why I think “vibe coding” is basically just “vibe debt” — because it just doesn’t do what most (possibly uninformed) people think it does.

But if you treat it as a collaborator — more like an idiot savant with a massive brain but no instinct or nous — or better yet, as a mech suit [0] that needs firm control — then something interesting happens.

I’m now at a point where working with Claude Code is not just productive, it actually produces pretty good code, with the right guidance. I’ve got tests, lots of them. I’ve also developed a way of getting Claude to document intent as we go, which helps me, any future human reader, and, crucially, the model itself when revisiting old code.

What fascinates me is how negative these comments are — how many people seem closed off to the possibility that this could be a net positive for software engineers rather than some kind of doomsday.

Did Photoshop kill graphic artists? Did film kill theatre? Not really. Things changed, sure. Was it “better”? There’s no counterfactual, so who knows? But change was inevitable.

What’s clear is this tech is here now, and complaining about it feels a bit like mourning the loss of punch cards when terminals showed up.

[0]: https://matthewsinclair.com/blog/0178-why-llm-powered-progra...

wpietri

8 months ago

One of the things I think is going on here is a sort of stone soup effect. [1]

Core to Ptacek's point is that everything has changed in the last 6 months. As you and I presume he agree, the use of off-the-shelf LLMs in code was kinda garbage. And I expect the skepticism he's knocking here ("stochastic parrots") was in fact accurate then.

But it did get a lot of people (and money) to rush in and start trying to make something useful. Like the stone soup story, a lot of other technology has been added to the pot, and now we're moving in the direction of something solid, a proper meal. But given the excitement and investment, it'll be at least a few years before things stabilize. Only at that point can we be sure about how much the stone really added to the soup.

Another counterfactual that we'll never know is what kinds of tooling we would have gotten if people had dumped a few billion dollars into code tool improvement without LLMs, but with, say, a lot of more conventional ML tooling. Would the tools we get be much better? Much worse? About the same but different in strengths and weaknesses? Impossible to say.

So I'm still skeptical of the hype. After all, the hype is basically the same as 6 months ago, even though now the boosters can admit the products of 6 months ago sucked. But I can believe we're in the middle of a revolution of developer tooling. Even so, I'm content to wait. We don't know the long term effects on a code base. We don't know what these tools will look like in 6 months. I'm happy to check in again then, where I fully expect to be again told: "If you were trying and failing to use an LLM for code 6 months ago †, you’re not doing what most serious LLM-assisted coders are doing." At least until then, I'm renewing my membership in the Boring Technology Club: https://boringtechnology.club/

[1] https://en.wikipedia.org/wiki/Stone_Soup

raxxorraxor

8 months ago

The better I am at solving a problem, the less I use AI assistants. I use them if I try a new language or framework.

Busy code I need to generate is difficult to do with AI too. Because then you need to formalize the necessary context for an AI assistant, which is exhausting with an unsure result. So perhaps it is just simpler to write it yourself quickly.

I understand comments being negative, because there is so much AI hype without having to many practical applications yet. Or at least good practical applications. Some of that hype is justified, some of it is not. I enjoyed the image/video/audio synthesis hype more tbh.

Test cases are quite helpful and comments are decent too. But often prompting is more complex than programming something. And you can never be sure if any answer is usable.

fsloth

8 months ago

I totally agree. The ”hard to control mech suit” is an excellent analogy.

When it works it’s brilliant.

There is a threshold point as part of the learning curve where you realize you are in a pile of spaghetti code and think it actually saves no time to use LLM assistant.

But then you learn to avoid the bad parts - thus they don’t take your time anymore - and the good parts start paying back in heaps of the time spent learning.

They are not zero effort tools.

There is a non-trivial learning cost involved.

tptacek

8 months ago

For what it's worth: I'm not dismissive of the idea that these things could be ruinous for the interests of the profession. I don't automatically assume that making applications drastically easier to produce is just going to make way for more opportunities.

I just don't think the interest of the profession control. The travel agents had interests too!

chinchilla2020

8 months ago

The reason I remain in the "skeptical" camp is because I am experiencing the same thing you are - I keep oscillating between being impressed, then disappointed.

Ultimately the thing that impresses me is that LLMs have replaced google search. The thing that disappoints me is that their code is often convincing but wrong.

Coming from a hard-engineering background, anything that is unreliable is categorized as bad. If you come from the move-fast-break-things world of tech, then your tolerance for mistakes is probably a lot higher.

belter

8 months ago

> What fascinates me is how negative these comments are — how many people seem closed off to the possibility that this could be a net positive for software engineers rather than some kind of doomsday.

I tried the latest Claude for a very complex wrapper around the AWS Price APIs who are not easy to work with. Down a 2,000 line of code file, I found Claude faking some API returns by creating hard coded values. A pattern I have seen professional developers being caught on while under pressure to deliver.

This will be a boon to the human skilled developers, that will be hired at $900 dollars an hour to fix bugs of a subtlety never seen before.

osigurdson

8 months ago

I have been using Windsurf for a few months and ChatGPT for a couple of years. I don't feel Windsurf is a massive game changer personally. It is good if you are very tired or working in a new area (also good for exploring UI ideas as the feedback loop is tight), but still not a real game changer over ChatGPT. Waiting around for it to do its thing ("we've encountered at error - no credits used") is boring and flow destroying. Of you know exactly what you are doing the productivity is probably 0.5 vs just typing the code in yourself. Sorry, I'm not going to bang around in Windsurf all day just to help with the training so that "v2" can be better. They should be paying me for this realistically.

Of course, in aggregate AI makes me capable in a far broader set of problem domains. It would be tough to live without it at this stage, but needs to be used for what it is actually good at, not what we hope it will be good at.

osigurdson

8 months ago

The arguments seem to come down to tooling. The article suggests that ChatGPT isn't a good way to interact with LLMs but I'm not so sure. If the greatest utility is "rubber ducking" and editing the code yourself is necessary then tools like Cursor go too far in a sense. In my own experience, Windsurf is good for true vibe coding where I just want to explore an idea and throw away the code. It is still annoying though as it takes so long to do things - ruining any kind of flow state you may have. I am conversing with ChatGPT directly much more often.

I haven't tried Claud code yet however. Maybe that approach is more on point.

eleveriven

8 months ago

Totally agree with "vibe debt". Letting an LLM off-leash without checks is a fast track to spaghetti. But with tests, clear prompts, and some light editing, I’ve shipped a lot of real stuff faster than I could have otherwise.

throwawayffffas

8 months ago

I generally agree with the attitude of the original post as well. But I stick one one point. It definitely doesn't cost 20 dollars a month, cursor.ai might and I don't know how good it is, but claude code costs hundreds of dollars a month, still cheaper than a junior dev though.

munificent

8 months ago

> Did Photoshop kill graphic artists? Did film kill theatre?

To a first approximation, the answer to both of these is "yes".

There is still a lot of graphic design work out there (though generative AI will be sucking the marrow out of it soon), but far less than there used to be before the desktop publishing revolution. And the kind of work changed. If "graphic design" to you meant sitting at a drafting table with pencil and paper, those jobs largely evaporated. If that was a kind of work that was rewarding and meaningful to you, that option was removed for you.

Theatre even more so. Yes, there are still some theatres. But the number of people who get to work in theatrical acting, set design, costuming, etc. is a tiny tiny fraction of what it used to be. And those people are barely scraping together a living, and usually working side jobs just to pay their bills.

> it feels a bit like mourning the loss of punch cards when terminals showed up.

I think people deserve the right to mourn the loss of experiences that are meaningful and enjoyable to them, even if those experiences turn out to no longer be maximally economically efficient according to the Great Capitalistic Moral Code.

Does it mean that we should preserve antiquated jobs and suffer the societal effects of inefficiency without bound? Probably not.

But we should remember that the ultimate goal of the economic system is to enable people to live with meaning and dignity. Efficiency is a means to that end.

throw310822

8 months ago

> Did Photoshop kill graphic artists?

No, but AI did.

didibus

8 months ago

I agree with the potential of AI. I use it daily for coding and other tasks. However, there are two fundamental issues that make this different from the Photoshop comparison.

The models are trained primarily on copyrighted material and code written by the very professionals who now must "upskill" to remain relevant. This raises complex questions about compensation and ownership that didn't exist with traditional tools. Even if current laws permit it, the ethical implications are different from Photoshop-like tools.

Previous innovations created new mediums and opportunities. Photoshop didn't replace artists, because it enabled new art forms. Film reduced theater jobs but created an entirely new industry where skills could mostly transfer. Manufacturing automation made products like cars accessible to everyone.

AI is fundamentally different. It's designed to produce identical output to human workers, just more cheaply and/or faster. Instead of creating new possibilities, it's primarily focused on substitution. Say AI could eliminate 20% of coding jobs and reduce wages by 30%:

    * Unlike previous innovations, this won't make software more accessible
    * Software already scales essentially for free (build once, used by many)
    * Most consumer software is already free (ad-supported)
The primary outcome appears to be increased profit margins rather than societal advancement. While previous technological revolutions created new industries and democratized access, AI seems focused on optimizing existing processes without providing comparable societal benefits.

This isn't an argument against progress, but we should be clear-eyed about how this transition differs from historical parallels, and why it might not repeat the same historical outcomes. I'm not claiming this will be the case, but that you can see some pretty significant differences for why you might be skeptical that the same creation of new jobs, or improvement to human lifestyle/capabilities will emerge as with say Film or Photoshop.

AI can also be used to achieve things we could not do without, that's the good use of AI, things like Cancer detection, self-driving cars, and so on. I'm speaking specifically of the use of AI to automate and reduce the cost/speed of white collar work like software development.

whazor

8 months ago

The key is that manual coding for a normal task takes a one/two weeks, where-as if you configure all your prompts/agents correctly you could do it in a couple of hours. As you highlighted, it brings many new issues (code quality, lack of tests, tech debt) and you need to carefully create prompts and review the code to tackle those. But in the end, you can save significant time.

hiddenfinance

8 months ago

The question is can I self-host this "mech suit"? If not, I would much not use some API hosted by another party.

Saas just seems very much like a terminator seed situation in the end.

dogcomplex

8 months ago

"Mech suit" is apt. Gonna use that now.

Having plenty of initial discussion and distilling that into requirements documents aimed for modularized components which can all be easily tackled separately is key.

Jordanpomeroy

8 months ago

This is my experience as well.

I’d add that Excel didn’t kill the engineering field. It made them more effective and maybe companies will need less of them. But it also means more startups and smaller shops can make use of an engineer. The change is hard and an equilibrium will be reached.

giancarlostoro

8 months ago

> Then something shifted. I started experimenting. I stopped giving it orders and began using it more like a virtual rubber duck. That made a huge difference.

This is how I use it mostly. I also use it for boilerplate, like "What would a database model look like that handles the following" you never want it to do everything, though there are tools that can and will and they're impressive, but then when you have a true production issue, your inability to quickly respond will be a barrier.

conradev

8 months ago

I’m learning live how to use these things better, and I haven’t seen practical guides like:

- Split things into small files, today’s model harnesses struggle with massive files

- Write lots of tests. When the language model messes up the code (it will), it can use the tests to climb out. Tests are the best way to communicate behavior.

- Write guides and documentation for complex tasks in complex codebases. Use a language model for the first pass if you’re too lazy. Useful for both humans and LLMs

It’s really: make your codebase welcoming for junior engineers

H1Supreme

8 months ago

> Did Photoshop kill graphic artists?

Desktop publication software killed many jobs. I worked for a publication where I had colleagues that used to typeset, place images, and use a camera to build pages by hand. That required a team of people. Once Quark Xpress and the like hit the scene, one person could do it all, faster.

In terms of illustration, the tools moved from pen and paper to Adobe Illustrator and Aldus / Macromedia Freehand. Which I'd argue was more of a sideways move. You still needed an illustrators skillset to use these tools.

The difference between what I just described and LLM image generation is the tooling changed to streamline an existing skillset. LLM's replace all of it. Just type something and here's your picture. No art / design skill necessary. Obviously, there's no guarantee that the LLM generated image will be any good. So, I'm not sure the Photoshop analogy works here.

timcobb

8 months ago

> Did film kill theatre?

Relatively speaking, I would say that film and TV did kill theater

richardw

8 months ago

Photoshop etc are still just tools. They can’t beat us at what has always set us apart: thinking. LLM’s are the closest, and while they’re not close they’re directionally correct. They’re general purpose, not like chess engines. And they improve. It’s hard to predict a year out, never mind ten.

MattGrommes

8 months ago

I agree, this article is basically what I've been thinking as I play with these things over time. They've gotten a ton better but the hot takes are still from 6-12 months ago.

One thing I wish he would have talked about though is maintenance. My only real qualm with my LLM agent buddy is the tendency to just keep adding code if the first pass didn't work. Eventually, it works, sometimes with my manual help. But the resulting code is harder to read and reason about, which makes maintenance and adding features or behavior changes harder. Until you're ready to just hand off the code to the LLM and not do your own changes to it, it's definitely something to keep in mind at minimum.

jlaternman

8 months ago

Yes! It needs and seems to want the human to be a deep collaborator. If you take that approach, it is actually a second senior developer you can work with. You need to push it, and explain the complexities in detail to get fuller rewards. And get it to document everything important it learns from each session's context. It wants to collaborate to make you a 10X coder, not to do your work for you while you laze. That is the biggest breakthrough I have found. They basically react like human brains, with the same kind of motives. Their output can vary dramatically based on the input you provide.

timeon

8 months ago

> Did Photoshop kill graphic artists? Did film kill theatre? Not really. Things changed, sure. Was it “better”?

My obligatory comment how analogies are not good for arguments: there is already discussion here that film (etc.) may have killed theatre.

sim7c00

8 months ago

i love your views and way to express it, spot on. i feel similar in some ways. i hated ai, loved ai, hated it again and love it again. i still feel the code i unusable for my main problems, but i realize better its my arrogance that causes it. i cant formulate solutions eloquently enough and blame the AI for bad code.

AI has helped me pick up my pencil and paper again and realize my flawed knowledge, skills, and even flawed approach to AI.

Now i instructed it to never give me code :). not because the code is bad, but my attempts to extract code from it are more based in laziness than efficiency. they are easy to confuse afterall ;(....

I have tons of fun learning with AI, exploring. going on adventures into new topics. Then when i want to really do something, i try to use it for the things i know i am bad at due to laziness, not lack of knowledge. the thing i fell for first...

it helps me explore a space, then i think or am inspired for some creation, and it helps me structure and plan. when i ask it from laziness to give me the code, it helps me overcome my laziness by explaining what i need to do to be able to see why asking for the code was the wrong approach in the first place.

now, that might be different for you. but i have learned i am not some god tier hacker from the spawl, so i realized i need to learn and get better. perhaps you are at the level you can ask it for code and it just works. hats off in that case ;k (i do hope you tested well!)

caycep

8 months ago

I think also the key is - don't call it AI, because it's not. It's LLM assist query parsing and code generation. Semantically, if you call it AI, the public expects a cognitive equivalent to a human which this is not, and from what @tptacek describes, is not meant to be - the reasoning and other code bits to create agents and such seem to be developed specifically for code generation and programming assist and other tasks thereof. Viewed in that lens, the article is correct - it is by all means a major step forward.

notindexed

8 months ago

The irony of the ChatGPT em dashes ;3

bytesandbots

8 months ago

I am pretty sure this comment is also AI generated. Just a guess but so many em-dash is suspicious. And the overall structure of convincing feels uncanny.

If this is true, can you share your initial draft that you asked the AI to rewrite. Am I not right that the initial draft is more concise and better conveys your actual thought, even though it's not as much convincing.

user

8 months ago

[deleted]

billy99k

8 months ago

I use LLMs daily. From helping me write technical reports (not 100%, mostly making things sound better after I have a first draft) to mapping APIs (documentation, etc).

I can only imagine what this technology will be like in 10 years. But I do know that it's not going anywhere and it's best to get familiar with it now.

taylodl

8 months ago

I treat AI as my digital partner in pair programming. I've learned how to give it specific and well-defined tasks to do, and it gets it done. The narrower the scope and more specific the task then the more successful you'll have.

nipah

8 months ago

> What’s clear is this tech is here now, and complaining about it feels a bit like mourning the loss of punch cards when terminals showed up.

Just stop with this, it's bulshitty. There's nothing related between LLMs and the migration from punch cards to terminals, nor to photoshop compared to film theatre, literally [nothing]. This is a pretty underwelming way of trying to say people that are critiques of this are akin to nostalgic people that "miss the old good days", when there are more than enough pertinent reasons to disagree with this tech in this case. Basically calling opposing people irrational.

I'm not talking about doom or software dev dying or any bullshit like that, I'm just saying this kind of point you make in the end is not reasonable.

brianjking

8 months ago

Love all of this.

Most importantly, I'll embrace the change and hope for the possible abundance.

user

8 months ago

[deleted]

beloch

8 months ago

LLM's are self-limiting, rather than self-reinforcing, and that's the big reason why they're not the thing, both good or bad, that some people think they are.

"Garbage in, garbage out", is still the rule for LLM's. If you don't spend billions training them or if you let them feed on their own tail too much they produce nonsense. e.g. Some LLM's currently produce better general search results than google. This is mainly a product of many billions being spent on expert trainers for those LLM's, while google neglects (or actively enshitifies) their search algorithms shamefully. It's humans, not LLM's, producing these results. How good will LLM's be at search once the money has moved somewhere else and neglect sets in?

LLM's aren't going to take everyone's jobs and trigger a singularity precisely because they fall apart if they try to feed on their own output. They need human input at every stage. They are going to take some people's jobs and create new ones for others, although it will probably be more of the former than the latter, or billionaires wouldn't be betting on them.

ljsprague

8 months ago

Yes, film killed theatre.

0points

8 months ago

> Then I actually read the code.

This is my experience in general. People seem to be impressed by the LLM output until they actually comprehend it.

The fastest way to have someone break out of this illusion is tell them to chat with the LLM about their own expertise. They will quickly start to notice errors in the output.

dcow

8 months ago

[flagged]

cesarb

8 months ago

This article does not touch on the thing which worries me the most with respect to LLMs: the dependence.

Unless you can run the LLM locally, on a computer you own, you are now completely dependent on a remote centralized system to do your work. Whoever controls that system can arbitrarily raise the prices, subtly manipulate the outputs, store and do anything they want with the inputs, or even suddenly cease to operate. And since, according to this article, only the latest and greatest LLM is acceptable (and I've seen that exact same argument six months ago), running locally is not viable (I've seen, in a recent discussion, someone mention a home server with something like 384G of RAM just to run one LLM locally).

To those of us who like Free Software because of the freedom it gives us, this is a severe regression.

aaron_m04

8 months ago

Yes, and it's even worse: if you think LLMs may possibly make the world a worse place, you should not use any LLMs you aren't self-hosting, because your usage information is being used by the creators to make LLMs better.

eleveriven

8 months ago

It's also why local models, even if less powerful, are so important. The gap between "state of the art" and "good enough for a lot of workflows" is narrowing fast

dabockster

8 months ago

You can get 90%+ of the way there with a tiny “coder” LLM running on the Ollama backend with an extension like RooCode and a ton of MCP tools.

In fact, MCP is so ground breaking that I consider it to be the actual meat and potatoes of coding AIs. Large models are too monolithic, and knowledge is forever changing. Better just to use a small 14b model (or even 8b in some cases!) with some MCP search tools, a good knowledge graph for memory, and a decent front end for everything. Let it teach itself based on the current context.

And all of that can run on an off the shelf $1k gaming computer from Costco. It’ll be super slow compared to a cloud system (like HDD vs SSD levels of slowness), but it will run in the first place and you’ll get *something* out of it.

underdeserver

8 months ago

You can also make this argument to varying degrees about your internet connection, cloud provider, OS vendor, etc.

0j

8 months ago

I don't feel like being dependent on LLM coding tools is much of an issue, you can very easily switch between different vendors. And I hope that open weight models will be "good enough" until we get a monopoly. In any case, even if you are afraid of getting too dependent on AI tools, I think everyone needs to stay up to date on what is happening. Things are changing very quickly right now, so no matter what argument you may have against LLMs, it may just not be valid any more in a few months

rsanheim

8 months ago

We will have the equivalent of Claude Sonnet 4 in a local LLM that can run well on a modern Mac w/ 36+ GB of ram in a year or two. Maybe faster. The local/open models are developing very fast in terms of quantization and how well they can run on consumer hardware.

Folks that are local LLMs everyday now will probably say you can basically emulate at least Sonnet 3.7 for coding if you have an real AI workstation. Which may be true, but the time and effort and cost involved is substantial.

underdeserver

8 months ago

Good thing it's a competitive market with at least 5 serious, independent players.

rvnx

8 months ago

With the Mac Studio you get 512 GB of unified memory (shared between CPU and GPU), this is enough to run some exciting models.

In 20 years, memory has doubled 32x

It means that we could have 16 TB memory computers in 2045.

It can unlock a lot of possibilities. If even 1 TB is not enough by then (better architecture, more compact representation of data, etc).

Hilift

8 months ago

That's going full speed ahead though. Every major cloud provider has an AI offering, and there are now multiple AI-centric cloud providers. There is a lot of money and speculation. Now Nvidia has their own cloud offering that "democratize access to world-class AI infrastructure. Sovereign AI initiatives require a new standard for transparency and performance".

amadeuspagel

8 months ago

I can't run google on my computer on my own, but I'm totally dependent on it.

79a6ed87

8 months ago

>To those of us who like Free Software because of the freedom it gives us, this is a severe regression.

It's fair to be worried about depending on LLM. But I find the dependance on things like AWS or Azure more problematic, if we are talking about centralized and proprietary

Aeolun

8 months ago

It's not like the code is suddenly elsewhere right? If the LLM disappears I'll be annoyed, not helpless.

keutoi

8 months ago

I think the same argument could be made about search engines. Most people are not too worried about them.

marcofloriano

8 months ago

Best observation so far. Specially the cost side of using all those APIs ... i pay in dollars, but earn in reais (brazil), the cost scares me.

benced

8 months ago

You can run LLMs locally pretty easily, especially if you have a Mac (the unified memory architecture of Macs is really good at this). It's a niche thing but caring about Free Software is niche.

rco8786

8 months ago

> Unless you can run the LLM locally, on a computer you own, you are now completely dependent on a remote centralized system to do your work.

To be fair, the entire internet is basically this already.

sanex

8 months ago

You think an LLM provider has a bigger moat than an IDE (say pre vs code for a better parallel). MSDN and Jetbrains licenses are far more expensive than Cursor or Windsurf.

nkotov

8 months ago

The truth is that majority of people do not care about this. It's why AWS exists. It's why Fly.io exists.

ImaCake

8 months ago

>the dependence.

Sure, but that is not the point of the article. LLMs are useful. The fact that you are dependent on someone else is a different problem like being dependent on microsoft for your office suite.

Flemlo

8 months ago

I think 384gb of ram is surprisingly reasonable tbh.

200-300$/month are already 7k in 3 years.

And I do expect some hardware chip based models in a few years like a GPU.

AiPU we're you can replace the hardware ai chip.

imhoguy

8 months ago

Even FOSS-based development depends on walled gardens, it is evident every time when GitHub is down.

peab

8 months ago

do you use GitHub? Vs code? GCP or AWS? The internet, perhaps?All work is dependent on other services, that's the modern world

mrheosuper

8 months ago

I disagree.

Self-hosting has always have a lot of drawbacks compared with commercial solutions. I bet my self-host file server has worse reliability than Google Drive, or my self-host git server has worse number of concurrent user than github.

It's one thing you must accept when self-host.

So when you self-host LLM, you must either accept a drop in output quality, or spend a small fortune on hardware

wiseowise

8 months ago

Wake up, you’re already dependent on everything, unless you stick exclusively to Python std and no outside batteries.

Maven central is gone and you have no proxy setup or your local cache is busted? Poof, you’re fucking gone, all your Springs, Daggers, Quarkuses and every third party crap that makes up your program is gone. Same applies to bazillion JS, Rust libraries.

gdubs

8 months ago

One thing that I find truly amazing is just the simple fact that you can now be fuzzy with the input you give a computer, and get something meaningful in return. Like, as someone who grew up learning to code in the 90s it always seemed like science fiction that we'd get to a point where you could give a computer some vague human level instructions and get it more or less do what you want.

forgotoldacc

8 months ago

There's the old quote from Babbage:

> On two occasions I have been asked, 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.

This has been an obviously absurd question for two centuries now. Turns out the people asking that question were just visionaries ahead of their time.

It is kind of impressive how I'll ask for some code in the dumbest, vaguest, sometimes even wrong way, but so long as I have the proper context built up, I can get something pretty close to what I actually wanted. Though I still have problems where I can ask as precisely as possible and get things not even close to what I'm looking for.

csallen

8 months ago

It's mind blowing. At least 1-2x/week I find myself shocked that this is the reality we live in

coliveira

8 months ago

Sure, you can now be fuzzy with the input you give to computers, but in return the computer will ALSO be fuzzy with the answer it gives back. That's the drawback of modern AI.

jiggawatts

8 months ago

You can be fuzzier than a soft fluff of cotton wool. I’ve had incredible success trying to find the name of an old TV show or specific episode using AIs. The hit rate is surprisingly good even when using the vaguest inputs.

“You know, that show in the 80s or 90s… maybe 2000s with the people that… did things and maybe didn’t do things.”

“You might be thinking of episode 11 of season 4 of such and such snow where a key plot element was both doing and not doing things on the penalty of death”

bityard

8 months ago

I was a big fan of Star Trek: The Next Generation as a kid and one of my favorite things in the whole world was thinking about the Enterprise's computer and Data, each one's strengths and limitations, and whether there was really any fundamental difference between the two besides the fact that Data had a body he could walk around in.

The Enterprise computer was (usually) portrayed as fairly close to what we have now with today's "AI": it could synthesize, analyze, and summarize the entirety of Federation knowledge and perform actions on behalf of the user. This is what we are using LLMs for now. In general, the shipboard computer didn't hallucinate except during most of the numerous holodeck episodes. It could rewrite portions of its own code when the plot demanded it.

Data had, in theory, a personality. But that personality was basically, "acting like a pedantic robot." We are told he is able to grow intellectually and acquire skills, but with perfect memory and fine motor control, he can already basically "do" any human endeavor with a few milliseconds of research. Although things involving human emotion (art, comedy, love) he is pretty bad at and has to settle for sampling, distilling, and imitating thousands to millions of examples of human creation. (Not unlike "AI" art of today.)

Side notes about some of the dodgy writing:

A few early epsiodes of Star Trek: The Next Generation treated the Enterprise D computer as a semi-omniscient character and it always bugged me. Because it seemed to "know" things that it shouldn't and draw conclusions that it really shouldn't have been able to. "Hey computer, we're all about to die, solve the plot for us so we make it to next week's episode!" Thankfully someone got the memo and that only happened a few times. Although I always enjoyed episodes that centered around the ship or crew itself somehow instead of just another run-in with aliens.

The writers were always adamant that Data had no emotions (when not fitted with the emotion chip) but we heard him say things _all the time_ that were rooted in emotion, they were just not particularly strong emotions. And he claimed to not grasp humor, but quite often made faces reflecting the mood of the room or indicating he understood jokes made by other crew members.

d_burfoot

8 months ago

It's a radical change in human/computer interface. Now, for many applications, it is much better to present the user with a simple chat window and allow them to type natural language into it, rather than ask them to learn a complex UI. I want to be able to say "Delete all the screenshots on my Desktop", instead of going into a terminal and typing "rm ~/Desktop/*.png".

Velorivox

8 months ago

For me this moment came when Google calendar first let you enter fuzzy text to get calendar events added, this was around 2011, I think. In any case, for the end user this can be made to happen even when the computer cannot actually handle fuzzy inputs (which is of course, how an LLM works).

The big change with LLMs seems to be that everyone now has an opinion on what programming/AI is and can do. I remember people behaving like that around stocks not that long ago…

cosmic_cheese

8 months ago

Though I haven’t embraced LLM codegen (except for non-functional filler/test data), the fuzziness is why I like to use them as talking documentation. It makes for a lot less of fumbling around in the dark trying to figure out the magic combination of search keywords to surface the information needed, which can save a lot of time in aggregate.

wvenable

8 months ago

I literally pasted these two lines into ChatGPT that were sent to me by one of sysadmin and it told me exactly what I needed to know:

    App1: requestedAccessTokenVersion": null
    App2: requestedAccessTokenVersion": 2
I use it like that all time. In fact, I'm starting to give it less and less context and just toss stuff at it. It's more efficient use of my time.

vb-8448

8 months ago

In my opinion, most of the problems we see now with LLMs come from being fuzzy ... I'm used to getting very good code from claude o gemini (copy and paste without any changes that just works) but I have to be very specific, sometime it takes longer to write the prompt than writing the code itself.

If I'm fuzzy, the output quality is usually low and I need several iterations before getting an acceptable result.

At some point, in the future, there will be some kind of formalization on how to ask swe question to llms ... and we will get another programming language to rule the all :D

rullelito

8 months ago

To me this is the best thing about LLMs.

jumploops

8 months ago

Computers finally work they way they were always supposed to work :)

grishka

8 months ago

But when I'm doing my job as a software developer, I don't want to be fuzzy. I want to be exact at telling the computer what to do, and for that, the most efficient way is still a programming language, not English. The only place where LLMs are an improvement is voice assistants. But voice assistants themselves are rather niche.

Barrin92

8 months ago

>simple fact that you can now be fuzzy with the input you give a computer, and get something meaningful in return

I got into this profession precisely because I wanted to give precise instructions to a machine and get exactly what I want. Worth reading Dijkstra, who anticipated this, and the foolishness of it, half a century ago

"Instead of regarding the obligation to use formal symbols as a burden, we should regard the convenience of using them as a privilege: thanks to them, school children can learn to do what in earlier days only genius could achieve. (This was evidently not understood by the author that wrote —in 1977— in the preface of a technical report that "even the standard symbols used for logical connectives have been avoided for the sake of clarity". The occurrence of that sentence suggests that the author's misunderstanding is not confined to him alone.) When all is said and told, the "naturalness" with which we use our native tongues boils down to the ease with which we can use them for making statements the nonsense of which is not obvious.[...]

It may be illuminating to try to imagine what would have happened if, right from the start our native tongue would have been the only vehicle for the input into and the output from our information processing equipment. My considered guess is that history would, in a sense, have repeated itself, and that computer science would consist mainly of the indeed black art how to bootstrap from there to a sufficiently well-defined formal system. We would need all the intellect in the world to get the interface narrow enough to be usable"

Welcome to prompt engineering and vibe coding in 2025, where you have to argue with your computer to produce a formal language, that we invented in the first place so as to not have to argue in imprecise language

https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667...

progval

8 months ago

The other side of the coin is that if you give it a precise input, it will fuzzily interpret it as something else that is easier to solve.

few

8 months ago

>On two occasions, I have been asked [by members of Parliament], 'Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?' I am not able to rightly apprehend the kind of confusion of ideas that could provoke such a question. - Charles Babbage

This quote did not age well

dogcomplex

8 months ago

If anything we now need to unlearn the rigidity - being too formal can make the AI overly focused on certain aspects, and is in general poor UX. You can always tell legacy man-made code because it is extremely inflexible and requires the user to know terminology and usage implicitly lest it break, hard.

For once, as developers we are actually using computers how normal people always wished they worked and were turned away frustratedly. We now need to blend our precise formal approach with these capabilities to make it all actually work the way it always should have.

jhancock

8 months ago

I'm not a skeptic, but I keep LLMs on a short leash.

This is a thoughtful article. Thanks `tptacek

My LLM use is: 1 - tedious stuff; web pages interacting with domain back end. 2 - domain discovery.

In a recent adventure, I used Claude 4 to tease out parameters in a large graph schema. This is a combination of tedium and domain discovery (it's not my graph and I'm not a domain expert). In the first day, Claude uncovered attributes and relations no other LLM or Google search uncovered. And it worked!! The next day, I allowed it to continue. After a bit, results didn't pass the sniff test.

I checked into details of Claude's thinking: it decided to start making up schema attributes and inventing fallback queries on error with more made up attributes. It was "conscious" of its decision to do so. By the time I caught this, Claude had polluted quite a bit of code. Sure, plenty of well placed git commits helped in rolling back code...but it's not quite that simple..over the many git commits were sprinkled plenty of learnings I don't want to toss. It took another two days of carefully going through the code to pull out the good stuff and then roll things back. So now I'm at day five of this adventure with cleaned up code and notes on what we learned.

I suspect continual improvements on tooling will help. Until then, it's a short leash.

wraptile

8 months ago

Domain discovery is so underrated. LLMs remove so much friction that makes everything so incredibly accessible.

If LLMs couldn't do anything else then that alone would still warrant an invention of a century sticker.

lechatonnoir

8 months ago

One question is whether, even after all that backpedaling, you feel you could've achieved the same or a similar result in those five days. My findings have been that it's a net plus for productivity, but I'm a bit less sure whether I prefer the way work feels when a lot of it is just going back and cleaning up after the growth. (Of course, that sounds like a familiar statement for a lot of engineers before LLMs, too.)

bherms

8 months ago

Yeah I'm impressed with its ability to do stuff, but not quite with its results. We have been working on more AI assistance adoption so I asked it to do some decently complex things with json/yml schema definitions and validations (outside the typical json schema we wanted things like conditional validation, etc)... It wrote a LOT of code and took a long time, and kept telling me it would work, and it didn't. I finally stepped in and eliminated roughly 75% of the code in about 10 minutes and got it working. It's great at tedious stuff, but outside of that, I'm skeptical.

ChrisMarshallNY

8 months ago

I use AI every day, basically as a "pair coder."

I used it about 15 minutes ago, to help me diagnose a UI issue I was having. It gave me an answer that I would have figured out, in about 30 minutes, in about 30 seconds. My coding style (large files, with multiple classes, well-documented) works well for AI. I can literally dump the entire file into the prompt, and it can scan it in milliseconds.

I also use it to help me learn about new stuff, and the "proper" way to do things.

Basically, what I used to use StackOverflow for, but without the sneering, and much faster turnaround. I'm not afraid to ask "stupid" questions -That is critical.

Like SO, I have to take what it gives me, with a grain of salt. It's usually too verbose, and doesn't always match my style, so I end up doing a lot of refactoring. It can also give rather "naive" answers, that I can refine. The important thing, is that I usually get something that works, so I can walk it back, and figure out a better way.

I also won't add code to my project, that I don't understand, and the refactoring helps me, there.

I have found the best help comes from ChatGPT. I heard that Claude was supposed to be better, but I haven't seen that.

I don't use agents. I've not really ever found automated pipelines to be useful, in my case, and that's sort of what agents would do for me. I may change my mind on that, as I learn more.

yeahwhatever10

8 months ago

I use it as a SO stand in as well.

What I like about Chatbots vs SO is the ability to keep a running conversation instead of 3+ tabs and tuning the specificity toward my problem.

I've also noticed that if I look up my same question on SO I often find the source code the LLM copied. My fear is that if chatbots kill SO where will the LLM's copied code come from in the future?

kamaal

8 months ago

>>I'm not afraid to ask "stupid" questions -That is critical.

AI won't judge and shame you in front of the whole world, for asking stupid questions, or not RTFM'ing well enought, like Stackoverflow users do. Nor will it tell you, your questions are irrelevant.

I think this is the most killer AI feature ever.

eleveriven

8 months ago

Agree on the verbosity and occasional naivety. But the fact that it gives working starting points is what really moves the needle. It gets me unstuck faster, and I still get to do the creative, architectural stuff

jandrewrogers

8 months ago

The reaction to this article is interesting. I have found AI to be useful in software contexts that most people never exercise or expect based on their intuitions of what an LLM can do.

For me, a highly productive but boring use of LLMs for code is that they excel at providing midwit “best practice” solutions to common problems. They are better documentation than the documentation and can do a lot of leg work e.g. Linux syscall implementation details. My application domains tend to require more sophisticated solutions than an LLM can provide but they still save a lot of rote effort. A lot of software development exists almost entirely in the midwit zone.

Much more interesting, they are decent at reducing concepts in literature to code practice for which there are no code examples. Google and StackOverflow turn up nothing. For example, I’ve found them useful for generating specialized implementations of non-Euclidean computational geometry algorithms that don’t really exist in the wild that I’ve ever seen. This is a big win, it literally turns months of effort into hours of effort.

On the other hand, I do a lot of work with algorithms that don’t exist in literature, never mind public code, with extremely performance-engineered implementations. There is an important take away from this too: LLMs are hilariously bad at helping with this but so are human software developers if required to do the same thing with no context.

Knowledge for which there is little or no training data is currently a formidable moat, both for LLMs and humans.

joshvm

8 months ago

I agree on the distillation step. They're very good at identifying what problem you're trying to solve, especially if you don't have much experience in the domain. I've found ChatGPT great for figuring out problems involving combinatorics. And then you can be canny and ask the LLM to write the next prompt to get some boilerplate code. I like to do this with ChatGPT 4.5 (heavily rate limited) targeting 4o.

Getting good code is still a pain with chat, but you can go a fair way by reducing the context as much as possible and only asking for core functions (no point wasting hundreds of tokens on an arg parser). I'd like to play with Cursor or Zed a bit more.

Debugging sometimes works. 4.5 often figures out errors in one, 4o often struggles and spits out suggestions like it's a customer support agent (it also falls into repetition fairly often if you tell it "no, so what else could it be?"). You really have to work to convince it up front that you're not an idiot.

eleveriven

8 months ago

The moat isn't intelligence, it's context

hatthew

8 months ago

What? This is exactly what I would expect an LLM to be good at. Stack Overflow gives common solutions to common problems. LLMs give niche solutions to problems that aren't common enough for extensive discussion, but are still already solved if you find the right repository or study the documentation thoroughly.

Neither helps with the hardest and most time consuming problems faced by software engineers: solving problems that have never been (publicly) solved before, making hard decisions based on intuition about what will be necessary in the future, understanding the interactions between broad webs of dependency in large codebases, and working with proprietary domain knowledge.

pera

8 months ago

It's fascinating how over the past year we have had almost daily posts like this one, yet from the outside everything looks exactly the same, isn't that very weird?

Why haven't we seen an explosion of new start-ups, products or features? Why do we still see hundreds of bug tickets on every issue tracking page? Have you noticed anything different on any changelog?

I invite tptacek, or any other chatbot enthusiast around, to publish project metrics and show some actual numbers.

simonw

8 months ago

"Why haven't we seen an explosion of new start-ups, products or features?"

You're posting this question on a forum hosted by YC. Here's a story from March 2024: "YC’s latest W24 batch includes 240 companies. A significant portion of the companies have some AI component, with 63% tagged as “Artificial Intelligence” — a notable increase from 51% in the preceding S23 batch and 29% before that.". https://jamesin.substack.com/p/analysis-of-ycs-latest-w24-ba...

I've not seen the same analysis for more recent batches.

kubb

8 months ago

Most likely there’s a slight productivity increase.

The enthusiasts have a cognitive dissonance because they are pretty sure this is huge and we’re living in the future, so they go through various denial strategies when the execs ask them where the money is.

In this case it’s blame. These darned skeptics are ruining it for everyone.

aerhardt

8 months ago

This is an important question. The skepticism tracks with my personal experience - I feel 10-20% more productive but certainly not 5x when measured over a long period of time (say, the last 6 months or more)

I’m nonetheless willing to be patient and see how it plays out. If I’m skeptical about some grandiose claims I must also be equally skeptical and accepting about the possibility of large scale effects happening but not being apparent to me yet.

knallfrosch

8 months ago

> Why haven't we seen an explosion of new start-ups, products or features? Why do we still see hundreds of bug tickets on every issue tracking page? Have you noticed anything different on any changelog?

In my personal experience (LLM and code suggestion only) it's because I use LLMs to code unimportant stuff. Actually thinking what I want to do with the business code is exhausting and I'd rather play a little with a fun project. Also, the unit tests that LLMs can now write (and which were too expensive to write myself) were never important to begin with.

xk_id

8 months ago

Simply put, if we’re living during such a major technological revolution, why does using software suck in such disastrous ways that were unthinkable even ten years ago?

deadmanku

8 months ago

Your argument relies on the idea of an "actual product", what is happening—and I’m seeing it firsthand both in my company’s codebase and in my personal projects—is that AI is contributing more and more to product development. If this trend continues, we may reach a point where 90% of a product is written by AI.

At that stage, the real value will lie in the remaining 10%—the part that requires human judgment, creativity, or architectural thinking. The rest will be seen as routine: simple instructions, redundant CRUD operations, boilerplate, and glue code.

If we focus only on the end result, human will inevitably write less code overall. And writing less code means fewer programming jobs.

tiborsaas

8 months ago

Maybe because these companies are smaller and fly under the radar. They require less funding team size is small, probably bankrolled by the founders.

At least that's what I do and what I see among friends.

abe94

8 months ago

i don't know - I agree we haven't seen changes to our built environment, but as for an "explosion of new start-ups, products" we sort of are seeing that?

I see new AI assisted products everyday, and a lot of them have real usage. Beyond the code-assistants/gen companies which are very real examples, here's an anecdote.

I was thinking of writing a new story, and found http://sudowrite.com/ via an ad, an ai assistant for helping you write, its already used by a ton of journalists and serious writers, and am trying it out.

Then i wanted to plan a trip - tried google but saw nothing useful, and then asked chatgpt and now have a clear plan

danShumway

8 months ago

So as an example of what this could look like that would be convincing to me. I started out pretty firmly believing that Rust was a fad.

Then Mozilla and Google did things with it that I did not think were possible for them to do. Not "they wrote a bunch of code with it", stuff like "they eliminated an entire class of bugs from a section of their codebase."

Then I watched a bunch of essentially hobby developers write kernel drivers for brand new architecture, and watched them turn brand new Macbooks into one of the best-in-class ways to run Linux. I do not believe they could have done that with their resources at that speed, using C or C++.

And at that point, you kind of begrudgingly say, "okay, I don't know if I like this, but fine, heck you, whatever. I guess it might genuinely redefine some parts of software development, you win."

So this is not impossible. You can convince devs like me that your tools are real and they work.

And frankly, there are a billion problems in modern computing that are high impact - stuff like Gnome accessibility, competitive browser engines, FOSS UX, collaboration tools. Entire demographics who have serious problems that could be solved by software if there was enough expertise and time and there were resources to solve them. Often, the issue at play is that there is no intersection between people who are very well acquainted with those communities and understand their needs, and people who have experience writing software.

In theory, LLMs help solve this. In theory. If you're a good programmer, and suddenly you have a tool that makes you 4x as productive as a developer: you could have a very serious impact on a lot of communities right now. I have not seen it happen. Not in the enterprise world, but also not in the FOSS world, not in communities with lower technical resources, not in the public sector. And again, I can be convinced by this, I have dismissed tools that I later switched opinions on because I saw the impact and I couldn't ignore the impact: Rust, NodeJS, Flatpak, etc, etc.

The problem is people have been telling me that Coding Assistants (and now Coding Agents) are one of those tools for multiple years now, and I'm still waiting to see the impact. I'm not waiting to see how many companies pick them up, I'm not waiting to see the job market. I'm waiting to see if this means that real stuff starts getting written at a higher quality significantly faster, and I don't see it.

I see a lot of individual devs showing me hobby projects, and a lot of AI startups, and... frankly, not much else.

chinchilla2020

8 months ago

and builder.ai just filed for bankruptcy after a billion dollar valuation. Timely.

tschellenbach

8 months ago

One of our AI enabled internal projects is moving ~135 faster than before. Of course you can't perfectly compare. New framework, better insights, updated libraries etc.

lucasyvas

8 months ago

I’m AI neutral but the writing style here is pretty dismissive, and - to match the tone of the article - annoying as fuck.

Most completely reasonable objections to LLMs were totally dismissed.

metalrain

8 months ago

Seems like very common AI hype post style.

"If you aren't using this AI feature you are left behind."

I usually block people for posting like that.

12_throw_away

8 months ago

Right? It's gripping reading about the author's insecurities, but fails to say anything useful about AI.

lomase

8 months ago

All this smart people is dumber than me.

Anamon

8 months ago

Yeah, this was one of the weakest pieces of writing on GenAI that I've ever read, and I've read a lot of it.

We should flat-out dismiss the issue of licenses and copyright violations because... all developers pirate TV shows?

Seriously... what a load of crap.

Fredkin

8 months ago

My main concern is not even mentioned in this article and there are hardly any comments here addressing it: Privacy / allowing 3rd parties to read and potentially train on your proprietary source code.

I've used LLMs to crank out code for tedious things (like generating C-APIs and calling into poorly documented libraries) but I'm not letting them touch my code until I can run it 100% locally offline. Would love to use the agentic stuff but from what I've heard it's still too slow to run on a high end workstation with a single 4080.

Or have things got better lately, and crucially is there good VisualStudio integration for running local agents / LLMs?

oblio

8 months ago

The problem is, it's like ads. Even if it's a paid subscription, the incentive to hoover up your code, metadata about your code or everything they can get away with is just too strong. I think it will just happen at some point, unless you run them 100% locally or hosted somewhere but self managed.

svachalek

8 months ago

If you're big enough, you pay for on-prem frontier level tools. If not, you can do all right with a good GPU and local model, but it's not the same. And yeah there are plenty of plugins like Continue that support local or on-prem hosted models.

julvo

8 months ago

Do you store code on GitHub? If so, how is GH's guarantee to not use your code different from Cursor's (with privacy mode enabled)?

lubujackson

8 months ago

Cursor has "privacy mode" in Pro mode that supposedly prevents training on your code.

hoofhearted

8 months ago

So would you be interested in a simple serverless service that lets you run LLM’s and is focused on privacy and security first instead of trying to run it on an expensive workstation with a single 4080?

dabockster

8 months ago

> but I'm not letting them touch my code until I can run it 100% locally offline

You can do this already with Ollama, RooCode, and a Docker compatible container engine.

OrangeMusic

8 months ago

Honestly is your code that revolutionary? Let's say I steal it, what can I do with it?

stavros

8 months ago

I love LLMs, and I really like programming with Cursor, but I never managed to get the "agents with tons of stuff in their context" mode to work for me. I use Cursor like a glorified code completer, 4-5 lines at a time, because otherwise the LLM just makes too many mistakes that compound.

If you let it run in the "write my code for me" mode, and ask it to fix some mistake it made, it will always add more code, never remove any. In my experience, in the end the code just ends up so brittle that the LLM will soon get stuck at a point that it never manages to overcome some mistake, no matter how many times it tries.

Has anyone managed to solve this?

jks

8 months ago

Not a full solution, but one thing I've learned not to do is tell Cursor "you got that wrong, fix it like this". Instead, I go back to the previous prompt and click "Restore Checkpoint", edit the prompt and possibly the Cursor rules to steer it in the right direction.

When the model has the wrong solution in its context, it will use it when generating new code, and my feeling is that it doesn't handle the idea of "negative example" very well. Instead, delete the bad code and give it positive examples of the right approach.

csomar

8 months ago

No. And I don't think they are doing anything magical. Performance drop sharply after 50k tokens. Your LLM does best when you have a short 2-5K context.

lubujackson

8 months ago

Make sure you include lots of files of context (including any type definitions!) After a big change before approving any code ask it: "Is this the simplest and cleanest approach?" Usually it will make more revisions and actually produce clean code then. You can also say that in the original prompt, or specify the structure of the change you want it to make.

mikeshi42

8 months ago

imo cursor's small context window on the $20 plan is what kills their agent mode. Try claude code or anything that lets you use larger context windows (I think cursor has a tier you can pay for now?). claude code regularly deletes and corrects code and LLMs are very much capable of that today.

user

8 months ago

[deleted]

__grob

8 months ago

I would love to know as well. I also have problems with the LLM coding agents when it comes to lesser-known languages like Julia. Has anybody solved this yet?

sv0t

8 months ago

in the last two weeks I've started using Cursor in the 'you do everything, I'm just your boss mode', to see how far I can push it. Right at this minute, I'm working on something thats become pretty big but I'm constantly on the verge of just going back to writing code like normal LOL.

That said, I'm super impressed by how quickly I've been able to get this far with something pretty niche and complex in places.

Here's what I've learned. There are million AI Bros on youtube who have the ultimate solution but they all boil down to a few basic things.

Make rules: make them before you get started and continue updating them as you go.

Lots of tiny modules: Push things into small bite sized bits of code with lots of interface documentation. This feels a bit unnatural when the code is prototype quality.

Documentation is key: the youtubers will often create detailed planning and specification documents in advance. I done this and it's hit and miss, what I've found works is explain what you want to build to an llm and have it create extremely concise documentation, then a rough checklist for implementation and then evolving these documents in cursor as I go.

This leads to a kind of plan --> document, implement --> document, run tests --> document workflow on each reasonable chunk of the design being the most smooth.

Don't let cursor ever see inside big datasets or huge folder trees. In fact keep cursor in a few folders writing source code and nothing else. To do this, early on build tools that can go and get information or make safe edits for cursor from those datasets without it attempting direct access.

The current project has a tools for working with the primary datasets, a job manager, a process manager, a log manager, a workflow manager, these all have functions for querying. Cursor is instructed to use these. It naturally doesn't want to but if you tell it 7 times out 10 it will :)

No mess: Cursor will like to make lots of random tests and processes along the way. instruct it to use a /debug/tests/ folder and wipe it clean often. force it to make 'production' code by having it be registered with the workflow manager and made allowable by process manager. This lets it play around for a while and get something up and running with it's weird little scripts and then implement it for real elsewhere and using the proper framework. The workflow manager needs to have documentation on how the script is used and the process manager needs to the source to be in a particular place with a particular set of standard interfaces.

you might say this is a lot of plumbing, but what isn't these days and it's not like I'm maintaining it - right ;)

Cursor is always about to go insane any minute, or can't remember what's going on. So most of it is about keeping things simple enough for it to focus on the bit it's working on and nothing else.

Regularly for work we have massive code bases written in our company style and built using our business processes. This kind of thing is absolutely not the place for Cursor. I can imagine a company setup from scratch to use Cursor but our current products and practices woud just make it impossibly time-consuming.

nitwit005

8 months ago

> Does an intern cost $20/month? Because that’s what Cursor.ai costs.

> Part of being a senior developer is making less-able coders productive, be they fleshly or algebraic. Using agents well is both a both a skill and an engineering project all its own, of prompts, indices, and (especially) tooling. LLMs only produce shitty code if you let them.

A junior developer often has negative value to a team, because they're sapping the time of more senior developers who have to help train them, review code, fix mistakes, etc. It can take a long while to break even.

The raw cost of Cursor's subscription is surely dwarfed by your own efforts, given that description. The actual calculous here should be the cost to corral Cursor, against the value of the code it generated.

fud101

8 months ago

So what is the end game here, we don't have any juniors? That's what we're celebrating? This whole thing makes no damn sense, we're just becoming more efficient at producing bad code at scale, which will be maintained by a workforce that is growing less proficient at that with the increasing adoption of AI - skills will decline and eventually we'll be living with more buggy software, maintained by underpaid, unappreciated and overwhelmed grey beards and it will be too late to turn back.

YmiYugy

8 months ago

I don't think that's necessarily true. Some companies and seniors certainly invest into training and mentoring their juniors and this can take a long time and be expensive. But there are a lot of places offer 3-6 months internships for people that are barely out of high school. Others heavily rely on overseas contractors. So in a lot of scenarios it does seem possible to use less capable labor in a beneficial way for software engineering.

Verdex

8 months ago

Hundreds of comments. Some say LLMs are the future. Others say they don't work today and they won't work tomorrow.

Videogame speed running has this problem solved. Livestream your 10x engineer LLM usage, a git commit annotated with it's prompt per change. Then everyone will see the result.

This doesn't seem like an area of debate. No complicated diagrams required. Just run the experiment and show the result.

M4v3R

8 months ago

I literally do this about twice a week on Twitch. I’m working on some hobby projects, and one constraint I’ve put on myself is to use LLMs for pretty much everything, regardless of whether it saves me time or not. The reason is twofold: I want to learn how to use them efficiently, and I want to constantly test the waters to see where the limits of their capabilities are. On my stream, you can see LLMs fail spectacularly one time and do hours of work in minutes another time.

I’m not alone in this - there are tons of other examples of people showing how they use LLMs online; you just need to search for them.

chinchilla2020

8 months ago

Agreed.

The article provides zero measurement, zero examples, zero numbers.

It's pure conjecture with no data or experiment to back it up. Unfortunately conjecture rises to the top on hackernews. A well built study on LLM effectiveness would fall off the front page quickly.

dbalatero

8 months ago

I'd honestly love to see this.

People always say "you just need to learn to prompt better" without providing any context as to what "better" looks like. (And, presumes that my prompt isn't good enough, which maybe it is maybe it isn't.)

The easy way out of that is "well every scenario is different" - great, show me a bunch of scenarios on a speed run video across many problems, so I can learn by watching.

weddpros

8 months ago

AI Coding is becoming an edge, and sharing your edge isn't the wisest thing to do, even more so when doubt is so prevalent!

pie_flavor

8 months ago

I have one very specific retort to the 'you are still responsible' point. High school kids write lots of notes. The notes frequently never get read, but the performance is worse without them: the act of writing them embeds them into your head. I allegedly know how to use a debugger, but I haven't in years: but for a number I could count on my fingers, nearly every bug report I have gotten I know exactly down to the line of code where it comes from, because I wrote it or something next to it (or can immediately ask someone who probably did). You don't get that with AI. The codebase is always new. Everything must be investigated carefully. When stuff slips through code review, even if it is a mistake you might have made, you would remember that you made it. When humans do not do the work, humans do not accrue the experience. (This may still be a good tradeoff, I haven't run any numbers. But it's not such an obvious tradeoff as TFA implies.)

sublinear

8 months ago

I have to completely agree with this and nobody says this enough.

This tradeoff of unfamiliarity with the codebase is a very well understood problem for decades. Maintaining a project is 99% of the time spent on a successful project.

In my opinion though, having AI write the initial code is just putting most people in a worse situation with almost no upside long term.

skissane

8 months ago

> When stuff slips through code review, even if it is a mistake you might have made, you would remember that you made it.

I don’t know. Ever had the experience of looking at 5+ year old code and thinking “what idiot wrote this crap” and then checking “git blame” and realising “oh, I’m the idiot… why the hell did I do this? struggling to remember” - given enough time, humans start to forget why they did things a certain way… and sometimes the answer is simply “I didn’t know any better at the time, I do now”

> You don't get that with AI. The codebase is always new.

It depends on how you use AI… e.g. I will often ask an AI to write me code to do X because it gets me over the “hump” of getting started… but now this code is in front of me on the screen, I think “I don’t like how this code is written, I’m going to refactor it…” and by the time I’m done it is more my code than the AI’s

SchemaLoad

8 months ago

Similar to almost self driving cars where you are still responsible. You're asking someone to do nothing at all other than being highly alert for long periods of time. That's just not how people work. There is no way someone can be ready to take over in an instant without actively engaging in the driving.

stock_toaster

8 months ago

I read a study[1] (caveat, not peer reviewed yet I don't think?) that seems to imply that you are correct.

  < When using GenAI tools, the effort invested in critical thinking
  < shifts from information gathering to information verification; 
  < from problem-solving to AI response integration; and from task
  < execution to task stewardship.
[1]: https://www.microsoft.com/en-us/research/wp-content/uploads/...

derefr

8 months ago

So do the thing that a student copying their notes from the board does: look at the PR on one monitor, and write your own equivalent PR by typing the changes line-for-line into your IDE on the other. Pretend copy/paste doesn’t exist. Pretend it’s code you saw in a YouTube video of a PowerPoint presentation, or a BASIC listing from one of those 1980s computing magazines.

(And, if you like, do as TFA says and rephrase the code into your own house style as you’re transcribing it. It’ll be better for it, and you’ll be mentally parsing the code you’re copying at a deeper level.)

ezst

8 months ago

> The codebase is always new. Everything must be investigated carefully.

That's dreadful. Not only is familiarity with the code not valued, it is impossible to build for your own sake/sanity.

kubav027

8 months ago

+1

Writing code is easier than long term maintenance. Any programmer is able to write so much code that he will not be able to maintain it. Unless there are good AI tools helping with maintenance there is no point to use generative tools for production code. From my experience AI tools are great for prototyping or optimizing procrastination.

tabletcorry

8 months ago

This level of knowledge is nearly impossible to maintain as the codebase grows though, beyond one or two people at a typical company. And tools need to exist for the new hire as well as the long-standing employee.

xnx

8 months ago

AI tools are enabling the developer to a higher level of abstraction to engineering manager or product manager. Those roles do not need to be familiar with code in that detail.

Mofpofjis

8 months ago

This is it. Reading AI slop does not form synapses in your brain like writing the code yourself does.

user

8 months ago

[deleted]

mgraczyk

8 months ago

The important thing you are missing is that the learning landscape has now changed.

You are now responsible for learning how to use LLMs well. If an untrained vibe coder is more productive for me, while knowing nothing about how the code actually works, I will hire the vibe coder instead of you.

Learning is important, but it's most important that you learn how to use the best tools available so you can be productive. LLMs are not going away and they will only get better, so today that means you are responsible for learning how to use them, and that is already more important for most many roles than learning how to code yourself.

cobertos

8 months ago

It's been so much more rewarding playing with AI coding tools on my own than through the subtle and not so subtle nudges at work. The work AI tools are a walled garden, have a shitty interface, feel made to extract from me than to help me. In my personal stuff, downloading models, playing with them, the tooling, the interactions, it all been so much more rewarding to give me stable comfortable workflows I can rely on and that work with my brain.

The dialog around it is so adversarial it's been hard figuring out how to proceed until dedicating a lot of effort to diving into the field myself, alone, on my personal time and learned what's comfortable to use it on.

j-bos

8 months ago

Exactly, seems much skepticism comes from only scratching the surface of what's possible.

nancyminusone

8 months ago

Title nitpick: The amount is people who care about AI for coding assistance is a relative minority. For everyone else, there's 'AI', which has a huge branding problem. 'AI' is filling all search results with trash, and creating trash websites full of trash to fill up the rest of the search results. It's generating trash images to put at the top of every blog post. It's eating up all the server load with scraping. It's what's been fooling my dad every day on Facebook.

When people are sick of AI, this is what they are talking about. AI hype people ignore this perspective each and every time.

It doesn't matter how great your paper Mill's paper is, if you're dumping PCBs in the river, people are going to quite rightly get pissed off.

mierz00

8 months ago

AI has a huge branding problem on HN but I haven’t found that to be true outside of tech.

Many people are very eager to see how AI can improve their lives.

I’m building a product for accountants that uses AI, initially I avoided using AI as a part of marketing copy. Turns out, people are much more interested when I tell them it uses AI behind the scenes.

user

8 months ago

[deleted]

bigmadshoe

8 months ago

I agree with the main take in this article: the combination of agents + LLMs with large context windows + a large budget of tokens to iterate on problems can probably already yield some impressive results.

I take serious issue with the "but you have no idea what the code is" rebuttal, since it - to me - skims over the single largest issue with applying LLMs anywhere where important decisions will be made based on their outputs.

To quote from the article:

  People complain about LLM-generated code being 
  “probabilistic”. No it isn’t. 
  It’s code. It’s not Yacc output. It’s knowable. The LLM 
  might be stochastic. But the LLM doesn’t matter. What 
  matters is whether you can make sense of the result, and 
  whether your guardrails hold.

  Reading other people’s code is part of the job. If you can’t metabolize the 
  boring, repetitive code an LLM generates: skills issue! How are you handling the 
  chaos human developers turn out on a deadline?
The problem here is that LLMs are optimized to make their outputs convincing. The issue is exactly "whether you can make sense of the result", as the author said, or, in other words: whether you're immune to being conned by a model output that sounds correct but is not. Sure, "reading other people’s code is part of the job", but the failure modes of junior engineers are easily detectable. The failure modes of LLMs are not.

EDIT: formatting

proc0

8 months ago

It's also funny how it requires a lot of iterations for the average task.. and the user has to pay for the failures. No other product has this expectation, imagine a toaster that only toasts bread 20% of the time, and 50% it's half toasted.

NitpickLawyer

8 months ago

> The problem here is that LLMs are optimized to make their outputs convincing.

That may be true for chat aligned LLMs, but coding LLMs are trained w/ RL and rewards for correctness, nowadays. And there are efforts to apply this to the entire stack (i.e. better software glue, automatic guardrails, more extensive tool-use, access to LSP/debuggers/linters, etc).

I think this is the critical point in a lot of these debates that seem to be very popular right now. A lot of people try something and get the wrong impressions about what SotA is. It turns out that often that something is not the best way to do it (i.e. chatting in a web interface for coding), but people don't go the extra mile to actually try what would be best for them (i.e. coding IDEs, terminal agents, etc).

rotis

8 months ago

The author defends mediocore code, yet wrote this piece:

https://fly.io/blog/vscode-ssh-wtf/

Where he dunks on how SSH access works in VSCode. I don't know. The code and architecture behind this feature may well be bananas, but gets the work done. Sounds like a clear case of mediocority. I wonder how does he reconcile those two articles together.

For me this is more of a clickbait. Both of the articles. With that in mind, if I am nuts for being sceptical of LLMs, I think it is fair to call the author a clickbaiter.

okdood64

8 months ago

How a feature works, and how a feature is coded (how "nice" & canonical the code is) are two very different things.

He's dunking on the design of it.

AnimalMuppet

8 months ago

Hmm. The author is a cryptography expert. So, honest question: Would he trust crypto code written by an AI?

(I suspect I know the answer, but I am not certain of it.)

jszymborski

8 months ago

The argument that I've heard against LLMs for code is that they create bugs that, by design, are very difficult to spot.

The LLM has one job, to make code that looks plausible. That's it. There's no logic gone into writing that bit of code. So the bugs often won't be like those a programmer makes. Instead, they can introduce a whole new class of bug that's way harder to debug.

vanschelven

8 months ago

This is exactly what I wrote about when I wrote "Copilot Induced Crash" [0]

Funny story: when I first posted that and had a couple of thousand readers, I had many comments of the type "you should just read the code carefully on review", but _nobody_ pointed out the fact that the opening example (the so called "right code") had the exact same problem as described in the article, proving exactly what you just said: it's hard to spot problems that are caused by plausibility machines.

[0] https://www.bugsink.com/blog/copilot-induced-crash/

intrasight

8 months ago

My philosophy is to let the LLM either write the logic or write the tests - but not both. If you write the tests and it writes the logic and it passes all of your tests, then the LLM did its job. If there are bugs, there were bugs in your tests.

fisherjeff

8 months ago

Yes, exactly - my (admittedly very limited!) experience has consistently generated well-written, working code that just doesn’t quite do what I asked. Often the results will be close to what I expect, and the coding errors do not necessarily jump out on a first line-by-line pass, so if I didn’t have a high degree of skepticism of the generated code in the first place, I could easily just run with it.

devjab

8 months ago

For me it's mostly about the efficiency of the code they write. This is because I work in energy where efficiency matters because our datasets are so ridicilously large and every interface to that data is so ridicilously bad. I'd argue that for 95% of the software out there it won't really matter if you use a list or a generator in Python to iterate over data. It probably should and maybe this will change with cloud costs continious increasing, but we do also live in a world where 4chan ran on some apache server running a 10k line php file from 2015...

Anyway, this is where AI's have been really bad for us. As well as sometimes "overengineering" their bug prevention in extremely inefficient ways. The flip-side of this is of course that a lot of human programmers would make the same mistakes.

alex989

8 months ago

>Instead, they can introduce a whole new class of bug that's way harder to debug

That sounds like a new opportunity for a startup that will collect hundreds of millions a of dollars, brag about how their new AI prototype is so smart that it scares them, and devliver nothing

DiogenesKynikos

8 months ago

> There's no logic gone into writing that bit of code.

What makes you say that? If LLMs didn't reason about things, they wouldn't be able to do one hundredth of what they do.

mindwok

8 months ago

This is a misunderstanding. Modern LLMs are trained with RL to actually write good programs. They aren't just spewing tokens out.

meowface

8 months ago

This can happen, but in practice, given I'm reviewing every line anyway, it almost never bites me.

capnrefsmmat

8 months ago

The argument seems to be that for an expert programmer, who is capable of reading and understanding AI agent code output and merging it into a codebase, AI agents are great.

Question: If everyone uses AI to code, how does someone become an expert capable of carefully reading and understanding code and acting as an editor to an AI?

The expert skills needed to be an editor -- reading code, understanding its implications, knowing what approaches are likely to cause problems, recognizing patterns that can be refactored, knowing where likely problems lie and how to test them, holding a complex codebase in memory and knowing where to find things -- currently come from long experience writing code.

But a novice who outsources their thinking to an LLM or an agent (or both) will never develop those skills on their own. So where will the experts come from?

I think of this because of my job as a professor; many of the homework assignments we use to develop thinking skills are now obsolete because LLMs can do them, permitting the students to pass without thinking. Perhaps there is another way to develop the skills, but I don't know what it is, and in the mean time I'm not sure how novices will learn to become experts.

gwbas1c

8 months ago

> Question: If everyone uses AI to code, how does someone become an expert capable of carefully reading and understanding code and acting as an editor to an AI?

Well, if everyone uses a calculator, how do we learn math?

Basically, force students to do it by hand long enough that they understand the essentials. Introduce LLMs at a point similar to when you allow students to use a calculator.

dimal

8 months ago

> a novice who outsources their thinking to an LLM or an agent (or both) will never develop those skills on their own. So where will the experts come from?

Well, if you’re a novice, don’t do that. I learn things from LLMs all the time. I get them to solve a problem that I’m pretty sure can be solved using some API that I’m only vaguely aware of, and when they solve it, I read the code so I can understand it. Then, almost always, I pick it apart and refactor it.

Hell, just yesterday I was curious about how signals work under the hood, so I had an LLM give me a simple example, then we picked it apart. These things can be amazing tutors if you’re curious. I’m insatiably curious, so I’m learning a lot.

Junior engineers should not vibe code. They should use LLMs as pair programmers to learn. If they don’t, that’s on them. Is it a dicey situation? Yeah. But there’s no turning back the clock. This is the world we have. They still have a path if they want it and have curiosity.

CobrastanJorji

8 months ago

This reminds me of Isaac Asimov's "Profession" short story. Most people receive their ability (and their matching assigned profession, thus the name) from a computer. They then are able to do the necessary tasks for their job, but they can't advance the art in any way. A few people aren't compatible with this technology, and they instead learn to do things themselves, which is fortunate because it's the only way to advance the arts.

mgraczyk

8 months ago

Deliberate practice, which may take a form different from productive work.

I believe it's important for students to learn how to write data structures at some point. Red black trees, various heaps, etc. Students should write and understand these, even though almost nobody will ever implement one on the job.

Analogously electrical engineers learn how to use conservation laws and Ohm's law to compute various circuit properties. Professionals use simulation software for this most of the time, but learning the inner workings is important for students.

The same pattern is true of LLMs. Students should learn how to write code, but soon the code will write itself and professionals will be prompting models instead. In 5-10 years none of this will matter though because the models will do nearly everything.

NeutralCrane

8 months ago

> Question: If everyone uses AI to code, how does someone become an expert capable of carefully reading and understanding code and acting as an editor to an AI?

LLMs are very much like pair programmers in my experience. For the junior engineer, they are excellent resources for learning, the way a senior engineer might be. Not only can they code what the junior can’t, they can explain questions the junior has about the code and why it’s doing what it’s doing.

For senior devs, it is a competent pair programmers, acting as an excellent resource for bouncing ideas off of, rubber ducking, writing boilerplate, and conducting code reviews.

For expert devs, it is a junior/senior dev you can offload all the trivial tasks to so you can focus on the 10% of the project that is difficult enough to require your expertise. Like a junior dev, you will need to verify what it puts together, but it’s still a huge amount of time saved.

For junior devs specifically, if they are not curious and have no interest in actually learning, they will just stop at the generated code and call it a day. That’s not an issue with the tool, it’s an issue with the dev. For competent individuals with a desire to learn and grow, LLMs represent one of the single best resources to do so. In that sense, I think that junior devs are at a greater advantage than ever before.

r3trohack3r

8 months ago

I don’t know about you, but I use LLMs as gateways to knowledge. I can set a deep research agent free on the internet with context about my current experience level, preferred learning format (books), what I’m trying to ramp up on, etc. A little while later, I have a collection of the definitive books for ramping up in a space. I then sit down and work through the book doing active recall and practice as I go. And I have the LLM there for Q&A while I work through concepts and “test the boundaries” of my mental models.

I’ve become faster at the novice -> experienced arc with LLMs, even in domains that I have absolutely no prior experience with.

But yeah, the people who just use LLMs for “magic oracle please tell me what do” are absolutely cooked. You can lead a horse to water, but you can’t make it drink.

andersa

8 months ago

If no one really becomes an expert anymore, that seems like great news for the people who are already experts. Perhaps people actively desire this.

ofjcihen

8 months ago

It’s a great point and one I’ve wondered myself.

Arguments are made consistently about how this can replace interns or juniors directly. Others say LLMs can help them learn to code.

Maybe, but not on your codebase or product and not with a seniors knowledge of pitfalls.

I wonder if this will be programmings iPhone moment where we start seeing a lack of deep knowledge needed to troubleshoot. I can tell you that we’re already seeing a glut of security issues being explained by devs as “I asked copilot if it was secure and it said it was fine so I committed it”.

xg15

8 months ago

The way the responses to this subthread show the classical "the problem doesn't exist - ok, it does exist but it's not a big deal - ok, it is a big deal but we should just adapt to it" progression makes me wonder if we found one of the few actually genuine objections to LLM coding.

1970-01-01

8 months ago

Nail on head. Before, innovations in code were extensions of a human's capabilities. The LLM-driven generation could diminish the very essence of writing meaningful code, to the point where they will live in the opposite of a golden era. The dead internet theory may yet prevail.

killerstorm

8 months ago

I think a large fraction of my programming skills come from looking through open source code bases. E.g. I'd download some code and spend some time navigating through files looking for something specific, e.g. "how is X implemented?", "what do I need to change to add Y?".

I think it works a bit like pre-training: to find what you want quickly you need to have a model of coding process, i.e. why certain files were put into certain directories, etc.

I don't think this process is incompatible with LLM use...

jedberg

8 months ago

If I were a professor, I would make my homework start the same -- here is a problem to solve.

But instead of asking for just working code, I would create a small wrapper for a popular AI. I would insist that the student use my wrapper to create the code. They must instruct the AI how to fix any non-working code until it works. Then they have to tell my wrapper to submit the code to my annotator. Then they have to annotate every line of code as to why it is there and what it is doing.

Why my wrapper? So that you can prevent them from asking it to generate the comments, and so that you know that they had to formulate the prompts themselves.

They will still be forced to understand the code.

Then double the number of problems, because with the AI they should be 2x as productive. :)

sanderjd

8 months ago

Yep, this is the thing I worry about as well.

I find these tools incredibly useful. But I constantly edit their output and frequently ask for changes to other peoples' code during review, some of which is AI generated.

But all of that editing and reviewing is informed by decades of writing code without these tools, and I don't know how I would have gotten the reps in without all that experience.

So I find myself bullish on this for myself and the experienced people I work with, but worried about training the next generation.

rglover

8 months ago

> So where will the experts come from?

They won't, save for a relative minority of those who enjoy doing things the hard way or those who see an emerging market they can capitalize on (slop scrubbers).

I wrote this post [1] last month to share my concerns about this exact problem. It's not that using AI is bad necessarily (I do every day), but it disincentivizes real learning and competency. And once using AI is normalized to the point where true learning (not just outcome seeking) becomes optional, all hell will break loose.

> Perhaps there is another way to develop the skills

Like sticking a fork in a light socket, the only way to truly learn is to try it and see what happens.

[1] https://ryanglover.net/blog/chauffeur-knowledge-and-the-impe...

pchristensen

8 months ago

LLMs are also great to ask questions about existing code. It's like being able to converse with StackOverflow.

bawolff

8 months ago

I dont know if im convinced by this. Like if we were talking about novels, you don't have to be a writer to check grammar and analyze plot structure in a passable way. It is possible to learn by reading instead of doing.

AstroBen

8 months ago

I've had a lot of success using LLMs to deepen my understanding of topics. Give them an argument, and have them give the best points against it. Consider them, iterate. Argue against it and let it counter. It's a really good rubber duck

> The expert skills... currently come from long experience writing code

Do they? Is it the writing that's important? Or is it the thinking that goes along with it? What's stopping someone from going through LLM output, going back and forth on design decisions with the LLM, and ultimately making the final choice of how the tool should mold the codebase after seeing the options

I mean of course this requires some proactive effort on your part.. but it always did

The key point I think though is to not outsource your thinking. You can't blindly trust the output. It's a modern search engine

kulahan

8 months ago

> If everyone uses AI to code, how does someone become an expert

The same way they do now that most code is being copied/integrated from StackOverflow.

user

8 months ago

[deleted]

ldjkfkdsjnv

8 months ago

This is such a non issue and so far down the list of questions. Weve invented AI that can code, and you're asking about career progression? Thats the the top thing to talk about? Weve given life to essentially an alien life form

hiAndrewQuinn

8 months ago

I'll take the opposite view of most people. Expertise is a bad thing. We should embrace technological changes that render expertise economically irrelevant with open arms.

Take a domain like US taxation. You can certainly become an expert in that, and many people do. Is it a good thing that US taxes are so complicated that we have a market demand for thousands of such experts? Most people would say no.

Don't get my wronf, I've been coding for more years of being alive than I haven't by this point, I love the craft. I still think younger me would have far preferred a world where he could have just had GPT do it all for him so he didn't need to spend his lunch hours poring over the finer points of e.g. Python iterators.

rafavento

8 months ago

There's something that seems to be missing in all these posts and that aligns with my personal experience trying to use AI coding assistants.

I think in code.

To me, having to translate the into natural language for the LLM to translate it back into code makes very little sense.

Am I alone in this camp? What am I missing?

simonw

8 months ago

If you think in code, try prompting them in code.

I quite often prompt with code in a different language, or pseudo-code describing roughly what I am trying to achieve, or a Python function signature without the function body.

Or I will paste in a bunch of code I have already written with a comment somewhere that says "TODO: retrieve the information from the GitHub API" and have the model finish it for me.

Seb-C

8 months ago

I'm also in this camp, and that's why it does not work for me.

Natural language is just a terrible interface and fundamentally not an appropriate one to communicate with a computer.

I wonder if I'm in the minority here because I'm neurodivergent.

jansan

8 months ago

I am pretty sure we will see programming languages that are custom made for AI popping up soon. I cannot predict how it will look like, but it may be a mix between an extremely well documented language with lots of safeguards (like Kotlin or Java) combined with natural language like instructions.

ACCount36

8 months ago

I know what you mean. The thing is: if you already have the solution put together in your mind, it might be faster to just implement it by hand.

But if you don't have the shape of a solution? Might be faster to have an AI find it. And then either accept AI's solution as is, or work off it.

lcrmorin

8 months ago

No. Thanks for pointing this out. It took quite some time to understand and express this to my management. Also I use a very small set of libraries, with function names / parameters that are quite explicit. And I don't need to specify some style to bypass hidden prompts, and bad coding practices.

nostrademons

8 months ago

Curious how he reconciles this:

> If you build something with an LLM that people will depend on, read the code. In fact, you’ll probably do more than that. You’ll spend 5-10 minutes knocking it back into your own style.

with Joel Spolsky's fundamental maxim:

> It’s harder to read code than to write it.

https://www.joelonsoftware.com/2000/04/06/things-you-should-...

pyb

8 months ago

I'm sure no one reads LLM-produced code very carefully, especially if it "works". At best they skim.

lawn

8 months ago

This is my biggest problem with LLM generated code.

But I'm sure the author will simply dismiss it as a skill issue too.

skwirl

8 months ago

The major difference is that in the type of reading Joel Splosky is talking about, you are coming in not knowing the code's intent. It was written by one or more other people at some point in the past, likely with many iterative changes over a period of time. Figuring out the intent in this case is 90%+ of the work. With LLM generated code, you know the intent. You just told the assistant exactly what your intent was. It's much, much easier to read code that you already know the intent of.

layer8

8 months ago

You can invest more time in the writing to make code easier to read. It’s just that it typically would take much more time. It would be conceivable for LLMs to eventually reach a state where they can produce such easily readable and comprehensible code.

simonw

8 months ago

I can reconcile that. Joel is right. So is Thomas. If you're a professional programmer you should be able to do the harder thing.

Thomas was a bit more spicy about that:

> but you have no idea what the code is - Are you a vibe coding Youtuber? Can you not read code? If so: astute point. Otherwise: what the fuck is wrong with you?

bccdee

8 months ago

To quote an excellent article from last week:

> The AI has suggested a solution, but the added code is arguably useless or wrong. There is a huge decision space to consider, but the AI tool has picked one set of decisions, without any rationale for this decision.

> [...]

> Programming is about lots of decisions, large and small. Architecture decisions. Data validation decisions. Button color decisions.

> Some decisions are inconsequential and can be safely outsourced. There is indeed a ton of boilerplate involved in software development, and writing boilerplate-heavy code involves near zero decisions.

> But other decisions do matter.

(from https://lukasatkinson.de/2025/net-negative-cursor/)

Proponents of AI coding often talk about boilerplate as if that's what we spend most of our time on, but boilerplate is a cinch. You copy/paste, change a few fields, and maybe run a macro on it. Or you abstract it away entirely. As for the "agent" thing, typing git fetch, git commit, git rebase takes up even less of my time than boilerplate.

Most of what we write is not highly creative, but it is load-bearing, and it's full of choices. Most of our time is spent making those choices, not typing out the words. The problem isn't hallucination, it's the plain bad code that I'm going to have to rewrite. Why not just write it right myself the first time? People say "it's like a junior developer," but do they have any idea how much time I've spent trying to coax junior developers into doing things the right way rather than just doing them myself? I don't want to waste time mentoring my tools.

tptacek

8 months ago

No, what's happening here is that you're using a different definition of "boilerplate" than the adopters are using. To you, "boilerplate" is literally a chunk of code you copy and paste to repeatedly solve a problem (btw: I flip my shit when people do this on codebases I work on). To them, "boilerplate" represents a common set of rote solutions to isomorphic problems. The actual lines of code might be quite different, but the approach is the same. That's not necessarily something you can copy-paste.

Coming at this from a computer-science or PLT perspective, this idea of an "abstract, repeatable meta-boilerplate" is exactly the payoff we expect from language features like strong type systems. Part of the point of rigorous languages is to create these kinds of patterns. You had total expressiveness back in assembly language! Repeatable rigor is most of the point of modern languages.

RodgerTheGreat

8 months ago

At least when you mentor an actual junior developer they often learn, and you can take satisfaction in aiding the growth of a human being. All the time and effort spent coaxing an LLM to "do better" either disappears in a puff of smoke the next time it goes schizoid and needs to have its context cleared or- at best- is recorded to help a for-profit company train their next generation of products.

Like everything else about the "GenAI" fad, it boils down to extractively exploiting goodwill and despoiling the commons in order to convert VC dollars into penny-shavings.

d--b

8 months ago

Boilerplate is a cinch when you already know what to do.

I work in finance, I have for almost 20 years now. There are things in finance you do once every 5 years, like setting up a data source like Bloomberg in a new programming language. Now you know from the last time you did it that it’s a pain, you need to use a very low level api, handling all the tiny messages yourself, building up the response as it comes from the source in unordered packets. It’s asynchronous, there is a message queue, and what I specialize in is maths.

Now I could spend hours reading documents, putting crap together, and finally come up with some half baked code that ignores most possible error points.

Or I could use ChatGPT and leverage the fact that hundreds of implementations of the same module exist out there. And make something that just works.

That is the first ever coding question I asked an LLM and it literally saved me days of trial and error for something where my added value is next to zero.

Similarly I use LLMs a lot for small tasks that are in fact fairly difficult, and that don’t add any value to the solution. Things like converting data structures in an efficient way using Python idioms, or JavaScript 2023 features, that there is no way I can keep up with.

closeparen

8 months ago

The thing that makes an agent special is making some kind of effort to gather the relevant context before generating. The quality of the edits from the "agent" panel in Cursor/Copilot/etc is quite a bit higher than the type-ahead suggestions or the inline prompt stuff.

Bizarrely though, it seems to be limited to grep for the moment, doesn't work with LSP yet.

monkaiju

8 months ago

Adding this comment to my HN bookmarks! Well said

naasking

8 months ago

> Most of what we write is not highly creative, but it is load-bearing, and it's full of choices.

The idea that you can't specify the load bearing pillars of your structure to the AI, or that it couldn't figure them out by specifying the right requirements/constraints, will not age well.

TheRoque

8 months ago

One of the biggest anti LLM arguments for me at the moments is about security. In case you don't know, if you open a file with copilot active or cursor, containing secrets, it might be sent to a server a thus get leaked. The companies say that if that file is in a cursorignore file, it won't be indexed, but it's still a critical security issue IMO. We all know what happened with the "smart home assistants" like Alexa.

Sure, there might be a way to change your workflow and never ever open a secret file with those editors, but my point is that a software that sends your data without your consent, and without giving you the tools to audit it, is a no go for many companies, including mine.

zmmmmm

8 months ago

It's why I use Aider, because it only operates on explicit files that you give it. Works great with OpenAI but if you are really worried, it interfaces perfectly with Ollama for local LLMs. A 12b model on my Mac does well enough for coding that it's serviceable for me.

metaltyphoon

8 months ago

At day job while someone was trying out windsurf, it simply picked up an environment variable that contained sensitive data and used it in code. This is wild.

noobermin

8 months ago

Sometimes I wonder if all the hype around being left behind and needing to try these things just to see how great they can be is being deliberately put out there to increase their training data.

Too many vibe coders contribute trash code if any. They need more code from so called experts that isn't open source yet.

knallfrosch

8 months ago

It's pretty unlikely someone at Cursor cares about accessing your Spring Boot project on GitHub through your personal access token – because they already have all your code.

root_axis

8 months ago

The problem with LLMs for code is that they are still way too slow and expensive to be generally practical for non-trivial software projects. I'm not saying that they aren't useful, they are excellent at filling out narrow code units that don't require a lot of context and can be quickly or automatically verified to be correct. You will save a lot of time using them this way.

On the other hand, if you slip up and give it too much to chew on or just roll bad RNG, it will spin itself into a loop attempting many variations of crap, erasing and trying over, but never actually coming closer to a correct solution, eventually repeating obviously incorrect solutions over and over again that should have been precluded based on feedback from the previous failed solutions. If you're using a SOTA model, you can easily rack up $5 or more on a single task if you give it more than 30 minutes of leeway to work it out. Sure, you could use a cheaper model, but all that does is make the fundamental problem worse - i.e. you're spending money but not actually getting any closer to completed work.

Yes, the models are getting smarter and more efficient, but we're still at least a decade away from being able to run useful models at practical speeds locally. Aggressively quantized 70b models simply can't cut it, and even then, you need something like 10k tps to start building LLM tools that can overcome the LLM's lack of reasoning skills through brute force guess and check techniques.

Perhaps some of the AI skeptics are a bit too harsh, but they're certainly not crazy in the context of breathless hype.

dyauspitr

8 months ago

What are you talking about? It’s $20/month.

baobun

8 months ago

The privacy aspect and other security risks tho? So far all the praise I hear on productivity are from people using cloud-hosted models.

Claude, Gemini, Copilot and and ChatGPT are non-starters for privacy-minded folks.

So far, local experiements with agents have left me underwhelmed. Tried everything on ollama that can run on my dedicated Ryzen 8700G with 96GB DDR5. I'm ready to blow ~10-15k USD on a better rig if I see value in it but if I extrapolate current results I believe it'll be another CPU generation before I can expect positive productivity output from properly securely running local models when factoring in the setup and meta.

simonw

8 months ago

Almost all of the cloud vendors have policies saying that they will not train on your input if you are a paying customer.

The single biggest productivity boost you can get in LLM world is believing them when they make those promises to you!

oblio

8 months ago

This is probably the biggest danger. Everyone is assuming optimization work reduces cost faster than these companies burn through capital. I'm half inclined to assume optimization work will do it, but it's far from as obvious as they want to portray it.

NitpickLawyer

8 months ago

> So far, local experiements with agents have left me underwhelmed.

Devstral (mistral small fine-tuned for agentic use coding) w/ cline has been above expectations for me.

storus

8 months ago

MacStudio with 512GB RAM starts at around 10k and quantized DeepSeek R1 671B needs around 400GB RAM, making it usable for your needs. It produced some outstanding code on many tasks I tried (some not so outstanding as well).

BeetleB

8 months ago

Privacy is not binary, and it would make it easier if you outlined specific scenarios.

Most providers promise not to train on inputs if used via an API (and otherwise have a retention timeline for other reasons).

I'm not sure the privacy concern is greater than using pretty much any cloud provider for anything. Storing your data on AWS: Privacy concern?

gspencley

8 months ago

The reason that I personally don't use LLMs was not addressed by the article:

I haven't found a way to use it that makes me develop faster.

The articles talks about "tedious code." If you need to generate a large static value table or something, then OK an LLM might give you a really fast result and cut through the tedium. Most of us were already writing short scripts to do that. I'm open to the possibility that an LLM can do it faster. But it's such a rare requirement that the productivity gains are truly negligible here even if they can. And in those cases, it's obvious what the repetitive task needs to be. I often find myself writing the code by hand to be quicker than coming up with a prompt to get it to write the code that I then need to review for correctness.

The article then mentions scaffolding. Things like "bookkeeping" when it comes to creating and setting up a new repo (whatever he means by that). This is why I have, historically, been a big fan of frameworks and generators. Point being, this is already a solved problem and I haven't found a way to further improve the state of this world with LLMs. LLMs might be an alternate tool that work just as well. But they haven't made my existing daily workflow any faster. Setting up new repos is also something that is done so rarely that even if an LLM netted a 100% increase in efficiency, it wouldn't really impact much.

I am an AI "skeptic" but I'm not a naysayer. I do use LLMs regularly. I just don't use them for developing code because I have yet to find a problem that they solve for me. Don't get me wrong, there are problems that they can solve... I just haven't come across any solutions to previously-unsolved problems. Meaning I can swap an existing solution for an LLM-based one... and it is a valid solution... but I don't observe any increase in productivity from doing so. The existing solution was already working fine.

I am genuinely looking forward to the day when this changes. When I identify a single existing problem without an existing solution that LLMs solve for me when developing software. I just have yet to come across one.

incomingpain

8 months ago

>I haven't found a way to use it that makes me develop faster.

I have pycharm pro with the ai. I can right click a function and there's 12 things AI can just do for you.

"find problems" where the linter has no concerns and it finds problems that dont show up from linter are shockingly good. This is like "Hey, you need to make sure this function is only running once at a time or it can easily overwhelm the cpu."

"write documentation" and it just fills in the documentation. I havent a clue what it writes and I wont be doing it.

"generate unit tests" is interesting? I have literally never written a unit test before and the code it produces is lengthy. Unit tests are a waste of time; but others disagree and so AI can produce it.

"explain code" look I wrote the code years ago half drunk, half high. No comments. It explains it all in depth and perfectly. Comments sometimes go stale after bug fixes and then make things confusing. Comments arent important when you have this beautifulness.

Lets go back to that cpu DOS attack example. I then can prompt what is claude 3.5 sonnet to give me to solution to fix it. It gives me this beautiful cache option. I could just hit apply and it'd be done. But then i said it's too complicated give me something simpler. It then gives me a solution that is simpler.

>nd in those cases, it's obvious what the repetitive task needs to be. I often find myself writing the code by hand to be quicker than coming up with a prompt to get it to write the code that I then need to review for correctness.

Its all about the boring busy work crap that doesnt need to be done that now gets done.

AnotherGoodName

8 months ago

This happened with the introduction of smartphones too. Every slashdot post had a haughty and upvoted ‘why would i want such a thing!!!’.

It was obviously huge. You could see it taking off. Yet a lot of people proudly displayed ignorance and backed each other up on it to the point that discussion around the topic was often drowned out by the opposition to change. Now today it takes minutes of playing with ai coding agents to realise that it’s extremely useful and going to be similarly huge.

Resistance to change is not a virtue!

okanat

8 months ago

I still think smartphones are a huge negative to humanity. They improve a narrow case: having access to ephemeral knowledge. Nobody writes articles or does deep knowledge work with smartphones.

My position with the AI is almost the same. It is overall a net negative for cognitive abilities of people. Moreover I do think all AI companies need to pay fair licensing cost to all authors and train their models to accurately cite the sources. If they want more data for free, they need to propose copyright changes retroactively invalidating everything older than 50 years and also do the legwork for limiting software IP to 5 to 10 years.

homebrewer

8 months ago

> today it takes minutes of playing with ai coding agents to realise that it’s extremely useful

Yet some of us spent hours over the past three years playing with LLMs, and remain completely unimpressed by what we see.

oblio

8 months ago

Smartphones were financially viable from day 1, though. I think LLMs will be used a lot and in a lot of places but the current level of investment they're getting right now feels out of line to me. Kind of like what I expect them to get in 10 years from now, when they're mature.

bawolff

8 months ago

Some days i still don't understand why anyone would want a smart phone. I think being connected all the time has a significant negative impact on mental health (I say, as i type this from a smartphone)

ceejayoz

8 months ago

Sometimes it works that way.

Sometimes it’s more like NFTs.

hooverd

8 months ago

Unfortunately, they were right. Smartphones are a menace, especially in terms of traffic violence.

tom_

8 months ago

And today everybody has a smartphone, pretty much. So what difference did it make, the opinion you had, whatever it was? In the end, none at all.

zahlman

8 months ago

> This happened with the introduction of smartphones too. Every slashdot post had a haughty and upvoted ‘why would i want such a thing!!!’.

I am in my 40s; have never owned a smartphone and still can't imagine wanting one; am constantly surrounded by others who have them and thus am completely aware of their functionality; AMA.

spacechild1

8 months ago

> This happened with the introduction of smartphones too. Every slashdot post had a haughty and upvoted ‘why would i want such a thing!!!’.

This is a funny example because the devastating effects of smartphone addiction on society are now blatantly obvious. There are in fact very good reasons for not 'wanting such a thing'.

Don't get me wrong, LLMs can be incredibly useful and I think they deserve some of the current hype. Claiming that LLMs are useless is indeed silly and can be rightfully ignored. But there are serious concerns about potentional (or actual) negative effects on society, and these should be taken seriously.

BeetleB

8 months ago

To be frank, I do think smartphones have made my life worse. I'd happily forego them if it were not for 2FA and how too many businesses expect I can receive texts.

Swiffy0

8 months ago

My 5 cents would be that LLMs have replaced all those random (e.g. CSS, regex etc) generators, emmet-like IDE code completion/generator tools, as well as having to google for arbitrary code snippets which you'd just copy and paste in.

In no way can AI be used for anything larger than generating singular functions or anything that would require writing to or modifying multiple files.

Technically you might be able to pull off having AI change multiple files for you in one go, but you'll quickly run into sort of "Adobe Dreamviewer" type of issue where your codebase is dominated by generated code which only the AI that generated it is able to properly extend and modify.

I remember when Dreamviewer was a thing, but you essentialyl had to make a choice between sticking with it forever for the project or not using it at all, because it would basically convert your source code into it's own proprietary format due to it becoming so horribly messy and unreadable.

Regardless, AI is absolutely incredible and speeds up development by a great deal, (even) if you only use it to generate small snippets at the time.

AI is also an absolute godsend for formatting and converting stuff from anything and to anything - you could e.g. dump your whole database structure to Gemini and ask it to generate an API against it; big task, but since it is basically just a conversion task, it will work very well.

Animats

8 months ago

Here are two routine problems I have to solve at the moment. Can any of the current LLM systems do either?

1. Input is an 256x256 pixel elevation map stored as a greyscale .png file, and a minimum and maximum elevation. A pixel value of 0 corresponds to the minimum elevation, and a pixel value of 255 corresponds to the maximum elevation. Read in the .png file and the elevation limits. Then construct a 256x256 floating point array of heights. From that array, construct a triangle mesh with X and Y dimensions 0..255. Perform a mesh reduction operation on the triangle mesh to reduce the number of triangles. Mesh reduction must not generate holes in the mesh. From the reduced mesh, generate a glTF file where the UV parameters run from 0.0 to 1.0 along the X and Y axes.

2. Given four glTF files constructed as above, corresponding to four quadrants of a larger square, construct a single 511x511 mesh which combines all four input meshes to cover a larger area. Because the input meshes are 0..255, not 0..256, there will be gaps where the four quadrants meet. Fill those gaps with reasonable triangles. Perform a mesh reduction as above. From the reduced mesh, generate a glTF file where the UV parameters run from 0.0 to 1.0 along the X and Y axes.

Rust code is preferred; Python code is acceptable.

So, what service should I sign up for?

csomar

8 months ago

Tackling 1: No current LLM will be able to do that. Create your Rust project, figure out the dependencies that could be useful on your own, then start by asking which types can be expressed. Then after you have revised the types, figure out (with or without LLM) which functions have to be implemented. Then ask LLMs to implement these functions with tests. With some modifications, you should be able to have a final working solution.

Edit: took a while but here is the code generated by DeepSeek: https://gist.github.com/omarabid/b30195011abf570fde2a084cd11... If you have an example file I could give it a test run.

JKCalhoun

8 months ago

Why don't you paste that into Claude, ChatGPT — report back what you find?

agnishom

8 months ago

This is a great example.

Supposedly, you know something about this problem. If you use an LLM to craft a solution, that's probably fine since you'd know how well you did.

I know nothing about this problem. I could use an LLM to delude myself into thinking that I do. Should my boss be very happy about that? They probably shouldn't

perfmode

8 months ago

try claude code, in python

r0s

8 months ago

Weird to claim the llm does all the boring learning and boilerplate for you as a selling point, but then also insist we still need to responsibly read all the output, and if you can't understand it's a "skill issue".

Also the emphasis on greenfield projects? Starting is by FAR the easiest part. That's not impressive to me. When do we get to code greenfield for important systems? Reminds me of the equally absurd example of language choice. You think you get to choose? What?

Imagine all the code these agents are going to pump out that can never be reviewed in a reasonable time frame. The noise generated at the whim of bike-shedding vibe coders is going to drown all the senior reviewers soon enough. I'll call that Cowboy Coders on Steroids. Anyone with skills will be buried in reviews, won't have time for anything else, and I predict stricter code gen policies to compensate.

rtpg

8 months ago

I don't have a huge dog in this fight apart from AI advocates being annoying... but I would say that for greenfield projects the interesting thing is that I can get a skeleton of a working iOS app for something simple in like an hour of some copy/pasting stuff from ChatGPT. Instead of spending a good amount of time trying to get through learning material to do it.

It's nice to build throwaway things _so fast_, especially in the sort of fuzzy stuff like frontend where it's fine for it to be completely wrong. And then I can just use my own sense of how computers work to fix up what I care about, delete a bunch of what I don't care about... It's pretty amazing.

For existing projects I have only witnessed garbage output. I know people have success. I haven't seen it.

I have witnessed PMs taking a bullet pointed list of requirements and then use ChatGPT to generate paragraphs of text for some reason. You had the list!

layla5alive

8 months ago

And (rigorously) reviewing code is easily 10x harder than writing it.

But this won't stop it from happening.

sfn42

8 months ago

I think the point is that the person orchestrating the agent(s) reviews the code. It doesn't make sense to have 5 Juniors using agents to submit PRs and a senior or two reviewing it all. You just have the senior(s) orchestrating agents and reviewing it themselves. Maybe one or two juniors because we still need to train new devs, but maybe the junior doesn't even use an LLM. Maybe the junior writes code manually so they can learn programming properly before they start being an "AI lead".

Everyone is still responsible for the code they produce. I review my own PRs before I expect others to, and I don't even use AI. I think what the article describes seems interesting though.

otabdeveloper4

8 months ago

Yeah, I remember five years ago (before being sold this latest VC crock of bull) when reviewing shitty thoughtless code was the tedious and soul-sucking part of programming.

user

8 months ago

[deleted]

puttycat

8 months ago

> An LLM can be instructed to just figure all that shit out. Often, it will drop you precisely at that golden moment where shit almost works, and development means tweaking code and immediately seeing things work better.

Well, except that in order to fix that 1% you'd need to read and understand whatever the LLM did and then look for that 1%. I get the shills just thinking about this, whether the original programmer was human or not. I'd rather just write everything myself to begin with.

nojito

8 months ago

Reading code is vastly quicker than writing it from scratch.

nilirl

8 months ago

The one main claim the article makes: Senior developers should not ignore the productivity gains from LLMs.

Best use of evidence is deductive: Lots of code is tedious and uninteresting -> LLMs are fast at generating lots of tedious code -> LLMs help productivity.

Weakest part of the argument: The list of rebuttals doesn't have an obvious organization to it. What exactly is the main argument they're arguing against?

It's not stated outright but because the post is bookended by references to 'those smarter than me', I think this is an argument against the shaming of developers using (and loving) LLM tools.

Which I think is fair.

Overall, the post did not add anything to the general discussion. But the popularity of the author (and fly.io posts) may make it a beacon for some.

captainbland

8 months ago

A couple of thoughts:

On 'just read the code' - all well and good. Of course this implies insisting on team members who can read the code, will read the code and are empowered to read the code.

Otherwise orgs will try to hire pure vibe coders who aren't interested in that and only allow time for literally just instructing agents to generate code because it sounds cheaper and execs don't understand the nuance so long as it looks like product is shipping - until it all blows up and the one standing senior developer on hand is supposed to fix a prod issue buried in millions of lines of vibe reviewed code ASAP.

On 'but it's cheaper than a junior': cloud hosted LLM systems are currently massively subsidised to an absurd degree. The cost side of things is all smoke and mirrors geared towards accelerated market adoption at all costs. It's not a profitable enterprise at the model development level.

At some point that AI economy is going to expect to make that money back, and future (especially near-future) hardware advancements don't explain where all of that is going to come from.

orsorna

8 months ago

If you are resource constrained this article will make you sad.

I do not have unlimited funds to plug in some token and burn a bunch of money when writing code.

I am gpu poor. I'm lucky that 8gb vram can run the smallest models. But the output is so poor that I lose out to anyone using a hosted service.

If anything this article shows that building great programs is less democratized than it once was.

HenriTEL

8 months ago

I'm working with python and it does not work very well, LLMs usually generates at least an order of magnitude more code than what I would write. That code often uses outdated practices, does poor design choices and does not understand hints like writing code in a way that reduce cognitive load, even when we explain that it means, i.e. keep the number of classes and functions small.

It's the complete opposite of OP's main language GO, as he says:

> Go has just enough type safety, an extensive standard library, and a culture that prizes (often repetitive) idiom. LLMs kick ass generating it.

Python is an interpreted dynamically typed language and the static type checkers are not there yet (most popular 3rd parties libraries have no type hints for example). Also it allows for many different programming styles that the LLMs struggle to choose from.

1. Every extra line of code is much more risky. 2. It's much harder to verify the LLM's code.

On the other hand I think rust will be in a good place in regards to LLMs in the next few years thanks to the robustness of the language and the quality of its diagnostic messages. Those 2 attributes should compound very well.

lubujackson

8 months ago

I use Cursor with Python and it works great. Things you should try:

  * use type hints everywhere.
  * use dataclasses everywhere.
  * add the dataclass files to your prompt.
  * if the produced code is too complex, ask the LLM "Is this the simplest and cleanest way to solve this?"

ken47

8 months ago

Let’s not conflate LLM’s with AI. LLM’s are a kind of AI that can be a software engineer’s assistant, at best. But the degree of hype is undermining belief in AI among many professionals who the hypesters claim are going to be replaced. No, this iteration is not going to replace doctors or engineers. But the degree to which the hype train wants to do so is alarming.

cheevly

8 months ago

I'm curious what walls you've hit? I literally can't find the boundaries of what is possible to achieve.

runeks

8 months ago

> LLMs can write a large fraction of all the tedious code you’ll ever need to write. And most code on most projects is tedious.

You still need to read this tedious code to verify that it actually does what you want it to do. Given this, I'd much rather prefer to write the tedious code myself than having to make sense of someone else's tedious code.

officehero

8 months ago

I've reproduced this type of sentiment over several of my hobby projects and it usually hits hard toward the latter half of the project and its usually related to bugs. In the beginning it's all great and fast with LLMs, but then there's a kind of steep drop in motivation as one realizes one has to dig as deep anyway into the tedious stuff, because there are always bugs.

agnishom

8 months ago

I think the key premise here is that one can effectively and efficiently audit code that the LLM is producing.

I doubt that. First, human attention and speed is very limited. Second, when I see something, I am already predisposed to assume that it is right (or at the very least, my subsequent inquiries are extremely narrow and anchored around the solution I have seen presented to me.)

klabb3

8 months ago

Yeah. Reviewing code thoroughly is extremely time consuming. When you review code from a human, you can look for choices they made fairly quickly - say they used framework X and language feature Y. Most importantly, you assume that they’ve checked certain things to work. This way, code review can be fast but it still isn’t thorough on its own. Most of it is trust and bureaucracy (big companies do this also to prevent malicious employees from smuggling in backdoors etc).

Code from LLMs that looks right, clean and even clever poses as competence but are prone to hallucinations and business logic errors. In the short term, these changes will pass through due to their appearance but contain more issues than a human would have with the same code. In the medium term, we just lose that signal - the assumptions we can make about the authors state of mind and comprehension. It’s already incredibly hard to distinguish solid points from nonsense, when the nonsense is laundered by an LLM.

nprateem

8 months ago

Yeah the problem is the fatigue of repeatedly reviewing code.

You do a few iterations until code runs, review carefully but notice a bug. So you do another iteration and 40% of code changes. Now you need to review again but you need to understand how the changes fit in.

Repeat this a few times and it becomes very tiring.

Ultimately you can't trust them not to do stupid shit. Your tests fail and you tell it to stop that? Sure, we can just catch those exceptions and the tests pass, etc. You get pissed off an tell it to FIX the CODE so the tests pass and the cycle continues.

It's like working with a potentially gifted moron.

einrealist

8 months ago

Exactly. And even if LLMs become more accurate and qualitative better, it just raises the costs for validation. Errors and bad design decisions become harder to spot.

rednafi

8 months ago

A lot of people who are wary of LLMs aren’t against the technology itself, but rather the narrative surrounding it. You can take advantage of the tool while turning a blind eye to the discourse.

This 16-minute, expletive-filled, edgy-old-man-trying-too-hard-to-be-cool article could easily be dismissed as yet another AI creed that somehow found its way to the top of the HN front page.

roncar

8 months ago

When I made a mid career change to Cobol programming in 1981 my first manager (a suit as programmers referred to them then) pointed to a book on his desk; the title,as I can best recall was Programming Without Programmers. He "You got in too late," he said. I retired from programming in 2010. The hype has a long history. I hope I'm around long enough to see how this plays out.

Voltage

8 months ago

I'm on the side of AI is a huge productivity booster (by my guess... 10x)

But I don't want to make the claim lightly, so I did an experiment.

I signed up for copilot pro, and have been using their 'edit' feature. This is more than just their auto complete.

I set myself a goal to create a playable web game of classic frogger.

It took 4 hours with copilot "edit" and my full attention.

I didn't write a single line of code, but I did ask it to refactor and gave it a project description.

I suspect this would have taken me 4 days full time to get to this level.

Try it out:

https://dev.zebrar.com/jd/frogger/

guax

8 months ago

So less than 10x already.

Question, how familiar are you with the used technologies? My experience on where Ai have been useful so far is things I don't have a good understanding on but, when I do, its a different ball game, mostly because coding it directly seems faster since I know exactly the behaviour I am looking for and I am not having to deal with unintended consequences.

I see it as the Alice cat thing, when you don't know where you going, any road will take you there. So its been great for exploratory work and prototyping.

Voltage

8 months ago

* It's not mobile friendly, and you use arrow keys to move around

GenshoTikamura

8 months ago

> a playable web game of classic frogger

You could create a Tetris in even less time. Try to create something more novel and less hot on the heatmap of paths walked in gamedev.

kokaybro

8 months ago

I will create an account just to point out that the response to

> But it is an inherently plagiarist technology

Was

> Developers frequently engage in copyright infringement, and so will I, so unless if you're a lawyer, shove it up your ass

"I am a bad person so I get to continue being bad" is not the gotcha you think it is, Patrick.

munificent

8 months ago

"Kids today don’t just use agents; they use asynchronous agents. They wake up, free-associate 13 different things for their LLMs to work on, make coffee, fill out a TPS report, drive to the Mars Cheese Castle, and then check their notifications. They’ve got 13 PRs to review. Three get tossed and re-prompted. Five of them get the same feedback a junior dev gets. And five get merged."

I would jump off a bridge before I accepted that as my full-time job.

I've been programming for 20+ years and I've never wanted to move into management. I got into programming because I like programming, not because I like asking others to write code on my behalf and review what they come up with. I've been in a lead role, and I certainly do lots of code review and enjoy helping teammates grow. But the last fucking thing I want to do is delegate all the code writing to someone or something else.

I like writing code. Yes, sometimes writing code is tedious, or frustrating. Sometimes it's yak-shaving. Sometimes it's Googling. Very often, it's debugging. I'm happy to have AI help me with some of that drudgery, but if I ever get to the point that I feel like I spend my entire day in virtual meetings with AI agents, then I'm changing careers.

I get up in the morning to make things, not to watch others make things.

Maybe the kind of software engineering role I love is going to disappear, like stevedores and lamplighters. I will miss it dearly, but at least I guess I got a couple of good decades out of it. If this is what the job turns into, I'll have to find something else to do with my remaining years.

bmink

8 months ago

I feel this so much.

I am always amazed how so many software engineers seem to dislike coding, which seems to be a major underlying theme in the AI-coding cheerleading.

Coding never feels tedious to me. Talking to a chatbot, now that’s tedious.

Kilenaitor

8 months ago

God. Thank you.

> But the last fucking thing I want to do is delegate all the code writing to someone or something else

I talked about this a few days ago with coworkers and I phrased it almost exactly this way. I want to be an IC. I want to do the work. Becoming a manager-of-one to funnel all my work through would deprive me of genuinely my greatest joy in life.

I'm envious you managed a few good decades. I'm almost eight years into what has been my dream profession and to see indications it's going to morph from writing code into telling a robot to write code is just so demoralizing. I could have done this for decades. I wanted to do this for decades.

molochai

8 months ago

Same, thank you.

I have a friend and coworker who is currently struggling with this thing and similar "not making anything" issues from having worked a "maintenance/support" job consisting of little day-to-day make-creation. He took a leave for two months. I really don't think he's coming back.

It is a loss for people he works with and the things he touches. Not to mention a loss for me, because he was the one person I found at my current job with the "make stuff, be useful" attitude. Already people who see that writing on the wall are dropping out.

Sooner or later, me too, if that is in fact the way it goes. The only thing that really keeps me going is that I don't have anything else to turn to, and I do have some cloudy optimism about getting a lot of money and satisfaction in a couple years to help clean up or rework the garbage-deluge.

Your other comment about extroversion makes me think of Gifts Differing (not the best book in the universe, but some good bits especially around intro/extroversion). I just want to hit flow state and smash my head into a problem that costs me sleep and come out on top bloodied but happy and feeling like I've done something. And this is/was a really great career for that.

> This faculty of concentration is likely to characterize the introverts' careers. Whereas extraverts tend to broaden the sphere of their work, to present their products early (and often) to the world, to make themselves known to a wide circle, and to multiply relationships and activities, the introvert takes the opposite approach. Going more deeply into their work, introverts are reluctant to call it finished and publish it, and when they do, they tend to give only their conclusions, without the details of what they did. This impersonal brevity of communication narrows their audience and fame, but saves them from overwhelming external demands and allows them to return to another uninterrupted stretch of work. As Jung is reported to have said, the introverts' activity thereby gains in depth and their labor has lasting value.

citizenpaul

8 months ago

That snippit you quoted sounds like what some aristocratic fop that has never worked a day in their life creative writes while they are LARP'ing what they think the poor's ideal workday would sound like in an AI sales pitch meeting.

It rings about as authentic as "everybody stood up and clapped"

alex_suzuki

8 months ago

Thank you so much for writing this. I started feeling like an oddball after reading most of the previous comments here.

dottedmag

8 months ago

Thank you, that's what I feel too.

For me switching the career, after spending more than 20 years in this as well... is very hard. I spent all my career outside of high-pay places like SV telling myself "I have all the time in the world, I don't need to grab most amount of money as soon as possible", so retiring is not an option.

So, switch to what? Any well-paid profession is going to be under pressure to be LLMized as much as possible.

user

8 months ago

[deleted]

Mofpofjis

8 months ago

> I got into programming because I like programming, not because I like asking others to write code on my behalf and review what they come up with

oh finally someone else who didn't enter programming because, as 7-10 year old child, they were into SOLVING PRACTICAL PROBLEMS FOR PEOPLE.

> But the last fucking thing I want to do is delegate all the code writing to someone or something else

Thank God there is at least one other person that understands that the ratio between creative and reactive work is crucial for wellbeing at the job.

For crying out loud.

> but if I ever get to the point that I feel like I spend my entire day in virtual meetings with AI agents, then I'm changing careers

so am I.

> but at least I guess I got a couple of good decades out of it

Thanks for this perspective. Yes, at least we've got our memories, and the code locations and commits we recall from memory, from a distance of 10 or more years.

>. If this is what the job turns into, I'll have to find something else to do with my remaining years

Me too.

GenshoTikamura

8 months ago

> I get up in the morning to make things, not to watch others make things.

If you ever followed down the rabbit hole of children content on YouTube, the one that infants and toddlers end up after an hour of autoplay with some innocent cartoon at the beginning, you'd find among the piles of morbid psychotic trash a variety of videos of children watching someone else playing some games, a whole class of videos in itself.

I can't explain this with anything else but a coordinated effort to flash the norm of watching someone/something doing something as opposed to being engaged in immediate action yourself into the firmware of future people. This lines up with many other current trends pretty well. Talk about incrementing Baudrillard's level of simulation a notch up.

ChicagoDave

8 months ago

There are many aspects to AI push back.

- all creatives are flat against it because it’s destroying their income streams and outright stealing their intellectual property

- some technical leaders are skeptical because early returns were very bad and they have not updated their investigations to the latest tools and models, which are already significantly ahead of even six months ago

- a tech concern is how do we mentor new developers if they don’t know how to code or develop logic. LLMs are great IF you already know what you’re doing

- talent is deeply concerned that they will be reduced and replaced, going from high paying careers to fast food salaries

We have a lot of work to balance productivity with the benefits to society. “Let them eat cake,” is not going to work this time either.

gyomu

8 months ago

Yes, this is a solid succinct summary.

I’d also extend the last point:

> talent is deeply concerned that they will be reduced and replaced, going from high paying careers to fast food salaries

The delta in that money going to the investor/tech exec instead. Yet another wealth transfer from the middle class to the 0.01%.

cookiengineer

8 months ago

Seeing everything these days being about vibe coding, I feel a little old with my VIM setup and my LSP servers who I already thought were a nice productivity increase.

The problems I have with the stuff relating to MCP is that the tech around it is developing so fast that it's hard for outsiders to catch up with what the best working setup is, for example.

What would you do, for example, if you want to selfhost this?

- which models (qwen ai coder?)

- which api (with ollama? Bolt? Aider? Etc)

- how to integrate PRs with a local gitlab/gogs/forgejo instance? Do you need another MCP agent for git that does that?

- which hardware dependencies to run it?

I am currently trying to figure out how to implement a practical workflow for this. So far I'm using still a synchronous MCP agent setup where it basically runs on another machine in the network because I have a too unperformant laptop to work with.

But how would I get to the point of async MCP agents that can work on multiple things in my Go codebases in parallel? With the mentioned PR workflows so that I can modify/edit/rework before the merges?

The author makes a lot of claims and talks always about that their opponents in the argument are not talking about the same thing. But what exactly is the same thing, which is reproducible locally for everyone?

ethagnawl

8 months ago

I haven't even gotten around the integrating LSPs into my vim workflow -- I feel positively ancient.

komali2

8 months ago

The self hosted and vim / nvim / emacs integrated llm / agentic / MCP situation is being implemented real time as we speak. There's no good canonical solution right now, especially for self hosting. If you are willing to make API calls to openapi or Microsoft, your options expand dramatically.

I think most people are using off the shelf paid solutions like cursor, windsurf, warp terminal, Claude code.

I'd love to get a set up with a locally hosted full version of deepseek.

jrop

8 months ago

I use vim as well, and one editor-agnostic coding assistant that is pretty decent is Aider. It is a little buggy sometimes, but it's been a blast to experiment with. I run it in a separate split with Tmux. Its whole schtick is to use it as a pair programming device. So I'll edit code in one split and use Aider in another, alternating at key points. This has worked pretty well for personal projects. I typically don't do this at $dayjob, though.

retrac

8 months ago

Machine translation and speech recognition. The state of the art for these is a multi-modal language model. I'm hearing impaired veering on deaf, and I use this technology all day every day. I wanted to watch an old TV series from the 1980s. There are no subtitles available. So I fed the show into a language model (Whisper) and now I have passable subtitles that allow me to watch the show.

Am I the only one who remembers when that was the stuff of science fiction? It was not so long ago an open question if machines would ever be able to transcribe speech in a useful way. How quickly we become numb to the magic.

threePointFive

8 months ago

Can someone comment on the cost of running agentic models? Not for a company but for an individual. I tried "vibe coding" a personal project I was struggling with and left even more frustrated because I kept running into token rate limits with Claude (used inside of Zed if it matters). Did I pick the wrong model, the wrong editor, or do I just need to not be so tight with my money?

matt_s

8 months ago

> This was the craftsman’s ‘Golden Age’ and much time and trouble was taken over the design of tools. Craftsmen were being called upon to do more skilful and exacting work and the use of tools and the interest in development had become very widespread.

Above pulled from A Brief History of the Woodworking Plane [0]. A woodworking tool that has evolved over 2,000 years. Now there are electric planers, handheld electric planers and lots of heavy machinery that do the same thing in a very automated way. If a company is mass producing kitchen cabinets, they aren't hand planing edges on boards, a machine is doing all that work.

I feel like with AI we are on the cusp of moving beyond a "Golden age" and into an "industrial age" for coding, where it will become more important to have code that AI understands vs. something that is carefully crafted. Simple business pressure will demand it (whether we like it or not).

^ A comment I made just yesterday on a different thread.

For software developers AI is like the cabinet maker that gets a machine to properly mill and produce cabinet panels, sure you can use a hand plane to do that but you're producing a very different product and likely one that not many people will care about, possibly not even your employer when they see all the other wood shops pumping out cabinetry and taking their market share.

[0] https://www.handplane.com/879/a-brief-history-of-the-woodwor...

jatins

8 months ago

Everything about that is true but, and that's a big BUT, the code I write with LLM I can only iterate on it with an LLM.

My mind doesn't develop a mental model of that code, I don't know where the relevant parts are, I can't quickly navigate through it and I have to reach the LLM for every small change.

Which is why I like Copilot style editing more than agents as a working model but agents are just so much more powerful and smarter thanks to everything available to them.

flkiwi

8 months ago

I tend to agree with the gist of this, namely that the change is here and "AI" presents some huge potential to save me from having to do the tedious stuff. But we do need a bit of a sanity check. I'm in the middle of trying to convince any of the AIs that I have access to to write me some simple Lua. Specifically, I'm trying to write a query that returns a certain subset of pages from the Silverbullet V2 note tool. This isn't particularly difficult, but it's become this hilarious journey to try to get the AI to figure this problem out. Silverbullet is a niche use case, v2 even more so, but a reasonably skilled developer could peruse the API documentation and come up with a pretty good starting point. AI tools? Absolutely insane wrong answers. I finally specifically asked one or two of them not to guess with their answers and they just straight up said "nah, we don't know how to do this."

Point being: there's some real power in these tools, but if the ground is not already well-trodden, they risk creating a huge time sink that could be better served just learning to do the thing yourself.

fellowniusmonk

8 months ago

I think the hardest part is not spending the next 3 months of my life in a cave finishing all the hobby/side projects I didn't quite get across the line.

It really does feel like I've gone from being 1 senior engineer to a team that has a 0.8 Sr. Eng, 5 Jrs. and one dude that spends all his time on digging through poorly documented open source projects and documenting them for the team.

Sure I can't spend quite as much time working on hard problems as I used to, but no one knows that I haven't talked to a PM in months, no one knows I haven't written a commit summary in months, it's just been my AI doppelgangers. Compared to myself a year ago I think I now PERSONALLY write 150% more HARD code than I did before. So maybe, my first statement about being 0.8 is false.

I think of it like electric bikes, there seems to be indication that people with electric assist bikes actually burn more calories/spend more time/go farther on an electric bike than those who have manual bikes https://www.sciencedirect.com/science/article/abs/pii/S22141....

timr

8 months ago

As someone who has spent the better part of today fixing the utter garbage produced by repeated iteration with these supposedly magical coding agents, I'm neither in the camp of the "AI skeptic" (at least as defined by the author), nor am I in the camp of people who thinks these things can "write a large fraction of all the tedious code you’ll ever need to write."

Maybe I'm doing it wrong, but I seem to have settled on the following general algorithm:

* ask the agent to green-field a new major feature.

* watch the agent spin until it is satisfied with its work.

* run the feature. Find that it does not work, or at least has major deficiencies [1]

* cycle through multiple independent iterations with the agent, doing something resembling "code review", fixing deficiencies one at a time [2]

* eventually get to a point where I have to re-write major pieces of the code to extract the agent from some major ditch it has driven into, leading to a failure to make forward progress.

Repeat.

It's not that the things are useless or "a fad" -- they're clearly very useful. But the people who are claiming that programmers are going to be put out of business by bots are either a) talking their book, or b) extrapolating wildly into the unknown future. And while I am open to the argument that (b) might be true, what I am observing in practice is that the rate of improvement is slowing rapidly, and/or the remaining problems are getting much harder to solve.

[1] I will freely grant that at least some of these major deficiencies typically result from my inability / unwillingness to write a detailed enough spec for the robot to follow, or anticipate every possible problem with the spec I did bother to write. T'was ever thus...

[2] This problem is fractal. However, it's at least fun, in that I get to yell at the robot in a way that I never could with a real junior engineer. One Weird Fact about working with today's agents is that if you threaten them, they seem to do better work.

fifticon

8 months ago

By the reply count it appears this post was excellent at trolling HN's core audience :-). The author may be right, but his preface "look I'm one of you" was in a very different tone to the rest of his "now shut up and get to work" rant.

I do use the AI tools to some extent, if for no other reason than that they are currently the path of least resistance, and google+friends have lately played themselves out of the game.

He is probably right we should get acquainted with using agents before dismissing it :-).

jsheard

8 months ago

> But all day, every day, a sizable chunk of the front page of HN is allocated to LLMs: incremental model updates, startups doing things with LLMs, LLM tutorials, screeds against LLMs. It’s annoying!

You forgot the screeds against the screeds (like this one)

meander_water

8 months ago

I suspect a large proportion of claims made for productivity increases are skewed by the fact that the speed at which code is produced by AI makes you _feel_ productive, but these gains are largely replaced by the effort to understand, refactor, review and clean up the code. The high that you get when something "works" tends to stick more in your memory than the time when you had to spend a day cleaning up dead code, refactoring 2k line modules into a more readable project structure etc.

I'm not saying that AI can't make you productive, it's just that these claims are really hard to verify. Even the recently posted Cloudflare OAuth worker codebase took ~3 months to release (8 Mar - 20 May), producing a single file with >2k lines. Is that going to be harder to maintain than a codebase with a proper project structure that's easily parseable by a human?

SKILNER

8 months ago

Let's just imagine we're critiquing cars or planes in about 1910. They're so flawed. No one can say with certainty whether or how they will improve.

Side note of interest, from Wikipedia: "Flying Machines Which Do Not Fly" is an editorial published in the New York Times on October 9, 1903. The article incorrectly predicted it would take one to ten million years for humanity to develop an operating flying machine.

pier25

8 months ago

I'm mostly skeptical about AI capabilities but I also think it will never be a profitable business. Let's not forget AI companies need to recoup a trillion dollars (so far) just to break even [1].

VCs are already doubting if the billions invested into data centers are going to generate a profit [1 and 2].

AI companies will need to generate profits at some point. Would people still be optimistic about Claude etc if they had to pay say $500 per month to use it given its current capabilities? Probably not.

So far the only company generating real profits out of AI is Nvidia.

[1] https://www.goldmansachs.com/insights/articles/will-the-1-tr...

[2] https://www.nytimes.com/2025/06/02/business/ai-data-centers-...

JoshTriplett

8 months ago

> but the plagiarism

This entire section reads like, oddly, the reverse of the "special pleading" argument that I usually see from artists. Instead of "Oh, it's fine for other fields, but for my field it's a horrible plagiarism machine", it's the reverse: "Oh, it's a problem for those other fields, but for my field get over it, you shouldn't care about copyright anyway".

I'm all for eliminating copyright. The day I can ignore the license on every single piece of proprietary software as I see fit, I'll be all for saying that AIs should be able to do the same. What I will continue to complain about is the asymmetry: individual developers don't get to violate individual licenses, but oh, if we have an AI slurp up millions of codebases and ignore their licenses, that's fine.

No. No, it isn't. If you want to ignore copyright, abolish it for everyone. If it still applies to everyone else, it should still apply to AIs. No special exceptions for mass-scale Open Source license violations.

jsnell

8 months ago

> Almost nothing it spits out for me merges without edits. I’m sure there’s a skill to getting a SOTA model to one-shot a feature-plus-merge!

How does this section fit in with the agent section just after? In an agentic model, isn't the merge getting done by either the model or a tool, and the retry-loops on failures would be mostly invisible?

E.g. when using Aider + Gemini Flash 2.5, probably 90% of the changes apply cleanly from my perspective (maybe half actually apply cleanly, the other half after a couple of roundtrips of Aider telling the model that the patch didn't apply). The 10% that only apply partially I usually throw away and redo the prompt, it's really rare that I start merging the code manually.

api

8 months ago

A big problem is that you're either hearing breathless over the top insane hype (or doomerism, which is breathless over the top hype taken to a dark place) or skepticism that considers AI/LLMs to be in the same league as NFTs.

Neither of these is accurate, but I guess nuanced thinking or considering anything below surface vibes is out these days.

So far after playing with them I'm using them as:

1. A junior intern that can google really really fast and has memorized a large chunk of the Internet and the library, and can do rough first-pass research and dig for things.

2. Autocomplete 2.0 that can now generate things like boilerplate or fairly pedestrian unit tests.

3. Rubber duck debugging where the rubber duck talks back.

4. A helper to explain code, at least for a first pass. I can highlight a huge piece of code and ask it to summarize and then explain and walk me through it and it does a passable job. It doesn't get everything right but as long as you know that, it's a good way to break things down and get into it.

For those things it's pretty good, and it's definitely a lot of fun to play with.

I expect that it will get better. I don't expect it to replace programmers for anything but the most boring mindless tasks (the ones I hate doing), but I expect it to continue to become more and more useful as super-autocomplete and all the other things I listed.

dvt

8 months ago

Fully agree with @tptacek here:

> But AI is also incredibly — a word I use advisedly — important. It’s getting the same kind of attention that smart phones got in 2008, and not as much as the Internet got. That seems about right.

However, I just don't think the AI coding part is that interesting or future-thinking. We're seeing so much more progress in semantic search, tool calling, general purpose uses, robotics, I mean, DeepMind just won a Nobel for goodness' sake.

Don't get me wrong, I use ChatGPT to write all kinds of annoying boilerplate, and it's not too bad at recalling weird quirks I don't remember (yes, even for Rust). But hard problems? Real problems? Zero shot. Novel problems? No way.

> But I’ve been first responder on an incident and fed 4o — not o4-mini, 4o — log transcripts, and watched it in seconds spot LVM metadata corruption issues on a host we’ve been complaining about for months.

I'm going to go ahead and press (X) to doubt on this anecdote. You've had an issue for months and the logs were somehow so arcane, so dense, so unparseable, no one spotted these "metadata corruption issues?" I'm not going to accuse anyone of blatant fabrication, but this is very hard to swallow.

Listen, I also think we're on the precipice of re-inventing how we talk to our machines; how we automate tasks; how we find and distribute small nuggets of data. But, imo, coding just ain't it. Donald Knuth calls computer programming an art, and to rob humanity of effecting not just coding—but any art, I'd argue—would be the most cardinal of sins.

leoh

8 months ago

>but it’s bad at rust

I have to say, my ability to learn Rust was massively accelerated via LLMs. I highly recommend them for learning a new skill. I feel I'm roughly at the point (largely sans LLMs) now where I can be nearly as productive in Rust as Python. +1 to RustRover as well, which I strongly prefer to any other IDE.

bergen

8 months ago

One point is missing for me - you get lazy. People are less and less equiped to think about complex problems the more they RELY on this for coding. Also this article is just about coding.

kevinsync

8 months ago

Not to derail, but NFT mania (part of the opening salvo in the article) was the giant shitshow that it was -not- because the concept of unique digital bits in the possession of a single owner was a bad idea (or, the concept of unique verification of membership in a club was a bad idea) -- it was a diarrhea-slicked nightmare because it was implemented via blockchains and their related tokens, which inherently peg fluctuating fiat value to the underlying mechanisms of assigning and verifying said ownership or membership, and encourages a reseller's market .. not to mention the perverse, built-in economic incentives required to get nodes to participate in that network to make the whole thing go.

Had NFTs simply been deployed as some kind of protocol that could be leveraged for utility rather than speculation, I think the story would be a complete 180. No clue personally how to achieve that, but it feels like it could be done.. except that, too, would have been completely perverted and abused by centralized behemoths, leading to a different but terrible outcome. Can you imagine if all data became non-fungible? Convince all the big identity vendors (Google, Apple, etc) to issue key pairs to users that then get used by media companies to deliver audio and video keyed only to you that's embedded with maybe some kind of temporal steganographic signature that's hard to strip and can be traced back to your key? It's not just cracking AACS once and copying the bytes. It becomes this giant mess of you literally can't access anything without going through centralized authorities anymore. Then build more anti-patterns on top of that lol. Prolly better that it was mostly just monkey JPEGs and rug pulls.

Anyways, I'm so far off topic from what's actually being discussed -- just couldn't help myself from veering into left field.

thombles

8 months ago

Hmm a bit of a tone shift from: https://fly.io/docs/about/open-source/

> Fly.io builds on the work of a tremendous open source infrastructure community. We want open source authors to benefit from their work because we think a healthy, thriving open source ecosystem will help us build better products.

To the fine article:

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass.

apercu

8 months ago

> My AI skeptic friends are all nuts

My CEO friends that overstate the efficacy of LLMs are all nuts.

(I say this as someone who has been working in "AI" as part of Digital transformation roadmaps for SEVEN years and as someone who has used LLM's daily in my workflow for 3 years).

mattwad

8 months ago

There's a huge caveat i don't see often, which is that it depends on your language for programming. IE. AI is reallllly good at writing Next.js/Typescript apps, but not so much Ruby on Rails. YMMV

bob1029

8 months ago

I am finding the most destructive aspect of LLM assistance to be the loss of flow state.

Most of the time I can go faster than these tools if I have confidence in myself and allow the momentum to build up over the course of 20-30 minutes. Every time I tab out to an LLM is like a 5 minute penalty over what I could have done unaided on a good day.

Getting the model prepared to help you in a realistic domain often takes a few minutes of arranging code & comments so that it is forced toward something remotely sane. I'll scaffold out entire BS type hierarchies just so I can throw a //TODO: .... line in the middle somewhere. Without this kind of structure, I would be handling unfiltered garbage most of the time.

It's not that these tools are bad, it's that we need to recognize the true cost of engaging with them. ChatGPT is like a jackhammer. It will absolutely get you through that concrete slab. However, it tends to be quite obnoxious & distracting in terms of its operational principles.

paradox242

8 months ago

I like Thomas, but I find his arguments include the same fundamental mistake I see made elsewhere. He acknowledged that the tools need an expert to use properly, and as he illustrated, he refined his expertise over many years. He is of the first and last generation of experienced programmers who learned without LLM assistance. How is someone just coming out of school going to get the encouragement and space to independently develop the experience they need to break out of the "vibe coding" phase? I can almost anticipate an interjection along the lines of "well we used to build everything with our hands and now we have tools etc, it's just different" but this is an order of magnitude different. This is asking a robot to design and assemble a shed for you, and you never even see the saw, nails, and hammer being used, let alone understand enough about how the different materials interact to get much more than a "vibe" for how much weight the roof might support.

komatineni

8 months ago

Not a programmer now but my real takeaway from working with developers, enterprises at various stages of adoption: AI / LLM are not magic. The hype still exists but basically AI/LLM are tools. How we use these tools is what makes the enterprises different. unfortunately the quantity hype is '+' by big boys from MS, Goog adding to the noise. Personally, I love to see the quality and most importantly some real examples going beyond coding assistance. Be it automating the QA/QC or even some of the infra

a_bonobo

8 months ago

I find the Konwinski Prize to be very interesting in this context. 1 million dollars to whoever's open source LLM solves >90% of a set of novel Github issues.

https://www.kaggle.com/competitions/konwinski-prize/

Currently, the #1 spot sits at a score of 0.09, not 0.9. A far cry from being useful. I know that open source models are not as good as closed source, but still, we're a long way from LLMs being good for code on their own.

And that supports OP's point - these tools aren't AGI, they produce trash that needs evaluation, but they're still useful.

Aurornis

8 months ago

I tried to take this article seriously, but it seems more like HN ragebait than an actual attempt at discussion. The engagement bait appears to be working, given all of the comments.

It’s like half of the arguments are designed as engagement bait with logical consistency being a distant concern:

> If hallucination matters to you, your programming language has let you down.

This doesn’t even make sense. LLMs hallucinate things beyond simple programming language constructs. I commonly deal with allusions to functions or library methods that would be great if they existed, but the LLM made it up on the spot.

The thing is, the author clearly must know this. Anyone who uses LLMs knows this. So why put such a bizarre claim in the article other than as engagement bait to make readers angry?

There are numerous other bizarre claims throughout the article, like waving away the IP rights argument because some programmers pirate TV shows? It’s all so bizarre.

I guess I shouldn’t be surprised to scroll to the bottom and see that the author is a HN comment section veteran, because this entire article feels like it started as a reasonable discussion point and then got twisted into Hacker News engagement bait for the company blog. And it’s working well, judging by the engagement counts.

smy20011

8 months ago

> Often, it will drop you precisely at that golden moment where shit almost works, and development means tweaking code and immediately seeing things work better. That dopamine hit is why I code.

Only if you are familiar with the project/code. If not, you were throw into a foreign codebase and have no idea how to tweak it.

benregenspan

8 months ago

One other thing that might feed into skepticism is that, for the average person who does not actively choose to use LLMs, the most regular LLM interaction is likely to be with AI Overviews in Google search, which are generally a pretty unfortunate experience. For example my last search with an AI Overview, for interpretation of blood pressure reading, resulted in the output: "Systolic pressure (top number): 123 mmHg, which is within the normal range of less than 120 mmHg".

The fact that LLMs can generate this kind of output is not incompatible with the OP's argument about how useful they can be when combined with agents and code review. But search is the lowest-friction way for anyone to interact with LLMs currently, and right now it's a pretty poor advertisement.

skywhopper

8 months ago

This is one of the most obnoxious things I’ve ever read. “I’m right and every vague straw man I can think of is stupid and naive.” Great. Why did you write this?

onepremise

8 months ago

These systems do work, quite well. Especially the latest release of Claude. Palantir is using AI to process your IRS information without your consent, https://archive.is/QAY9E. This should concern everybody. Not only can this information be used to determine specific account details. They can use this to target individuals which don't align with the current administration's agenda, as well exclude hiring base of political alignment. They could also use this data to exclude and discriminate those against Peter Theil's network state agenda aka "Freedom Cities", but it seems everybody is complacent with that.

drodgers

8 months ago

> "LLMs can’t write Rust"

This really doesn't accord with my own experience. Using claude-code (esp. with opus 4) and codex (with o3) I've written lots of good Rust code. I've actually found Rust helps the AI-pair-programming experience because the agent gets such good, detailed feedback from the compiler that it can iterate very quickly and effectively.

Can it set up great architecture for a large, complex project from scratch? No, not yet. It can't do that in Ruby or Typescript either (though it might trick you by quickly getting something that kinda works in those languages). It think that will be a higher bar because of how Rust front-loads a lot of hard work, but I expect continuing improvement.

exfalso

8 months ago

I was skeptical at first, but after trying to use it several times for work (Cursor/Claude) I concluded that it's worse than I thought. Lot more time wasted for little to no results. Maybe for boilerplate frontend code or TODO app generation it's good or something?

Anyway in a couple of months I'll try again. Until that time, I guess the search result summaries are nice?

stock_toaster

8 months ago

> pull in arbitrary code from the tree, or from other trees online, into their context windows,

I guess this presupposes that it is ok for 3rd parties to slurp up your codebase? And possibly (I guess it ostensibly depends on what plan you are on?) using that source code for further training (and generating that same code for others)?

I imagine in some domains this would not be ok, but in others is not an issue.

satisfice

8 months ago

You know what, I can use the word “fuck” too, just like this pro coder does: I’m fucking tired of these fucking nuts who act as if there is no problem at all having AI mess with my code. It harms my relationship with my code! It reduces my agency. It threatens my accountability.

He implies that if I am talking about some other flavor of AI than he personally uses than I am just not serious— but that’s what they said six months ago and two years ago. These fucking boosters have already blown their credibility.

If you want to prove that AI agents writing code for you is safe then perform a large scale test and show your results. We’re not crazy for doubting you. You are crazy for not doubting yourself.

marginalia_nu

8 months ago

It's so all-or-nothing this debate. If you're drawing a benefit from using AI tools, great. If you aren't, then maybe don't use them, or try some other approach to using them.

Personally I find AI coding tools situationally useful. I certainly wouldn't use them to write all my code, but I also think I'd be a fool not to leverage them at all.

bawolff

8 months ago

Sometimes i feel like people who really like AI have a very different experience programming then i do.

They are constantly talking about AI doing all the tedious boilerplate bullshit. Don't get me wrong, some of my code is that too and its not fun. However the pro-AI people talk as if 80% of your day is dealing with that. For me its simply a rare enough occurence that the value proposition isn't that big. If that is the killer app of AI, it just doesn't sound that exciting to me.

greybox

8 months ago

> As a mid-late career coder, I’ve come to appreciate mediocrity. You should be so lucky as to have it flowing almost effortlessly from a tap.

If the kind of work this person is doing requires no thought, then of course an LLM will be perfect for it.

lolinder

8 months ago

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

This kind of guilt-by-association play might be the most common fallacy in internet discourse. None of us are allowed to express outrage at the bulk export of GitHub repos with zero regard for their copyleft status because some members of the software engineering community are large-scale pirates? How is that a reasonable argument to make?

The most obvious problem with this is it's a faulty generalization. Many of us aren't building large-scale piracy sites of any sort. Many of us aren't bulk downloading media of any kind. The author has no clue whether the individual humans making the IP argument against AI are engaged in piracy, so this is an extremely weak way to reject that line of argument.

The second huge problem with this argument is that it assumes that support for IP rights is a blanket yes/no question, which it's obviously not. I can believe fervently that SciHub is a public good and Elsevier is evil and at the same time believe that copyleft licenses placed by a collective of developers on their work should be respected and GitHub was evil to steal their code. Indeed, these two ideas will probably occur together more often than not because they're both founded in the idea that IP law should be used to protect individuals from corporations rather than the other way around.

The author has some valid points, but dismissing this entire class of arguments so flippantly is intellectually lazy.

popalchemist

8 months ago

This guy may be right about a lot of things said here but he's smug and it's off-putting. preaching to the choir.

nixpulvis

8 months ago

I keep talking to people who've had a good bit of success using gemini or cluade to build quick prototype front ends for some applications. I think theres some questions in my head of how well the process scales when you want to keep adding features, but according to them it's not been hard getting it to make the needed changes.

My issue with it is that it gates software development behind paid services with various levels of context supported. Absolutely not the dream I have of how more software should be open source and everyone should be empowered to make the changes they need.

Aziell

8 months ago

I was a bit skeptical at first too, but once I let AI dive into my code, run tests, refactor functions, and even catch its own bugs, it felt like I suddenly had a really competent teammate. AI has been genuinely helpful for me , it saves time and lets me focus on the things that actually matter.

eqvinox

8 months ago

> but the plagiarism […] Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

Speeding is quite common too, yet if you get caught — especially overdoing it — you'll have a problem.

Also, in this case, presumably everything produced with AI is fair game too? The argument being made here isn't even "it's not plagiarism", rather "it's plagiarism but I don't care" — why would anyone else respect such an author's copyrights?

manoji

8 months ago

> Think of anything you wanted to build but didn’t. You tried to home in on some > first steps. If you’d been in the limerent phase of a new programming > language, you’d have started writing. But you weren’t, so you put it off, for a > day, a year, or your whole career.

> I can feel my blood pressure rising thinking of all the bookkeeping and Googling and dependency drama > of a new project. An LLM can be instructed to just figure all that shit out. > Often, it will drop you precisely at that golden moment where shit almost works, and development means > tweaking code and immediately seeing things work better. That dopamine hit is why I code.

This is me . Just yesterday I finished something I have been putting off for 2 years. I maintain 2 mobile phones one because of work and i needed a way to see sms messages from the other phone. I wanted to write a simple andoird app that reads incoming messages and saves them somewhere for me to use for OTP's and other stuff. For the longest time I wanted to build something like this for myself but I have been putting it off just because of all the weird issues i had been getting with mobile development. A couple of days ago since I had some time and I fired up gemini and asked it to write me a simple flutter app for and to save the messages to supabase and voila it was amazing . With some help and some tweaking I have a fully functioning mobile app on andoird , a small tauri application on desktop to read the messages nicely formatted in a data table without much coding on my part at all. Truly remarkable.

terminatornet

8 months ago

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

Loved this style of writing in 2005 from Maddox on the best site in the universe or whatever.

Sorry if I don't want google and openAI stealing my or anyone else's work.

xvilka

8 months ago

The problem is not about quality of the code, it simply almost never works. Just tried some models still in beta on the code of one of the C projects and, while some pieces were okay and could be used as is, some are complete garbage and wouldn't even compile. Maybe few years later it will not become a problem but right now they are useless. For the AI-assisted research and internet search, that's a different thing and works pretty well already.

raspasov

8 months ago

“I work mostly in Go.”

That should have been the start of the essay.

New title: LLMs make Go programming feel good

ddoolin

8 months ago

I have been using agentic AI to help me get started writing an OpenGL-targeted game from scratch (no engine). I have almost no background experience with computer graphics code, but I understand most of the fundamentals pretty well and I have almost 13 years of software experience. It's just that the exact syntax as well as the various techniques used to address common problems are not in my arsenal yet.

My experience has been decent. I don't know that it has truly saved me much time but I can understand how it FEELS like it has. Because it's writing so much code (sometimes), it's hard to vet all of it and it can introduce subtle bugs based on faulty assumptions it made about different things. So, it will dump a lot of code at once, which will get me 90% of the way there, but I could spend an hour or two trying to nudge it to fix it to get it to 100%. And then I will probably still need to go back and reorganize it, or have it go back and reorganize it. And then sometimes it will make small adjustments to existing, committed code that will subtly break other things.

Something that has surprised me (in hindsight, it isn't surprising) is that sometimes when I feel like it misunderstood something or made a faulty assumption, it was actually me that had the misunderstanding or ignorance which is humbling at times and a good learning experience. It is also pretty good at bug hunting and DEFINITELY very good at writing unit tests.

I count myself as pretty lucky that this domain seems to be very well covered in training. Given the law of averages, most people's domains will probably be covered. I'm not sure how it would fare with a niche domain.

sarchertech

8 months ago

This article feels incredibly defensive. If you have really have a technique that makes you 100x, 50x, or even just 2x more productive, you don’t need to write an article calling people who don’t agree with you nuts.

You keep using that tool, to your advantage. I’d you’re really altruistic you post some videos of how productive you can be like DHH did with his blog in 15 minute videos.

If you’re really that much more productive, the skeptics won’t be able to keep up and it should only take 6 months or some for that to become self evident.

djaychela

8 months ago

"If hallucination matters to you, your programming language has let you down."

But every time I try this,this happens. I've tried the same thing on multiple agents and they all make up some magic api that doesn't exist, even when I've used the right thing elsewhere in the code to do the same job with that function commented as such. Asking them to use that always fails.

This seems a massive flaw to me that is just hand waved away here.

hn_throwaway_99

8 months ago

I felt this article was a lot of strawman-ing.

Yes, there are people who think LLMs are just a fad, just like NFTs, and I agree these people are not really serious and that they are wrong. I think anyone who has used an AI coding agent recently knows that they are highly capable and can enhance productivity in the right hands.

But, as someone who gets a lot of value in AI coding agents, my issue is not with gen AI as a productivity enhancing tool - it's with the absolute torrent of BS about how AI is soon going to make coders obsolete, and the way AI has been shoved onto many engineering teams is like yet another incarnation of the latest management fad. My specific arguments:

1. As the author pretty much acknowledges, AI agents still basically suck at large, system-wide "thinking" and changes. And the way they work with their general "guess and check" method means they can churn out code that is kinda sorta right, but often leaves huge holes or outright laughable bugs.

2. Hallucinations are the worst possible failure modes - they look correct, which makes it all the more difficult to determine they're actually bullshit. I shudder to think about who will need to maintain the mountains of "vibe code" that is now being generated. Certainly not fucking me; I had a good career but I think now is definitely the right time to peace out.

3. Even if I could totally agree that there is a strong business case for AI, I can still, as an individual, think it makes my job generally shittier, and there is nothing wrong with having that opinion.

I don't think I'd be so anti-AI if I saw a rational, cautious debate about how it can enhance productivity. But all I see are folks with a vested interest overselling its capabilities and minimizing its downsides, and it just feels really tiresome.

ww520

8 months ago

I use LLM as a super Stackoverflow. So far it has been helpful. For code gen, 8 out of 10 cases, the code won't compile and need fixing. LLM did help a lot in learning new topics. Gemini did help tremendously recently in pointing out a new approach to a problem I was stumped on. Though the code it generated was garbage, the code did provide insight on a new approach which I adopted to make it work eventually.

alkonaut

8 months ago

I can’t even get copilot to autocomplete 5 working lines consistently. I spend hours every day arguing with ChatGPT about things it’s hallucinating. And Agents? It took me a year to convince anyone to buy me a copilot subscription. It’s not good enough now? But it was the bees knees just a year or two ago? See I hate the thing where the JS-framework tempo thing happens to the part of the software world I’m in.

iLoveOncall

8 months ago

I simply do not get this argument about LLMs writing tedious code or scaffolding. You don't need or want LLMs for that, you want libraries and frameworks.

I barely write any scaffolding code, because I use tools that setup the scaffolding for me.

imiric

8 months ago

> People coding with LLMs today use agents. Agents get to poke around your codebase on their own. They author files directly. They run tools.

I'll be damned if I give up control of my machine to a tool that hallucinates actions to take using hastily put together and likely AI-generated "agents". I still want to be the primary user of my machine, and if that means not using cutting edge tools invented in the last 6 months, so be it. I don't trust the vast majority of tools in this space anyway.

> I’m sure there are still environments where hallucination matters.

Still? The output being correct matters in _most_ environments, except maybe art and entertainment. It especially matters in programming, where a 99% correct program probably won't compile.

> But “hallucination” is the first thing developers bring up when someone suggests using LLMs, despite it being (more or less) a solved problem.

No, it's not. It's _the_ problem that's yet to be solved. And yet every AI company prefers chasing benchmarks, agents, or whatever the trend du jour is.

> I work mostly in Go. [...] LLMs kick ass generating it.

I also work mostly in Go. LLMs do an awful job generating it, just as with any other language. I've had the same shitty experience generating Go, as I've had generating JavaScript or HTML. I've heard this excuse that the language matters, and IME it's just not the case.

Sure, if you're working with an obscure and niche language for which there is less training data, I suppose that could be the case. But you're telling me that there is no good training data for Rust, the trendiest systems language of the past ~decade? C'mon. Comparing Rust to Brainfuck is comical.

I won't bother responding to all points in this article. I will say this: just as AI doomsayers and detractors deserve criticism, so does this over-the-top praising. Yes, LLMs are a great technology. But it is also part of a wildly overhyped market that will inevitably crash as we approach the trough of disillusionment. Their real value is somewhere in the middle.

TheAlchemist

8 months ago

His arguments are mostly right I would say. I tend to use a bit of LLMs for coding - just Copilot though - and I do like how it quite often saves me time with autocomplete spanning entire lines.

ChatGPT is also pretty usefull - especially for naming things.

However, on a global scale, I would compare the shift towards 'vibe coding' and massive LLMs use to the one we got when people doing the coding don't even know what Assembly even is. Current state of software is that it's incredibly bloated and slow (and I do love python). Doesn't matter that much since we've got massive improvements in hardware, but still. In 5 years, instead of not really realizing that we're writing slow and bloated code, we will not really realize we're writing incorrect code.

I don't know anything about web developement, but in the environements I've seen during my career - where most code is quite critical and a stupid mistake, one that an LLM could easily hallucinate, can cost a lot - I don't see it replacing humans anytime soon. It's a pretty good and usefull tool though.

notnullorvoid

8 months ago

I like LLMs, it's legitimately impressive to see people vibe code solutions (some times even to novel ideas). Agents are a much better use of LLMs than auto complete (which is terrible).

However I've tried coding agents, and well they suck... for me. Nearly all of the code I write these days is performance sensitive, as well as design sensitive (making abstractions for others to use), and not close to what could be considered boilerplate. The boilerplate I do write usually takes a trivial amount of time to write by hand. I'll keep trying whatever is new in AI every few months, I certainly don't want to be left behind, but so far that strategy hasn't left me optimistic.

> but the code is shitty, like that of a junior developer

It's worse than a junior. Juniors learn and grow, if they're a good junior it's often fairly rapid and self directed. Juniors can also ask for guidance or help, this is something maybe agents will be capable of in the future, but I could see it going pretty poorly for reasons tied to the first point about not learning. While LLMs contain a ton of information, more than a junior could, the junior is a better reasoning machine; I don't consider LLM "reasoning" to be anything close to the meatbag version.

> but the craft

Craft matters, it's important to enjoy and take pride in your work. If you enjoy managing AI agents that's fine, lots of programmers end up on the manager career path, but it's not for everyone.

James_K

8 months ago

Use of LLMs to program really doesn't make much sense. The very nature of computer software is that it's a small effort from a small number of people that is multiplied out to massive productivity gains for a large number of people. Unless the LLM is producing better output than the people would, you are saving time for a small number of people in exchange for degrading the experience of a much larger number of people. If your AI-coded app goes down for a day and you have to vibe-debug it, that is probably gonna put you in the red from a time perspective.

With the amount of supervision you need to give this stuff, I can't see it being useful for much more than auto-completing the next few lines of code as you type. You've got to read and go over the whole output carefully anyway, so you might as well have finer grained control over it.

agentultra

8 months ago

I just don’t like using AI tools. It’s absolutely boring. If you like that, fine.

Me? I like programming.

voxl

8 months ago

I have a very simple counter argument: I've tried it and it's not useful. Maybe it is useful for you. Maybe even the things you're using it for are not trivial or better served by a different tool. That's fine, I don't mind you using a tool far away from my codebase and dependency tree. It has not been useful for me, and it's very unlikely it's ever going to be.

Except that's not the argument people are making. They are arguing it will replace humans. They are arguing it will do research level mathematics. They are arguing this is the start of AGI. So if you want to put your head in the sand and ignore the greater message that is plastered everywhere then perhaps some self reflection is warranted.

sottol

8 months ago

I think another thing that comes out of not knowing the codebase is that you're mostly relegated to being a glorified tester.

Right now (for me) it's very frequent, depending on the type of project, but in the future it could be less frequent - but at some you've gotta test what you're rolling out. I guess you can use another AI to do that but I don't know...

Anyway, my current workflow is:

1. write detailed specs/prompt,

2. let agent loose,

3. pull down and test... usually something goes wrong.

3.1 converse with and ask agent to fix,

3.2 let agent loose again,

3.3 test again... if something goes wrong again:

3.3.1 ...

Sometimes the Agent gets lost in the fixes but now have a better idea what can go wrong and you can start over with a better initial prompt.

I haven't had a lot of success with pre-discussing (planning, PRDing) implementations, as in it worked, but not much better than directly trying to prompt what I want and takes a lot longer. But I'm not usually doing "normal" stuff as this is purely fun/exploratory side-project stuff and my asks are usually complicated but not complex if that makes sense.

I guess development is always a lot of testing, but this feels different. I click around but don't gain a lot of insight. It feels more shallow. I can write a new prompt and explain what's different but I haven't furthered my understanding much.

Also, not knowing the codebase, you might need a couple attempts at phrasing your ask just the right way. I probably had to ask my agent 5+ times, trying to explain in different ways how translate phone IMU yaw/pitch/roll into translations of the screen projection. Sometimes it's surprisingly hard to explain what you want to happen when you don't know the how it's implemented.

globnomulous

8 months ago

I've only just realized how bad AI is for me, in a manner I didn't at all expect. I don't use it. I don't want to use it. I hate it. As another commenter here nicely put it, I want to do, not tell. I like writing code. I like solving problems. I like doing the work myself. I like struggling and then, the next day, finding that my capabilities have grown.

And yet I'm overwhelmingly demoralized and depressed about AI's encroachment on software engineering, so much so that I am finding it difficult to marshal cognitive resources. I'm finding it harder and harder to engage with coding problems, even though I love programming.

The last thing I expected was that AI, even kept at a distance, would rob me of the joy I find in one of the things I love most.

It so devalues what I do and my basic capabilities as a human being that I kind of want to die. I'll stick around for my daughter, my partner, and any future children, but I'm not optimistic at all about the future.

zmmmmm

8 months ago

I think in a lot of cases the skeptics haven't really witnessed how good LLMs can be for a subset of software engineering tasks. I find for mid-complexity code they are far, far better than I am at coding. Even though I often tweak their solutions, they outweigh that by often identifying APIs and even whole libraries to call where I fully would have set about implementing it myself - either out of ignorance or an assumption that it would be too hard to implement it myself. They also put in much more error checking than I would normally do. Even if I do implement something myself, it's insane not to at least see what the LLM would do to get ideas. The thing is, once I do that, I nearly always come away with the conclusion that I might as well just use the code it made.

greybox

8 months ago

> Does an intern cost $20/month? Because that’s what Cursor.ai costs.

So then where do the junior developers come from? And then where do the senior developers come from?

dominicrose

8 months ago

> but it’s bad at rust

I gave chatgpt (the free desktop web version) my Ruby solution to one of my favorite adventofcode challenges and asked it to write in in Rust. I've no experience in Rust except reading the few first chapters of the book but with the help of the compiler I managed to fix it and it gave the right responses 100x faster than Ruby did. So chatgpt did a great job keeping the logic intact.

I would have done the same thing if LLMs didn't exist, write it in Ruby first and then in Rust. The flexibility and expressiveness of Ruby allows to actually find a working solution. Experienced Rustaceans would do it directly in Rust, but writing in Ruby should be easier and an LLM can transform it.

grumple

8 months ago

Where are the results? I keep hearing about how great these coding agents are. What have you built beyond the complexity of a disposable toy app? Where are the swarms of new apps built by these agents that are solving new problems and taking over markets? I’m just not seeing results. I guess I need to spend some time using cursor as an agent to see it for myself.

I am a believer that these tools will be (if they aren’t already) extremely useful. Game changing in many ways, and I worry about the future of knowledge fields. Definitely not a skeptic in the trajectory. I do wonder if that makes those of us who are on the cutting edge more valuable as AI can quickly reproduce things that are well understood.

cerpins

8 months ago

What worries me about this is that the benefit of well practiced developers using AI to boost their productivity is there, but what happens to the new developers that piggyback off of LLM tooling too much and end up with worse understanding as a whole?

computerfan494

8 months ago

Maybe it's only me, but I just don't write that much code. I try to change less than 100ish lines per day. I try to keep codebases small. I don't want to run a codebase with hundreds of thousands of lines of code in a production environment.

mdavid626

8 months ago

Please stop this. It’s clear to me that you’re not a software engineer. You weren’t one before AI, and you are not one after. You can do whatever you want, but please don’t push this AI narrative down everyones throat. I’ve had enough of this.

kiitos

8 months ago

I read this article completely thru, twice, and I still have no idea what the author is trying to say. All I can read here is a bunch of sarcastic dismissals of stuff that I don't believe and have no way to evaluate.

rorylaitila

8 months ago

I can sum it up like this: if I could know in advance the exact right thing to build, producing the physical code, has not for a long time, been the bottleneck. I've been vibe coding long before it was cool. It's sometimes called model driven development.

For those that think only procedurally, I can see how it helps them. Because procedural first development has a lot of boilerplate logic.

For those who think model first, the AI may help them rubber duck, but ultimately the physical writing of the characters is minimal.

Most of my time is thinking about the data model. The AI writes almost all of my procedures against said data model. But that is about 20% speedup.

techpression

8 months ago

This post feels quite dishonest. Every concern is countered with some variation of ”you’re wrong and I am right”, zero nuance.

I use Claude for specific questions, it works great (but apparently I’m doing it wrong according to the author), code generation doesn’t, I don’t want my boilerplate code to have subtle differences in every file, that’s the worst kind of boilerplate and that’s what I get if I automate it.

There are real world implications of all the infrastructure being built for this too, not to mention the extremely short e-waste cycles during the boom we’re in right now. To me it also seems like LLMs are the wrong thing to solve for, it’s like a gasoline car, make the engine larger and more fuel consuming to go faster and no matter how much you perfect it, it will still be fossil fuel being burnt at a high rate. What’s the alternative, I don’t think we know yet, but if we were a smarter species we would see that this is not it.

kkylin

8 months ago

I found this comment especially interesting: "The code in an agent that actually “does stuff” with code is not, itself, AI. This should reassure you. It’s surprisingly simple systems code, wired to ground truth about programming in the same way a Makefile is. You could write an effective coding agent in a weekend. Its strengths would have more to do with how you think about and structure builds and linting and test harnesses than with how advanced o3 or Sonnet have become."

I haven't used coding agents. Can someone who has (or knows about these things) elaborate, or point me to a good resource? Thanks!

lowsong

8 months ago

Does no-one think ahead, for more than a moment?

> Professional software developers are in the business of solving practical problems for people with code.

Are we? Is that our job? You might think it is, and it might even feel like it. But it is not. Our job, in 99% of cases, is to make stock price go up. That means making software that people will buy, making people want to keep buying it, and doing whatever makes your investors happy.

So what happens as you use these tools? Your job changes from coder to "LLM manager", but let's assume you're happy with that. You're more "productive", which is an artificial metric and nothing to do with your real job as described above. That's fine for now, but what happens down the road? Now your company is paying more and more money to these LLM services, and paying you less and less.

> "but they take-rr jerbs" So does open source.

This is a gross misunderstanding of open source. Most open source developers are paid to be, full time, by companies. Why? Warm fuzzy feeling? Goodness of their heart? No. It's because it's good for business. These open source techs are a baseline, there' not worth being competitive on. Build the open base in the direction you want, and build the "business value" ontop for profit.

> We used to pay good money for databases.

We still do. Have you looked at managed PostgreSQL prices lately? Also if you haven't noticed, Oracle hasn't gone anywhere.

> LLMs really might displace many software developers. That’s not a high horse we get to ride. Our jobs are just as much in tech’s line of fire as everybody else’s have been for the last 3 decades.

This isn't the same thing as replacing punch cards, or moving away from Java 6, or replacing artisans with factory machines. This is centralisation and rent-seeking. As companies become more and more dependant on a handful of companies with the upfront capital to build massive server farms... what do you think is going to happen? Once they've convinced enough people that LLMs are essential to their work it's going to cost a lot more than $20/month. Once these companies are entrenched they will wring every last dollar out of every company that's grown to depend on them, many will simply fold.

Maybe we are in a seismic shift in our industry. But the beneficiaries are not going to be whole-hearted LLM adopters, no amount of saying "you need to change how you work" is going to save any of us. The only people that will benefit are going to be the people that own the data centres.

m0llusk

8 months ago

> If you were trying and failing to use an LLM for code 6 months ago †, you’re not doing what most serious LLM-assisted coders are doing.

Translation: Drop your work and current tools every few months to pick up the shiny new thing or you aren't cool or even sane.

Reality: Your favorite cool new tool will be integrated into development work as it is proven, documented, and time allows. This idea that development must leap onto the latest shiny new thing every few months is extremely corrosive to reasonable business practice. The needs of the many outweigh the preferences of the lead developer.

gigel82

8 months ago

What this boils down to is an argument for slop. Yeah, who cares about the quality, the mediocrity, the craft... get the slop, push it in, call it done. It mostly works in the golden path, it's about 6 or 7 orders of magnitude slower than hand-written software but that's ok, just buy more AWS resources, bill the client, whatever.

I can maybe even see that point in some niches, like outsourcing or contracting where you really can't be bothered to care about what you leave behind after the contract is done but holy shit, this is how we end up with slow and buggy crap that no one can maintain.

palata

8 months ago

Without AI, software is getting worse every year. My question is: will AI resolves that problem, or will it make it worse?

My feeling is that AI will keep the software industry in the same trend: produce more software of lower quality while being more profitable.

People sometimes say "perfect is the enemy of good". But this implies that putting less effort is "good enough". I believe it goes the other way: why would a company put efforts into selling you something good, if it can make you pay the same for something worse? It's all about maximising profit, and AI is no exception there.

fhkatari

8 months ago

This: "Important caveat: I’m discussing only the implications of LLMs for software development. For art, music, and writing? I got nothing. I’m inclined to believe the skeptics in those fields. I just don’t believe them about mine". I want to emphasize this. AI seems like a great 'first draft', but not a 'finished product'. In the hands of a programmer, a first draft is a great start. But pushing AI to frontline workers or customer support fails, as Klarna learned, because a first draft is not good enough.

fjfaase

8 months ago

When I ask chatGTP to generate the code for a M4F MCU that implements the VirtIO code for accessing the GPIO through RPMSG using FreeRTOS it produces two answers that are both incomplete and incorrect.

wat10000

8 months ago

I wonder if it comes down to there being many kinds of programming and this stuff is good for some but not all.

The author describes a world where most code is boring grunt work and most collaborators are mediocre. This world is not familiar to me. I can see LLMs being useful in such a world, but it’s not where I work.

The comment about buying a table instead of building it really stuck with me. We’re the ones who design the table! Saying we should buy one from the store is like saying farmers should buy their food from the store instead of putting in all that work to grow it.

lawn

8 months ago

Not a very bright move from fly to publish this kind of condescending post on the company blog.

Making fun of people who care about copyright (implying that fly abuses GPL for instance) is just icing on the cake.

atakan_gurkan

8 months ago

"If you’re making requests on a ChatGPT page and then pasting the resulting (broken) code into your editor, you’re not doing what the AI boosters are doing. No wonder you’re talking past each other."

This is in fact what I am doing (though I am not trying to convince anyone not to use LLMs). How can I get into this other mode? Any pointers? Do I need to pay up for a service? I do not want to carry out vibe coding, I want to use LLMs to solve physics, math and logic problems/puzzles. I'd appreciate any recommendations.

palata

8 months ago

What an arrogant jerk.

It sounds like someone taking a condescending tone to say that "Fast fashion is great! The clothes are really fine, and being able to wear a t-shirt once and then throwing it away instead of washing it is more convenient. This is most definitely progress. Sustainability? Hmm I can't say, that's not my field of expertise, therefore it's probably not important".

kerryritter

8 months ago

A well articulated blog, imo. Touches on all the points I see argued about on LinkedIn all the time.

I think leveling things out at the beginning is important. For instance, I recently talked to a senior engineer who said "using AI to write programming is so useless", but then said they'd never heard of Cursor. Which is fine - but I so often see strong vocal stances against using AI tools but then referring to early Copilot days or just ChatGPT as their experience, and the game has changed so much since then.

01HNNWZ0MV43FF

8 months ago

Damn. Well I'll spend a few bucks trying it out and I'll ask my employer if they're okay with me using agents on company time, but

But I'm not thrilled about centralized, paid tools. I came into software during a huge FOSS boom. Like a huge do it yourself, host it yourself, Publish Own Site, Syndicate Elsewhere, all the power to all the people, borderline anarchist communist boom.

I don't want it to be like other industries where you have to buy a dog shit EMR and buy a dog shit CAD license and buy a dog shit tax prep license.

Maybe I lived through the whale fall and Moloch is catching us. I just don't like it. I rage against dying lights as a hobby.

martythemaniak

8 months ago

At 0 temperature an LLM is a Map<String,String> - a string input (key) will give you the same string output (value) every time. Hypothesis: there exists a key whose value is a complete, working, fully-tested application which meets your requirements 100% and fulfills your business need. This key is the smallest, most complete description of what your application does. It is written in natural language and represents a significantly compressed version of your application code.

My part-time obsession over the last few months has been trying to demonstrate this and come up with a method for finding these magic keys (I even tried to get the LLMs to search for me, lol). What I really want is to give the latest thinking models (200k input, 100k output) a 5-6 page design doc (4k words, 5k tokens) and have them produce a complete 5kloc (50k tokens) microservice, which would show a 10x compression. It's hard, but I haven't seen any reason to think it wouldn't work.

For better or worse, I think this will be close to what IC jobs will be like in few years. Fundamentally, our jobs are to try work with other functions to agree to some system that needs to exist, then we talk to the computers to actually implement this. If we switch kotlin+compiler for design doc+llm, it still going to be somewhat the same, but far more productive. Agents and such are somewhat of a stop-gap measure, you don't want people giving tasks to machines, you want to accurately describe some idea and then let the computers make it work. You can change your description and they can also figure out their own tasks to evolve the implementation.

Ensorceled

8 months ago

I've been using LLM's pretty regularly for just over a year (my PyCharm AI license just renewed). My experience before that was pretty mixed and fell into the "sort of worth it" category.

It's improved to the point where the summary that I would email a junior developer is a pretty good prompt that produces code pretty close to want I want.

I had a weird project recently where I needed a stand alone event handler that would send an email receipt to the customer, another email to customer service, log the event in an accounting system via an API. I wrote up a proposal for the rest of the management team and, once accepted, pasted the proposal into ChatGPT (and a few others, but ChatGPT gave the best results).

I basically got a full recipe for setting up AWS API Gateway, Lambda, and SES, the Python Lambda function with api calls to SES, suggestions on using AWS SAM, etc. etc. Tweaked the prompt a couple of times and then took over from there. I had this into the hands of the testing team in less than a day.

I'm pretty sure this would reduce my team size in ANY role I've had in my career. Maybe not halve the teams, but it would eliminate a lot of the junior or journeymen developers.

1970-01-01

8 months ago

Everything works right until it doesn't. LLMs are trained on things that have worked. Let's revisit in 2027 when things are insanely faster, but not much better.

moron4hire

8 months ago

I think I figured out a big problem I have with AI, and that is that I just hate using other people's software. The vast majority of software is just garbage. It all tries to take way too much of my attention. It doesn't help that all these AI tools are new, so they are inextricably linked to some SV startup that wants to be the next unicorn, so they have some bullshit account-generation/data-retention/terms-of-service/acceptable-use-policy/remarketing-email-campaing song and dance that is all stuff I have to pay attention to. All I really want to do is sit down and think on my own. I'm constantly inundated with distractions at work, so when I get a few minutes to myself, I sure as hell don't want an AI bot messaging me about reviewing its PR. I don't even want to review the human-written PRs; just push your code already, if it breaks you get to fix it. I certainly don't want a 500th unread email in my inbox.

You know what doesn't constantly nag for my attention? Dead text files on disk. They just sit there, waiting for me to grace them with my presence. That's the way it should be. Computers serve me, not the other way around.

timkofu

8 months ago

I’m gaining more confidence AI is unable to take any of our jobs if this level of marketing is needed to try to convince us it will.

quasimodo_code

8 months ago

I think for most people that do not get value out of AI assisted coding, its a skill or learning issue. I don't care how good of a developer you consider yourself to be. If in 2025, these tools do not provide you significant (to almost absurd) value, you just do not know how to use them, or are to stubborn to push past the initial learning curve. Alternatively, maybe... programming is changing so much with AI, that you just might not see what's happening right infront of your eyes because its so foreign to all the other paradigms in the past.

In 2025 I am about 800-900 hours deep into using Cursor, blowing through 500 credits each 2 days (500 credits = 20$). I also organize a local "vibe code" workshop and meetup, with people from all sorts of experience levels, from no coding experience, to twice my senior. And what I am seeing is that what separates those from those who are good at using AI and those who are not, generally is a level of rigid stubbornness.

I can't wait for time to do its course here and those people who now are "all nuts" to slowly see programming of the past become an old relic.

zombot

8 months ago

> Does an intern cost $20/month? Because that’s what Cursor.ai costs.

And who the fuck will train those interns, now they've been replaced by machines?

Cloudef

8 months ago

LLM fanatics throw me nuts, instead of learned helplessness, at least try to understand what the token predictor outputs and be honest when you used LLM to generate your code dump when asking for help. Otherwise you are just wasting time and being simply a middle man for a machine and person who expects an interaction with actual human being with their valuable time.

kortilla

8 months ago

The premise of “lol, I’m just a dumb developer and just wait until the smart developers catch on” falls extremely flat coming from Thomas.

It kinda invalidates the entire premise because it builds on this false foundation of “look how useful it is to a mere plebeian” and the skills actually required to sift through LLM garbage are what puts you in the top 5% of programmers.

Most senior developers cannot conduct useful code review and spot errors. In every company I’ve been at, there were only 1 in 20 people that would give the useful in-depth reviews required to pick up LLM bullshit.

This style of engagement bait is brutal and it severely overshadows other nuggets of wisdom of how LLMs can be useful.

dev_l1x_be

8 months ago

So the reaso we should not use Rust (a memory safe language that gets rid of categories of bugs) is because some new AI tools are not read?

Using AI for over a year now on a daily basis, most AI tools do not struggle with Rust, they struggle to provide value. If I do not instruct them to keep the output to the bare minimum, I usually end up with 10x the output what would be a simple solution to my problem.

fnordpiglet

8 months ago

FWIW with proper MDC/ rules I’ve found LLM programming agents excellent at rust. There’s a lot of complex and tedious minutiae in rust that I know but forget to apply everywhere it’s helpful while a SOTA LLM agent does well, especially with proper rule guidance to remember to use it.

Generally though I find LLMs have a pretty rapidly diminishing return on what you can expect out of them. They’re like a 3-5 year senior programmer that has really learned their domain well, but doesn’t have the judgement of a principal engineer. You get to a point where you need to reach in and right things and really pay attention, and at that point the diminishing returns set it rapidly and you’re better off just doing the rest yourself. Refactors and stuff can be delegated but that’s about it.

I find this true regardless of the language. None the less, I’ve been able to improve my overall velocity dramatically completing several projects in the last few months in the span of one typically. If tooling improves I hope to continue that but I’m already getting close to the limit of how fast I can conceive of useful creative things.

baxtr

8 months ago

There’s a fine line between being an AGI skeptic and an AI skeptic.

While I don’t believe the “AI will take all jobs” VC tales, I also think not using LLMs in software development workflows is similar to not wanting to use Excel as an accountant in the 1990s.

AI won’t replace all jobs, but companies that cleverly integrate it into their processes will be faster and more efficient compared to those that don’t.

jongjong

8 months ago

I believe that AI is very useful in software development but I don't buy the narrative that AI is responsible for layoffs over the past few years (at least not most of them). I think that narrative is a convenient cover for systemic misallocation which created a need to contain inflation. I think big tech execs understood that, beyond increasing their company stock prices, they also need to work together to keep the monetary system itself under control. This is why they've been firing people whilst having record profits. They've reached such scale and the system has reached such fragility that they have to think and act like economists to keep the thing going. The economy itself has become the responsibility of big tech.

But who knows, maybe AI will accelerate so rapidly that it will fix the economy. Maybe we'll have robots everywhere doing all the work. But I worry about the lack of market incentives for people to adapt AI to real world use cases.

For example, I'm an open source developer who likes to tinker but I've been booted out of the opportunity economy. I can't afford to program robots. People like me are too busy using AI to parse spreadsheets and send targeted ads to even think about automating stuff. We work for companies and have no autonomy in the markets.

If things had worked out differently for me, I'd probably own a farm now and I'd be programming robots to do my harvest and selling the robots or licensing the schematics (or maybe I'd have made them open source, if open source had worked out so well for me). I don't have access to such opportunity unfortunately. The developers who worked for big tech are good at politics but often disconnected from value-creation. Few of them have the skills or interest to do the work that needs to be done now... They will just continue leveraging system flaws to make money, so long as those flaws exist.

keeda

8 months ago

A lot of the doubters are basically saying: "If it's so great, show me proof." While that is usually the right stance, I think it is short-sighted in times of revolutionary change.

To be sure, you definitely should not blindly trust the people who have a stake in selling AI products. However, you probably should trust the people who have no stake in selling AI, but are using it to accelerate themselves. The problem is, these people are probably too busy building things to spare any time convincing you. And in fact, it is a competitive advantage for them if others don't figure it out.

Here's my take: Everyone needs to figure out how AI works for them. The thing with AI is that it is a technology that behaves like people. It has the speed, efficiency and scale of computers but the fallibility and quirks of humans. This is why it's so confusing to discuss, and why folks have such varying experiences. The right approach to working with AI is like working with people: understand what they're good at and where they are weak, and then work with them to achieve your goals.

This will require using it "in anger" on many non-trivial tasks over a significant period of time, which will take persistence and patience. Yes, the hype is so over-the-top that you might not want to invest your valuable time on it. But you owe it to yourself to ensure you can fully capitalize on the sea change that is happening.

If it helps, I (like the OP) have no stake in selling AI and I posted this comment about my experiences on the other thread about the AI coding -- https://news.ycombinator.com/item?id=44163543 -- The upshot is, AI has enabled me to produce innovative (probably cutting edge) work in domains I had little prior background in. And I've not even used agents yet!

kotaKat

8 months ago

Nah, I’m not nuts, you’re just terminally brain damaged by the amount of ketamine you’ve huffed thinking AI was such a great tool.

shaky-carrousel

8 months ago

It is going to be so much fun when all AI companies suddenly double prices, because what are you going to do, hire juniors?

patcon

8 months ago

I so strongly agree with this.

I've never been a completionist. I'm distracted. I like novelty. I make half-form experiments, but mostly provide deeply immersive conversations for the benefit of a small group of people around me, some of whom go on to make/do things that I proudly feel my influence on. The final 10% of work often defeated me.

Now, I just make it happen. The pain is gone. Something else can carry the last 10%, and my ideas get realized by me (and AI).

I can't even conceive how this will change the world en masse. Knowledge domains (not just tech, but science, art, etc) have been built of the things that the type-A completionists knew how to see. The others didn't finish, and what they saw of the world has largely been marginalized.

The mind of ADHD and creative types is about to get much more represented in the output products of civilisation. This is going to be a big recalibration, and I think a re-balancing toward something more healthy tbh

dspillett

8 months ago

> but the craft - Do you like fine Japanese woodworking? All hand tools and sashimono joinery? Me too. Do it on your own time.

That is not my objection, though some seem to think it is.

I got into coding because I found it interesting and fun. I've avoided managing others because I hate that sort of thing. Working with an LLM, prompting it to do work then assessing that work and adjusting the prompts or cleaning/completing the output myself, is far too much like outsourcing work to a 3rd party junior, and I don't want to do that whether said junior is a human in a far off land (or just down the street, for all I know!) or some LLM run by MegaCorp-ᴙ-Us.

I was already seriously disliking much of the modern programming industry (remote teams, the shit-show that client-side web work continues to devolve into, and much else) anyway. If it gets to the point where I can't do my job (or can't do it competitively enough) without using LLMs on top of dealing with the other things I don't care for, I'll be retraining for something else entirely. Heck, I've got the mortgage paid, I don't have or plan to have a family beyond the cats, I could just about survive on shelf-stacking…

I know it isn't a passing fad, though I'm convinced the current and near-future iterations aren't going to be quite as significant in the longer term as many believe. I don't object to others using it (aside from the matter of “MegaCorp-ᴙ-Us”s of the world suddenly deciding that piracy is just fine because they stand to benefit from it, in fact are already benefitting from it, in this case). But I don't plan to be nagged into using it myself.

> Do it on your own time.

If/when that career shift happens, or I survive as I am long enough to retire, I will probably do exactly that. As it stands I spend more than enough of my life on tech in DayJob, my own time is increasingly filled with unrelated hobbies and people.

mjburgess

8 months ago

Can we get a video of a workday conducted by these people?

Unless there's a significant sense of what people are working on, and how LLMs are helping -- there's no point engaging -- there's no detail here.

Sure, if your job is to turn out tweaks to a wordpress theme, presumably that's now 10x faster. If its to work on a new in-house electric motor in C for some machine, presumably that's almost entirely unaffected.

No doubt junior web programmers working on a task backlog, specifically designed for being easy for juniors, are loving LLMs.

I use LLMs all the time, but each non-trivial programming project that has to move out of draft-stage needs rewriting. In several cases, to such a degree that the LLM was a net impediment.

greybox

8 months ago

> All this is to say: I write some Rust. I like it fine. If LLMs and Rust aren’t working for you, I feel you. But if that’s your whole thing, we’re not having the same argument.

Yes we are, because the kind of work you need to do in C++ or Rust is probably entirely different from the work this person manages to get the LLM to do in Go.

user

8 months ago

[deleted]

jjcm

8 months ago

The most important thing in this article in my mind is in the level setting section - if you are basing your perspective on the state of AI from when you tested it 6mo+ ago, your perspective is likely not based on the current reality.

This is kind of a first though for any kind of technology. The speed of development and change here is unreal. Never before has a couple months of not being on top of things led to you being considered "out of date" on a tool. The problem is that this kind of speed requires not just context, but a cultural shift on the speed of updating that context. Humanity just isn't equipped to handle this rate of change.

Historically in tech, we'd often scoff at the lifecycle of other industries - Airlines haven't changed their software in 20 years?? Preposterous! For the vast majority of us though, we're the other industry now.

Arainach

8 months ago

>pull in arbitrary code from the tree, or from other trees online, into their context windows, run standard Unix tools to navigate the tree and extract information, interact with Git, run existing tooling, like linters, formatters, and model checkers, and make essentially arbitrary tool calls (that you set up) through MCP.

....for the vast majority of my career, anyone who suggested doing this - much less letting code that no one in the world (much less the company) truly understands the logic flow of do this - would be fired.

strogonoff

8 months ago

If yesterday we were sued for singing the happy birthday song in public, and today we see corporations with market caps the size of countries pretending that IP ownership is not much of a thing, the alarm bells should be deafening. Control over intellectual property has given us fantastic things—Linux, Blender, etc.—and you can’t have GPL without an ability to defend copyleft. IP laws provide that ability.

One does not need to be a skeptic about machine learning and its potential as technology to refuse to engage with its practical applications when they are clearly ethically corrupt. The ends do not justify the means. Just like refusing to buy products of forced labour or disproportionate environmental impact, or to invest in war and bloodshed, everyone makes this decision for themselves.

kopecs

8 months ago

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

Seriously? Is this argument in all earnestly "No profession has been more contemptuous therefore we should keep on keeping on"? Should we as an industry not bother to try and improve our ethics? Why don't we all just make munitions for a living and wash our hands of guilt because "the industry was always like this".

Seems a bit ironic against the backdrop of <https://news.ycombinator.com/user?id=tptacek>:

> All comments Copyright © 2010, 2011, 2012, 2013, 2015, 2018, 2023, 2031 Thomas H. Ptacek, All Rights Reserved.

(although perhaps this is tongue-in-cheek given the last year)

kazinator

8 months ago

> You’ve always been responsible for what you merge to main.

I've never merged anything with an unclear copyright to main, let alone if I positively suspected that it had been plagiarized.

> Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

Every place I've been employed was nearly paranoid about copyright, with rules in place about never copying and pasting anything copyrighted into the company code base.

All the major open source distros and projects, likewise.

There are some bad apples out there, like, oh, Sam Altman, who wants massive plagiarism to be fair use.

So, au contraire, you can shove your contemptuous blog up your ass, buddy.

beej71

8 months ago

> I like moving the code around and chuckling to myself while I delete all the stupid comments. I have to read the code line-by-line anyways.

I'm glad I got out when I did. :) This simply isn't something I want to do for a living. I'm glad there are people who do, though.

pmdrpg

8 months ago

This op ed suggests that it’s easier to audit a huge amount of code before merging it in than is to write the code from scratch. I don’t know about anyone else, but I generally find it easier to write exactly what I want than to mentally model what a huge volume of code I’ve never seen before will do?

(Especially if that code was spit out by an alien copypasta that is really good at sounding plausible with zero actual intelligence or intent?)

Like, if all I care about is: does it have enough unit tests and do they pass, then yeah I can audit that.

But if I was trying to solve truly novel problems like modeling proteins, optimizing travel routes, or new computer rendering techniques, I wouldn’t even know where to begin, it would take tons of arduous study to understand how the new project full of novel algorithms is going behave?

averageRoyalty

8 months ago

I feel silly asking, but is this reality or hyperbole?:

> An agent can occupy itself for hours putzing with your tests in a VM and come back later with a PR.

> Kids today don’t just use agents; they use asynchronous agents. They wake up, free-associate 13 different things for their LLMs to work on, make coffee, fill out a TPS report, drive to the Mars Cheese Castle, and then check their notifications. They’ve got 13 PRs to review. Three get tossed and re-prompted. Five of them get the same feedback a junior dev gets. And five get merged.

I'm working better and harder with Roocode in Code mode (and somtimes Architect). I've only been doing it for a few weeks, and it reads to me like I'm already using an 'old approach'.

stego-tech

8 months ago

Finally, a proper good take from someone (seemingly) approaching it rationally and objectively, rather than blindly sitting on either side of the hype fence. LLMs are good tools, and even I, a decidedly-not-software-engineer, have been increasingly tinkering with locally-run tools to create applications and tooling that meets my own needs. The one thing that’s held me back from publishing has been the IPR angle, but I quite like this line on that topic:

> But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

The OP isn’t wrong. Some of the most brilliant minds in computer science have built tools to shatter DRM, enable widespread piracy, and repeatedly lift code wholesale from public repos if it helps them move a product forward. The modern crop of technologists (myself included) have long had a hypocritical view on IPR: “rights for me, not for thee” to oversimplify things. The entirety of the modern public cloud is built by trodding on the backs of open source projects while wearing lawn-aerating spikes. We steal shit from others so our Founders and Masters can reap billions in profit; to decry plagiarism now feels incredibly dishonest and insincere, at the very least.

Look, I’m an AI skeptic myself. On the whole, these tools are bad. They’re taking jobs, polluting the planet, and dumbing down a society that still can’t try rebooting something when it fails, let alone identify where their WiFi ends and the internet begins. They’re toxic walled gardens that can reauthor reality to the whims of the VCs and Billionaires funding them, locking you into subscriptions forever.

But even I will admit that modern LLMs, when it comes to writing code, are actually really good for the majority of C-tier devs and below. Are they as helpful to bleeding-edge engineers on the cusp of the future? Nah, not really, but if you’re just writing a checklist app for iOS to help you stay on task, or a Packer manifest to lay out some VM templates, they’re kinda awesome.

omot

8 months ago

I think of programming languages as an interface between humans and computers. If anything, the industry expanded because of this abstraction. Not everyone has to learn assembly to build cool shit. To me AI is the next step in this abstraction where you don't need to learn programming languages to potentially build cool projects. The hard part of software engineering is scale anyways. My bet is that this will expand the industry in unprecedented ways. Will there be contraction of traditional programming jobs? Absolutely. The growth in tech jobs over the last 20 years weren't more assembly programmers. They were abstraction experts. I'm sure the next wave will be even bigger, professional prompting will explode in size.

outlore

8 months ago

The author mentions that smart programmers kick off agents, then go for a coffee and wait to be notified.

But agents like Claude Code and Cursor run on a user’s machine right? So how can they work in the background like that? are there agents that can work async?

aprilthird2021

8 months ago

He forgot "but the 15 year old behemoth codebase that doesn't fit in any context window and isn't well documented and changing of which requires changing tons of ancillary files not easily connected to each other logically".

That's what a lot of the highest paid programmers work on. I work in such a firm and the agent they have for us is incapable. And it's the latest and greatest from whoever coders love to rave about online.

I love that AI written tests and other generally greenfield things work well and can be vetted quicker than writing and getting the code oneself. But for most more complex tasks it's not there. I'm ready when it is though

dismalaf

8 months ago

Fun article, although I'd say I'm maybe slightly more on the skeptical side.

I've found LLMs can't really write a whole program there isn't already a template for. They're good enough at writing individual functions, and as the author mentioned, their breadth of knowledge is better than any individual.

Honestly, I see them as a supercharged version of googling, without all the out of context answers you get from Google since they also place ads and whatnot. I find an LLM can get me an answer far quicker than a regular internet search, even if it's imperfect and I'm probably not going to put it straight into my code.

d--b

8 months ago

Yeah, and it’s progressing so fast. Singularity is definitely on the table.

Whoever says otherwise should read their own comments from 2 years ago and see how wrong they were about where AI is today.

Not saying singularity will happen for sure, but is it a possibility? Hell yeah.

bananamerica

8 months ago

I know this is a website for programmers and I am not one. I like LLMs for quick answers and simple tasks like proofreading (just to fix errors, not to add or change anything) and simple text formating. I absolutely hate for everything else. I am a writer and LLMs prose may be correct and sometimes whimsical but it has soulless quality to it that makes me forget about what I just read after five seconds. My friends use Meta AI on our chat groups on WhatsAppp and I hate it so much, I delete every single AI message as soon as I see it.

yahoozoo

8 months ago

Will LLMs ever break the “you have to treat it like an intern/junior” ceiling?

mrcwinn

8 months ago

>It’s getting the same kind of attention that smart phones got in 2008, and not as much as the Internet got. That seems about right.

Are you kidding me? Mosaic was released in 1993. In 1998 Apple released the iMac on a theory, based on some marketing research, that people might be really interested in "getting online." Five years. And that's about a decade before we realized we might want a touch phone. More than a decade before an App Store.

This is very much still the top the first. AI will make even the internet seem small. Which makes sense — the entire whole internet is merely one input into this technology.

devmor

8 months ago

For some reason, every hardcore AI proponent I hear from resorts to gaslighting and namecalling to convince everyone it's so useful for everything.

When that doesn't work, they start inventing hyper-specific scenarios and graphs with grounding that exists only in their imagination to push the topic further. If the AI can't solve a problem in a domain for you, well, it's that domain that's the problem, not AI. You simply need to re-invent the paradigm around your entire problem - easy stuff.

Finally, when they've failed to convince anyone with a modicum of rationality, they resort to some version of "well, fuck you, it's the future and I'll just be leaving you behind!"

Interestingly, this article has all three.

abdullin

8 months ago

My current workflow with Codex is (coding environment from OpenAI):

(1) Ask to write an implementation plan for a specific change or a feature. It will go through the source code, look up references, make notes and produce a plan

(2) Review the plan. Point out missing things, or stuff that needs improvement.

(3) Once I'm satisfied with the plan - ask to draft PR. Launch a few attempts in parallel and pick the one that I like the most.

(4) While drafting PR, Codex will run unit tests (even can run E2E tests in its container), linting and type checkers at every single step. This helps a lot with the stability.

(5) I review the code and merge the PR if I like it. Ask to cleanup - if not.

This feels like working with a remote team - very patient and diligent at that.

Ultimately, I get to get more features done per day. But I also feel more tired by the end of the day due to a higher level of cognitive load. There are more decisions to make and less idle time (e.g. no more hours spent tidying up the code or doing relaxing and pretty refactoring).

TLDR; this AI thing works really well at least for me. But it comes with trade-offs that might slow down its adoption by companies en masse.

darepublic

8 months ago

I do use LLMs for coding and the newer models have definitely been a blessing. I don't know about using coding agents (or agentic coding) though. I personally do not find this better than chatting with the llm, getting the code back and then copy / pasting it and grokking / editing it. The author of this seems to suggest that.. there is one correct flow, his flow (which he doesn't entirely detail) and everything else is not appropriate. He doesn't go into what his process is when the LLM hallucinates either. Not all hallucinations show up in static analysis.

homefree

8 months ago

Yes! It's amazing how even in a field that tends to lean more early adopter than average you still get a lot of the default knee-jerk dismissal and cynicism - even when it's something clearly amazing and useful as thinking machines.

We're in the middle of a major shift - there will benefits to those that adapt first. People outside the field have no idea what's coming, even those of us in the field are underestimating the shift.

There were a few outliers in the 60s who understood what the computing revolution meant and would mean, but most did not. This is likely an even bigger change than that.

cratermoon

8 months ago

"If you build something with an LLM that people will depend on, read the code. In fact, you’ll probably do more than that."

Thus sucking up all the time you "saved" by having the LLM write the code you saved. The machine made the easy parts of coding easier while making the hard parts harder.

"You’ll spend 5-10 minutes knocking it back into your own style."

As if style is the only thing that matters?

"LLMs are showing signs of adapting to local idiom, but we’re not there yet."

First step fallacy. Ladders are showing signs of being tall enough to reach the moon, but we're not there yet.

holoduke

8 months ago

"If you’re making requests on a ChatGPT page and then pasting the resulting (broken) code into your editor, you’re not doing what the AI boosters are doing"

I am actually doing this the whole day long. For example i have setup today a fresh new debian vps for some interns. U had to provide them with a docker system, support for go, nginx stuff and i made a quick hello world app in angular with a go backend. I could have done it myself. But i asked chatgpt to provide me with all the commands and code. No idea how an agent could do this for me. I got everything running in like 30 minutes.

user

8 months ago

[deleted]

creativenolo

8 months ago

If you’re leaning out, spend two weeks leaning in.

I did, and learned a ton, and likely not going back to how I was before, or how I used it a week ago.

The comments in the article about not reading the agent is good but it’s more than that…

Vibe coding is for non-coders. Yet, you get a feel for the vibe of the AI. With windsurf, you have two or three files open, and working in one. It starts smashing out the multi, interspersed, line edits and you know with a flutter of your eyes, it’s got your vibe and correctly predicted your next ten lines. And for a moment you forgive it for leading you astray when you read what it said.

epolanski

8 months ago

LLMs are a tool, a very precious one if you know how to use it.

I've seen Antirez use it for hard to find bugs in the Redis codebase (videos are on YouTube, albeit Italian), I've seen Cursor refactor in a matter of minutes code that would've taken hours, correctly, I've seen security researchers leverage it to find complex edge cases, etc

My 2 cents is that developers that won't learn to use the tools will be left behind (albeit not for long imho), but also, that sales people promoting the idea that devs can be replaced equally dangerous.

einpoklum

8 months ago

> LLMs can write a large fraction of all the tedious code you’ll ever need to write.

For most software projections, they cannot even remotely do that - at least not today and as far as I can tell.

And that is to say, it's not that they can write a not-so-large fraction. They cannot write any significant fraction of it. They can often write you a draft that helps you get there faster, though. They can also facilitate web search result consolidation etc. which can also help. But - they can also lead you down wrong paths and dead-ends, on occasion.

tantricked

8 months ago

As a junior, I feel most complexity in software is manufactured. LLMs simplify that mess for me, making it easier to get things done. But I’m constantly hit with imposter syndrome, like I’m less skilled because I rely on AI to handle the tricky stuff. And Gemini is better than me!

debrisapron

8 months ago

I want to skip all the debate and just have someone tell me what setup I need to get to here:

> Kids today don’t just use agents; they use asynchronous agents. They wake up, free-associate 13 different things for their LLMs to work on, make coffee, fill out a TPS report, drive to the Mars Cheese Castle, and then check their notifications. They’ve got 13 PRs to review. Three get tossed and re-prompted. Five of them get the same feedback a junior dev gets. And five get merged.

user

8 months ago

[deleted]

SpicyLemonZest

8 months ago

> Professional software developers are in the business of solving practical problems for people with code. We are not, in our day jobs, artisans. Steve Jobs was wrong: we do not need to carve the unseen feet in the sculpture. Nobody cares if the logic board traces are pleasingly routed. If anything we build endures, it won’t be because the codebase was beautiful.

I think this is my key point of disagreement. Professional software developers often don't see themselves as artisans, because Steve Jobs's unseen feet are implemented through our implicit standards of ourselves. I don't go out of my way to be a perfectionist on the job, but neither will I try to push 1000 lines of spaghetti to solve a minor problem that seems like it ought to be a simple fix.

I've worked with people in the past who don't have this instinct, and it's my experience that their productivity is quite low if not negative, even though they often perceive themselves to be 10x developers who can handle all kinds of edge cases super fast. I suspect that most AI-generated code today ends up in this niche.

bsder

8 months ago

Here's what to do: Show me a video of LLM fixing four filed issues in the KiCad codebase.

If you do that, I'll swallow my AI skepticism.

I would love to have an LLM that I can turn loose on an unfamiliar codebase that I can ask questions of. I would love to have an LLM that will fill in my Vulkan boilerplate. etc.

I use emacs and Mercurial. You can demonstrate magic to me and I can be convinced even if it's not mainstream.

Rewriting Javascript slop to StackOverflow standards is not convincing me.

Get to it.

(The OAuth stuff posted earlier certainly moved my needle, but the fact that they needed a gaggle of reviewers as well as hand holding when the LLM got stuck mutes the impact significantly.)

meroes

8 months ago

> LLMs can write a large fraction of all the tedious code you’ll ever need to write.

But, you still have to read it:

> Reading other people’s code is part of the job...I have to read the code line-by-line anyways.

So instead of writing the tedious code, I only have to read it. Oh but don't worry, I don't have to read it too carefully because:

> Agents lint. They compile and run tests. If their LLM invents a new function signature, the agent sees the error

But remember...

> You’ve always been responsible for what you merge to main.

So now I have to oversee this web of agents and AI ontop of coding? Am I doing more now for the same pay? Am I just speedrunning myself toward lower pay? Is AI adoption a prisoner's dilemma toward lowing my wages hardest?

Because is good at coding compared to many other disciplines (e.g. math), it makes the internal AI politics among programmers more of an issue. Add fuel to that fire baby!

supermatt

8 months ago

i am no clearer on what setup the author is using? are you hand coding all these non-code agents you mention? You talk about zed, then about cursor - don't they both do the same thing, or are you using 2 IDEs to write your code? What tooling is used for these async agents that are doing things while i eat my breakfast?

I really want to like AI assisted coding, but I guess i am just stuck as to what to do.

I have tried co-pilot, both 2 years ago, and recently. I have tried some other AI plugin on VScode (i thought that was cursor, but I don't see it in the extensions when i now search, so it was probably something else). If anything, I have found with these solutions that they are great for the first few tasks - generate these models, scaffold this, add oauth, etc - but after that they lack all consistency with the code they themselves generated (like if i add a new model, the output is wildly different to what it already created) and it takes more time to rewrite that output than to copy-paste and change whats already there.

@op - could you explain exactly what tooling you are using, maybe give an example of these async agents, etc? Would be most appreciated for us luddites who would love to be more productive.

femiagbabiaka

8 months ago

I agree wholeheartedly with this piece, but I think it might've been taken better if it wasn't written in the style of an HN comment. That being said, definitely doesn't deserve so much flaming in the comments, sorry to see that, because it's basically correct, with some small things I disagree with here and there. Feels exciting to be on the precipice of having a Star Trek style spaceship computer at my fingertips.

aabajian

8 months ago

I've observed that AI excels at creative work, but not exacting sciences. For example, If I say, "Write the code to put the button in the upper right corner," I'll almost certainly get a button in the upper right.

Conversely, if I say, "Put the button in the upper right corner exactly like the existing button in the upper left," I'll get a button in the upper right, but not exactly like the upper left button.

tshaddox

8 months ago

I don't doubt that LLMs will have a large impact on software and programming. But I do wonder whether it will be a positive impact. I think one of the biggest problems the software industry has is that it's far too rare for the people building software to have deep explanatory knowledge about what they have built. LLMs threaten to make this problem vastly worse than it already is.

jasonm23

8 months ago

Here's an idea... imagine you are just starting, you know nothing... an AI can and will help you.

Tell me you won't use it and explain properly, without appeal to "legacy" or "human values" or other abstracts which don't self validate.

Now note that this is POV for every child on earth.

The new discipline is provider of LLM/AI guard rails, and absolutely requires knowing what is/not correct.

tedious-coder

8 months ago

AI makes me sad. When I started my CS degree, I didn't even know what silicon valley was. I was unaware of what the SWE job landscape was like. I went to school in a no-name town.

Computer science was an immensely fun subject to learn. I moved to one of the big cities and was bewildered with how much there was to learn, and loved every second of it. I gradually became good enough to help anyone with almost anything, and spent lots of my free time digging deeper and learning.

I liked CS and programming - but I did not like products built by the companies where I was good enough to be employed. These were just unfortunate annoyances that allowed me to work close enough to what I actually enjoyed, which was just code, and the computer.

Before LLMs, those like me could find a place within most companies - the person you don't go to for fast features, but for weird bugs or other things that the more product-minded people weren't interested in. There was still, however, an uncomfortable tension. And now that tension is even greater. I do not use an LLM to write all my code, because I enjoy doing things myself. If I do not have that joy, then it will be immensely difficult for me to continue the career I have already invested so much time in. If I could go back in time and choose another field I would - but since that's not possible, I don't understand why it's so hard for people to have empathy for people like me. I would never have gone down this path if I knew that one day, my hard-earned-knowledge would become so much less valuable, and I'd be forced to delegate the only part of the job I enjoyed to the computer itself.

So Thomas, maybe your AI skeptic friends aren't nuts, they just have different priorities. I realize that my priorities are at odds for the companies I work for. I am just tightly gripping the last days that I can get by doing this job the way that I enjoy doing it.

tstrimple

8 months ago

This is the same as every other transformative tool which has come to market. You've got a certain segment of the population who will embrace it and push the boundaries of what is possible with the current tools and those in the future. And you've got the curmudgeons who won't let go of the one tool and one non-cloud hosting solution they so desperately cling to and deny the utility of anything else.

mouse_

8 months ago

> Extraordinarily talented people are doing work that LLMs already do better, out of spite.

So what, people should just stop doing any tasks that LLMs do subjectively better?

user

8 months ago

[deleted]

Glyptodon

8 months ago

I think he's pretty much right, but it just leaves me managing an AI and hopefully having fewer offshore developers and faster turnaround. So something less than a 50% boost, and kind of variable, but still significant. I don't really think it's world shattering because most software is deeply constrained by business processes (deciding what to build, etc.) that this doesn't help.

Leo-thorne

8 months ago

At first I didn’t think LLMs were that impressive, but ever since I started using them, I’ve pretty much stopped writing for loops by hand. It’s not that I forgot how. I just don’t feel like doing it anymore. The time it saves me on boilerplate lets me focus on other things. Sometimes the code isn’t perfect and I need to fix it, but it’s still way easier than starting from scratch.

barrell

8 months ago

This blog post makes me actively want to use something besides fly. Putting aside the massive condescension in the article…

… most of the code you write is tedious boilerplate? What do you do all day? I can honestly say the most tedious code I write is migrations, because I have to edit three files. I do this like once a week. It would take way longer to explain to an ai what to do than just do it myself.

… you run the ai on your procrastination and as a result do heads down work? Seriously? 1, programming with AI is like playing a slot machine. It keeps you hooked just on the verge of winning the jackpot for far longer than the tedious task would have distracted you. And let’s say a good agentic case - it runs for 30 minutes before it’s done. That’s not even enough time to “boot up” a serious problem, and your already having to put it aside to go check the work you yourself are saying is mediocre? And you’re advocating to run multiple of these? Even the most ardent vibe covers I know talk about babysitting the agents. How is this unlocking deep work time in any way shape or form?

… craft is relagated to hobbies? I guarantee you, this person loves Linear. It was probably written on a MacBook. This whole “we solve real problems” BS is just a cop out because being great is hard.

… mediocre code is good code? All code is a liability. If you generate 10 times the code, and are admitting it’s the lowest bar of quality possible, it is at a minimum 10x the liability on your shoulders.

… letting LLMs refactor your tests? Serious question, who actually does this? Because I would LOVE to have LLMs write tests for me. I have tried every. single. time. I need to write something that needs a lot of tests to ask LLMs for tests for TWO YEARS, and not once have I ever used a single test it generates. It generates worse tests than it does code, and the last thing I want is 42 asserts in 8 tests across 600 LoC that nobody understands that poorly tests what should have been 2 asserts in 2 tests in 12 lines of code.

leecarraher

8 months ago

It depends on what level of nuts you mean. Some are AGI skeptics about LLMs, theyre probably right, there is likely more breakthroughs required before true AGI. But AGI isn't required to completely disrupt a ton of good, well-paid professions. That is the more worrying scenario. AI is already widening the wealth gap irreparably and with more progress it will only continue.

cwoolfe

8 months ago

"Reading other people’s code is part of the job. If you can’t metabolize the boring, repetitive code an LLM generates: skills issue! How are you handling the chaos human developers turn out on a deadline?" Good point! Treat AI generated code as if somebody else had written it. It will need the same review, testing and refactoring as that.

energy123

8 months ago

> but it’s bad at rust

Is it really? I scraped all HN comments with the words "Rust" and "LLM" from the last 6 months, put it into Gemini and asked it to surface quotes of people saying they had a good time, versus quotes of the opposite. It was about 60% positive and 40% negative.

Does anyone have recent personal experience with this they can talk about?

stopachka

8 months ago

tptacek, curious question: what agent / stack do you currently use?

nmeofthestate

8 months ago

This sounds very cool - almost science-fiction in parts. I want to know more details about the specific technology, whether it could handle a 30k C++ codebase, how much work you would need to do to make it learn how to run your tests, analyse their output, interface with all your internal software development services etc.

gerdesj

8 months ago

Try getting your fav LLM to do something useful with PowerCLI. That's the VMware PowerShell thing. It is quite popular but not enough, so that most prompts will end up with bollocks, masquerading as code.

When a LLM has been tamed to the point that I can define and request a PowerCLI programme, I can be fairly sure that AI is a solved thing.

blibble

8 months ago

> We’re not East Coast dockworkers; we won’t stop progress on our own.

we could choose to be

of course if you're a temporarily embarrassed billionaire like ptacek, you certainly don't want the workers doing this

bayindirh

8 months ago

I'll be a happy and ignorant nut as long as these models are trained on publicly scraped code without their creators' consent, and the models fail to cite the licenses and sources of the parts the answer is composed from.

Oh, GH Copilot was adding citing capabilities which was going to be in production around this time? Any progress on that front?

Thanks.

bowsamic

8 months ago

This article doesn’t address literally THE argument I have against LLM usage: that it will degrade major human skills like reading, writing, and yes, coding

But I’m at least grateful for LLMs making me more aware of how important it is for me to focus on my own skills building. I will never use it because I value having those skills sharp

weitzj

8 months ago

I was quite happy and entlohntes when I dropped an HTML table Formates with Emojies into my prompt and told to turn it into a terraform module.

But how do you quality check this part? I am proofreading all these transformations and I am not sure if this is really faster than actually recording a VIM macro, which will do the steps I need.

xyst

8 months ago

Ask me again in 15 years. Assuming the world hasn’t already entered a war for the remaining resources on this planet.

justlikereddit

8 months ago

>Important caveat: I’m discussing only the implications of LLMs for software development. For art, music, and writing? I got nothing. I’m inclined to believe the skeptics in those fields.

What a strange disclaimer. Image generation was a (career)killer feature long before vibe coding was halfway useful.

metalliqaz

8 months ago

Can someone explain to me what this means?

> People coding with LLMs today use agents. Agents get to poke around your codebase on their own. They author files directly. They run tools. They compile code, run tests, and iterate on the results. ...

Is this what people are really doing? Who is just turning AI loose to modify things as it sees fit? If I'm not directing the work, how does it even know what to do?

I've been subjected to forced LLM integration from management, and there are no "Agents" anywhere that I've seen.

Is anyone here doing this that can explain it?

YuukiRey

8 months ago

Adding fuel to the fire. I'm extremely disappointed to see such an inflammatory article on fly.io. I wouldn't want this on my personal blog, let alone on my employers, but I guess they're fine with it.

I've been using Zed and Claude Sonnet 4 (and sometimes trying Opus) heavily over the past weeks. For small edits where I have lots of unit tests, the results were great. So great that they worry me with regards to job security. For exploring a new programming domain it was also somewhat useful. I work a lot with the Typescript compiler API right now, and it has almost no documentation. Since the AI can see into every GitHub repository out there, it's much better, and more efficient, at learning APIs based on code from other folks. On the other hand it means I don't do that job, and I am forced to rely 100% on how the AI presents the Typescript compiler API to me. Are there better methods I could use? Who knows.

Where it's abysmal is code architecture. Sometimes it's almost comical: it adds an if statement to handle one highly specific edge case in a program that only makes sense if it solves the general case. This didn't happen often thought.

The hardest part was to force it to reuse existing code from the same file. My use case is transforming a Typescript AST into a GraphQL AST. The code is one big switch statement with lots of recursive calls. The AI would often add 300 lines of code that duplicate some logic which already exists somewhere else.

In the end I rewrote the whole thing from scratch. At around 900 lines of code the AI was starting to really struggle. When I wanted to take over, I realized that I didn't have the in-depth knowledge to do so. And trying to understand the code the AI had written proved futile.

Ultimately that's on me, I should have been more diligent reviewing the dozens of 300 line of code changes the AI throws at me over the course of a day. But I wasn't, because reviewing is really, really hard. For many reasons. And AI makes it even harder.

Am I therefore nuts? I find this whole article extremely one sided. Surely, based on the sheer amount of both positive and negative press, the answer is somewhere in the middle.

dannyobrien

8 months ago

This is also where I am, and I guess it has been a source of mild and growing consternation since I first blagged an OpenAI GPT account when they were private, in an attempt to get ahead of what was coming -- both the positive and negative sides of the advances. Most people either ignored the advances, or quickly identified and connected to the negative side, and effectively filtered out the rest.

As somebody who comes from a politically left family, and was also around in the early days of the Web, let me tentatively note that this issue has a particular political slant, too. The left has strong roots in being able to effectively critique new developments, economic and social, that don't come from its own engines of innovation which have revolved around those critiques, plus solidarity, organization, and sociopolitical action.

The movement's theorists work far more slowly on how to integrate the effect of those changes into its vision. That means when something like this comes along, the left's cultural norms err on the side of critique. Which is fine, but it makes any other expression both hard to convey, and instantly suspect in those communities. I saw this in the early Web, where from a small group of early adopters of all political slants, it was the independents, heterodox leftists, and the right, -- and most vocally, the libertarians -- who were able to most quickly adapt to and adopt the new technology. Academic leftists, and those who were inspired by them took a lot longer to accomodate the Net into their theses (beyond disregarding or rejecting it) and even longer to devise practical uses for it.

It wasn't that long, I should say -- a matter of months or years, and any latent objections were quickly swamped by younger voices who were familiar with the power of the Net; but from my point of view it seriously set back that movement in practicality and popularity during the 80s and 90s.

I see the same with AI: the left has attracted a large generational of support across the world from providing an emotionally resonant and practical alternative to the status quo many people face. But you quickly lose the mandate of heaven if you fail to do more than just simplistically critique or reject a thing that the average person in the world feels they know better, or feels differently toward, than you do. This is something to consider, even if you still strongly believe yourselves to be correct in the critiques.

user

8 months ago

[deleted]

lomase

8 months ago

I never used AI, microservices, blockchain, Mongo, and used only 2 js frameworks in my carrer.

apwell23

8 months ago

> “hallucination” is the first thing developers bring up when someone suggests using LLMs, despite it being (more or less) a solved problem.

i don't get it. It keeps making stuff up or gives me wrong stuff that merely compiles when i tell it signature doesn't exist.

panny

8 months ago

Every time I read one of these it feels like I'm reading an AI generated sales pitch for AI.

rienbdj

8 months ago

I tried Copilot many times and found it lacking. I like discussing concepts (maybe with pseudocode) with Gemini. I find this useful but not game changing.

So genuine question for AI Boosters, what should I be using?

I would like the 10x productivity gains we were promised :)

adammarples

8 months ago

What is the current meta on a fully agentic workflow as he describes it? Wake up, write a vague prompt, go for coffee, and get a PR to review on your phone? I'm genuinely interested to see what going all in on this looks like.

keepamovin

8 months ago

This is very well written article. I love the style: aggressive, youthful, humorous, informed, experienced.

I think it could do with a little bit more friendly, but… it’s got its own charm.

It also convinced me I should be using agents rather than raw dogging Gemini 2.5 pro

jacobsenscott

8 months ago

I've yet to see an LLM produce anything but disastrous bugs. Remember they don't know they're writing code that can destroy companies and livelihoods. They are just spitting out plausible but always wrong text.

QuantumGood

8 months ago

For writing, I do a back-and-forth about what I'm trying to do with Claude before asking it to write anything. Produces much less "that's not exactly what I was looking for..."

ang_cire

8 months ago

One thing that really bothered me that the author glossed over (perhaps they don't care, given the tone of the article) is where they said:

> Does an intern cost $20/month? Because that’s what Cursor.ai costs.

> Part of being a senior developer is making less-able coders productive, be they fleshly or algebraic.

But do you know what another part of being a senior developer is? Not just making them more productive, but also guiding the junior developers into becoming better, independent, self-tasking, senior coders. And that feedback loop doesn't exist here.

We're robbing ourselves of good future developers, because we aren't even thinking about the fact that the junior devs are actively learning from the small tasks we give them.

Will AI completely replace devs before we all retire? Maybe. Maybe not.

But long before that, the future coders who aren't being hired and trained because a senior dev doesn't understand that the junior devs become senior devs (and that's an important pipeline) and would rather pay $20/month for an LLM, are going to become a major loss/ brain drain domestically.

bitwize

8 months ago

Eric S. Raymond is now doing 100% of his coding with AI assistance, and claims he is much faster and more productive.

I think we've passed the threshold beyond which not using AI is just doing things the hard way for no appreciable gain.

snickerbockers

8 months ago

>People complain about LLM-generated code being “probabilistic”. No it isn’t. It’s code. It’s not Yacc output. It’s knowable

okay wtf is this weird jab at yacc supposed to be? I generally prefer to write my own LR parsers because it's really not that difficult but I never felt like yacc code was difficult to read or not "probabilistic".

AFAIK most serious compilers don't use yacc either because they need to be able to parse context-dependent grammars, and also reinventing wheels is often worth the effort when the wheel is 50 years old and forces you to make compromises because it also has to support use-cases you are not interested in. But again, it's not bad, it does the thing it is designed to do and it does save a lot of effort if you're fine dealing with its limitations.

Only serious complaint I have about Yacc is that the basic posix form has frustrating limitations such as not being able to have two separate yacc instances because they'll declare the same symbols, and I'm fairly certain it's not thread-safe either. Bison fixes some of these while still remaining "probabilistic".

Anyways I'd rather use Yacc+Lex (preferably Bison+flex) to generate my parser than have to go read everything your "agent" wrote with a fine-toothed comb to make sure it didn't introduce any crippling memory corruptions or dangerous ROPportunities.

layoric

8 months ago

> Some of the smartest people I know share a bone-deep belief that AI is a fad — the next iteration of NFT mania.

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

> The median dev thinks Star Wars and Daft Punk are a public commons. The great cultural project of developers has been opposing any protection that might inconvenience a monetizable media-sharing site. When they fail at policy, they route around it with coercion. They stand up global-scale piracy networks and sneer at anybody who so much as tries to preserve a new-release window for a TV show.

So it starts with a humble strawman, and then the author illustrates how dumb they think their fellow developers really are if they have the make different decisions based on different values.

Most developers I interact with who are what you might call 'AI skeptic', are most concerned with how this tech will be used, especially since its creation is rooted in mass scale disregard for ownership of anything.

> "The great cultural project of developers has been opposing any protection that might inconvenience a monetizable media-sharing site.... They stand up global-scale piracy networks",

IMO the author is here projecting or something, cause I literally never met someone with this opinion, and I've also been in tech/developer circles for over 20 years. Personal use of pirated content is very different from commercial distribution or making money of share sites. Not everyone's values are so rooted in making money with complete disregard to the impact of their actions in doing so.

I get it, the author wants to keep using LLMs are for people to stop trying to make them feel bad but trying to make a case for how their arguments are just dumb. But the author completely missed the 'why' behind the arguments. In the end, LLMs are a tool. Use them or not is up to the individual. But that doesn't give a blanket social license to use them in any way people, or more importantly, companies want.

dweinus

8 months ago

> You’ll spend 5-10 minutes knocking it back into your own style

You lost me here. I have often found it to be far more than a 10-minute style issue, but fundamental misunderstanding of the code purposes that I need to fix.

jleyank

8 months ago

If they’re regurgitating what’s been learned, is there a risk of copyright/IP issues from whomever had the code used for training? Last time I checked, there’s a whole lotta lawyers in the us who’d like the business.

wan23

8 months ago

Someone at work said something to the effect of "Oh, this would be great for an intern but we don't have one this year" to which I responded "sure you do, its name is Copilot".

mudkipdev

8 months ago

Which AI agent is actually good nowadays? I've tried cursor but i didn't want a fork replacing vscode just to be able to call an LLM. And I'd preferably want pay as you go, not a subscription model

bhupesh

8 months ago

I am in the middle, neither a dogmatic skeptic nor a full-blown prompt engineer, but I lost it when the author compared a junior developer (a human) to a SaaS subscription.

Tells you what you need to know about the AI culture.

CraigJPerry

8 months ago

That was a stellar read. I've had (at least parts of) many of these thoughts floating around my head over the past few weeks / months, but it'd have been beyond my ken to write them down as lucidly.

karel-3d

8 months ago

What is the agent setup that I should try?

What I tried is indeed "set up Cursor" or "copy-paste ChatGPT", and it was all bad, I have no idea what is this "agent" and "MCP" stupp.

ReflectedImage

8 months ago

Whilst generative AI is great for writing business letters and essays and all that, going straight for coding, one of, if not the hardest problem is a bit much.

This is a come back in 5 years when it works sort of thing.

FilosofumRex

8 months ago

Don't be pennywise and pound foolish...

The LLM coding agents might help you fire some swe to save a penny or two, but soon enough, it will also help your customers or suppliers to replace your business model.

stavros

8 months ago

This isn't about the post itself, but can you please put the author's name at the top? It's written in first person and we have no idea who's talking until the end of the post.

pianopatrick

8 months ago

Seems to me that AI itself will take some jobs but the cheap workable software the AI creates will take even more jobs, especially if the AI can create workable software for automation robots.

metalrain

8 months ago

I think LLMs are great and patient teachers.

But code is something I like to write myself, it's not about speed of producing code. It's keeping it such you still fully understand it.

ttiurani

8 months ago

"You don’t believe in IPR. Then shut the fuck up about IPR."

As a software engineer, I need to call out this rhetoric. We are not all morally bankrupt. Many of the people with the most ethical backbone I know are also software engineers.

I don't use "AI" for the same reason I don't use amphetamine. I'm sure I could get stuff more stuff done faster if I used it, but I don't, because the manufacturing and the distribution of it is completely unethical.

The blatant stealing of intellectual property is only the tip of the shitberg. As bad are the giant ecological footprint[1], the colonialism of the grossly underpaid RLHF, and the conceding of even more of our digital lives to trillion dollar corporations.

We can and must ethically evaluate our work, and that includes our tools. Nobody's perfect, but doing one immoral thing does not mean you get a free pass to skip morality altogether.

1. https://www.greenpeace.de/publikationen/environmental-impact...

thomasfl

8 months ago

Sometimes AI model generates technical debt. It happens for instance if AI generates code with dependancies that to old to be automatically be updated to the latest version.

msteffen

8 months ago

This article is ridiculous

Q: but the code that AI generates is incoherent gibberish

Guess what, life’s tough. Fixing incoherent gibberish is part of the job you wuss. Honestly, I bet you write incoherent gibberish. Would you rather be fixing incoherent gibberish that an AI wrote or incoherent gibberish that you wrote?

Q: but I have to re-do everything it touches. Everything takes me ten times as long!

What are you, some kind of vibe-coding YouTuber? Everything taking ten times as long is part of the job, cupcakes. What’s important is that now it takes ten times as long automatically. I like the way Zed does it, where it tells you to leave while it’s changing stuff.

Existenceblinks

8 months ago

Ironically all nuts friends seem to be talking less, less defensive than other nuts friends who keep talking about other people not buying what they believe nuts.

deadbabe

8 months ago

I can’t wait for the day when people no longer manually write text messages to each other, but instead just ask LLMs to read and respond from a few prompted words.

keeganpoppen

8 months ago

this is one of those fascinating cases where i agree with none of the arguments, but vehemently agree with the conclusion… it ordinarily would give me pause, but in this case i am reminded that nonsense arguments are equally applicable to both sides of the debate. if the arguments actually had logical connection to the conclusion, and i disliked the arguments but liked the conclusion, that would be real cause for introspection.

user

8 months ago

[deleted]

guywithahat

8 months ago

I develop space-borne systems, so I can't use the best LLM's for ITAR/etc reasons, but this article really makes me feel like I'm missing out. This line in particular makes me wonder if my skills are becoming obsolete for general private industry:

> People coding with LLMs today use agents. Agents get to poke around your codebase on their own. They author files directly. They run tools. They compile code, run tests, and iterate on the results. They also:

Every once in a while I see someone on X posting how they have 10 agents running at once building their code base, and I wonder if in 3 years most private industry coders will just be attending meetings to discuss what their agents have been working on, while people working on DoD contracts will be typing things into vim like a fool

Yossarrian22

8 months ago

Where is the counter argument to this not being sustainable?

kurko

8 months ago

What's the likelihood that this was 90%+ written by an LLM? It'd be ironic, especially now that there are 2000+ engineers commenting on it.

paulsutter

8 months ago

The best I can offer skeptics is the more you work with the tools the more productive you become. Because yes the tools are imperfect.

If you've had a dog you know that "dog training" classes are actually owner training.

Same with AI tools. I see big gains for people who spend time to train themselves to work within the limitations. When the next generation of tools come out they can adapt quickly.

If this sounds tedious, thats becuase it is tedious. I spent many long weekends wrestling with tools silently wrecking my entire codebase, etc. And that's what I had to do to get the productivity improvements I have now.

3abiton

8 months ago

> For art, music, and writing? I got nothing. I’m inclined to believe the skeptics in those fields. I just don’t believe them about mine.

I am curious about this part though

Ygg2

8 months ago

> but it’s bad at rust

It's not just Rust. It's everything that has been created post the last vacuum. You need a large corpus for LLM to get decent-ish.

homeonthemtn

8 months ago

AI is a tool, akin to a seamstress' sewing machine. Use it well, and with intention, and it'll help speed up your work. That's it.

storus

8 months ago

Soon all coding will look like L3 support - debugging something you've never seen before, and under pressure. AI is really taking away the fun parts from everything and leaving just the drudgery in place.

ivolimmen

8 months ago

Call me old but I am not using AI for coding. It's not what I expect or want an AI to do for me. I would love for it to do stuff I don't like to do. It's like the meme that was floating around: that a woman says it would have loved the AI to do the dishes so she can to art; not the other way around. Yes I am also a skeptic but that is not weird as I have seen to many movies about AI taking over the world. I hope I never have to say: "I told you so". I really do see positive points to AI but just not in coding. I would not even trust them to write tests. Might make them write documentation at some point.

I would like to point out: LLM's look really intelligent until you converse with them in a less popular language, it will make weird mistakes and interpret your questions all wrong. I am Dutch and they really suck at that.

wiseowise

8 months ago

You’re the goat, Ptacek.

Seriously, this is the most based defense of LLM that I’ve read over the years. All the yapping in the thread only proves your points.

rk06

8 months ago

Can someone guide me which AI tools are good? And their docs and tutorial

I want to see the hype but without paying up front. My focus area is c#, .net, js.

hlpn

8 months ago

Very weak arguments and intentionally provocative.

Bluescreenbuddy

8 months ago

>but the code is shitty, like that of a junior developer >Does an intern cost $20/month? Because that’s what Cursor.ai costs.

RIP Junior devs

fourthark

8 months ago

LLM, please find all occurrences of "shut the fuck up" and suggest actual arguments for the author to use.

Otherwise, well written and persuasive.

trostaft

8 months ago

Thanks for the article. I've been unwilling to try agentic editing for a while, and this is the kick I need to give it a shot.

slowhadoken

8 months ago

There is no AI yet, it’s just automation and that’s why people hate it. It also allows corporations to consume open source code for profit.

skeptrune

8 months ago

> I think this is going to get clearer over the next year. The cool kid haughtiness about “stochastic parrots” and “vibe coding” can’t survive much more contact with reality. I’m snarking about these people, but I meant what I said: they’re smarter than me. And when they get over this affectation, they’re going to make coding agents profoundly more effective than they are today.

Yes, yes, and yes. SOOOO much yes. We are going to be in for a wild ride once everyone gets on board with the reality of coding agents.

evantbyrne

8 months ago

> Does an intern cost $20/month? Because that’s what Cursor.ai costs.

The cost is a pretty obvious indication that it's nowhere near the capability of an engineer. A robotic worker that can produce code 24/7 without tiring would be worth even more than a person of equivalent skill. I don't know what kinds of goofy hiring ya'll are doing, but all of the juniors I've been involved in hiring actually worked out great.

chairmansteve

8 months ago

I find it interesting that TFA claims that Go is the most LLM legible language.

I suspect C# Asp.Net Core not so much. Any thoughts?

johannesrexx

8 months ago

OP opened with an ad hominem argument that his skeptic friends are all nuts.

OP therefore loses the argument.

hollowturtle

8 months ago

> but the code is shitty, like that of a junior developer > Does an intern cost $20/month? > Because that’s what Cursor.ai costs.

So sick of hearing comparisons between LLMs and Juniors, first of all are we really are seniors? After almost 20 years sometimes I still think I know nothing. Second, when I was a Junior just me being younger, fresher and with an eager learner attidute brought a net positive impact on the team I joined back then, that I still hang out with those people to this day and we still have fun joining new projects together. I'm so sick of these snobbish "seniors" that keep throwing rocks at younger and well prepared people

isatty

8 months ago

I don’t use AI and I don’t really care for it, but the language in this article is really bad.

I expected better from Thomas.

bhaktatejas922

8 months ago

I find the claims of 2-5x more productivity insane. I'm at least 10x more productive.

eqmvii

8 months ago

Coming around to this conclusion myself after experimenting with the tools for a few weeks.

Things have changed.

nsagent

8 months ago

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

I was willing to read until I got to this part. He can shove this drivel up his own ass for all I care if that's how he thinks. What a waste of time.

lucaspauker

8 months ago

> Also: let’s stop kidding ourselves about how good our human first cuts really are.

voidUpdate

8 months ago

but I like writing code, rather than reviewing code somebody/thing else wrote

dburkland

8 months ago

Really enjoyed this article and how it was written, especially the “tookr-jerbs” part.

shalmanese

8 months ago

I mean, the root cause of this is quite mundane.

People like to think that intelligence is some intrinsic force but it's far better thought of as situational. We are contextually smarter or dumber based on the emotions we're trying to process from a situation and how our motivation reasoning allows us to avoid certain negative emotions.

The subset of people the OP is trying to argue against are people who are otherwise normally intelligent but have an emotional need for AI to be unimportant that they're unable to process so they build a social community of terrible arguments.

The nature of the internet is that visibility is terribly correlated (and often anti-correlated) with popularity so OP thinks this is some large contingent of people when it's instead algorithmically served conflict generators.

Writing against that is also an algorithmic conflict generator, as evidenced by the number of upvotes here. The correct response is to realize that people putting up terrible arguments about AI don't actually care about AI, they're using this issue to process unresolved trauma from other, unrelated areas of their life and taking their ideas literally instead of seriously is a waste and diversion. There are plenty of smart people with far more nuanced views that still disagree with you where they're interested in the content of the argument.

JodieBenitez

8 months ago

I don't get the focus on the coding. In all the projects I worked on for 25 years, coding has never been the bottleneck in projects. Maybe the projects I work on are simple, maybe I was lucky, but still: once the requirements are clear, coding is easy. And it's literally what takes the least time. I don't want to spend less time on coding thanks to AI. Because coding is what I like, not the rest of the job. Bring me AI that will do the meetings for me please.

_moof

8 months ago

*sighs in aerospace*

Let me know when I can use one of these without violating ITAR/EAR.

hakanderyal

8 months ago

Spot on. Current gen LLMs also has the ability to mimic your code style. I always point it to existing code, and the result is the same as what I would have written.

Yesterday I “wrote” 18k lines of code with Claude & Cursor. Mostly UI, some backend. This would have taken me a week without LLMs.

I’m sold.

sebstefan

8 months ago

>Professional software developers are in the business of solving practical problems for people with code. We are not, in our day jobs, artisans. Steve Jobs was wrong: we do not need to carve the unseen feet in the sculpture. Nobody cares if the logic board traces are pleasingly routed. If anything we build endures, it won’t be because the codebase was beautiful.

Maybe you are, but I didn't get a Master's degree to produce quick shit for shareholders

ookblah

8 months ago

basically nails every point i've wanted to say but couldn't lol. also in the end the endless posturing gets tired and we go back to getting shit done. either it helps you are it doesn't.

philosophty

8 months ago

"they’re smarter than me" feels like false humility and an attempt to make the medicine go down better.

1. Thomas is obviously very smart.

2. To be what we think of as "smart" is to be in touch with reality, which includes testing AI systems for yourself and recognizing their incredible power.

aussieguy1234

8 months ago

I have a trick to improve code quality from LLMs. I only use the ones where I have control of the system prompt.

I use a prompt that convinces the LLM they are a Staff Engineer at Google and care deeply about best practices and writing clean, quality code.

While not perfect, it does improve the code quality.

thousand_nights

8 months ago

i feel like surprisingly, front end work which used to be viewed by programmers as "easier" is now more difficult of the two, because it's where LLMs suck the most

you get a link to a figma design and you have to use your eyes and common sense to cobble together tailwind classes, ensure responsiveness, accessibility, try out your components to make sure they're not janky, test out on a physical mobile device, align margins, padding, truncation, wrapping, async loading states, blah blah you get it

LLMs still suck at all that stuff that requires a lot of visual feedback, after all, you're making an interface for humans to use, and you're a human

in contrast, when i'm working on a backend ticket ai feels so much more straightforward and useful

TrackerFF

8 months ago

My take is: It is OK to don't buy into the hype. There's a lot of hype, no denying that.

But if you're actively avoiding everything related to it, you might find yourself in a position where you're suddenly being left in the dust. Maybe not now, not next month, not next year, but who some time in the future. The models really are improving fast!

I've talked with devs that (claim they) haven't touched a model since ChatGPT was released - because it didn't live up to their expectations, and they just concluded it was a big nothingburger.

Even though I don't follow the development religiously anymore, I do try to get acquainted with new releases every 3 months or so.

I hate the term "vibe coding", but I personally know non-tech people that have vibe coded products / apps, shipped them, and make more money in sales than what most "legit" coders are making. These would be the same "idea people" that previously were looking for a coder to do all the heavy lifting. Something is changing, that's for sure.

So, yeah, don't sleepwalk through it.

calebm

8 months ago

This article is very well-written. Obviously not written by AI.

system2

8 months ago

I am still using ChatGPT like a caveman and am happy with it.

thesz

8 months ago

I thought so about strong static typing looong time ago.

forty

8 months ago

Why would anyone rather read and fix someone else code rather than writing the code themselves? I do a lot of code review for other human code and it use so much more energy than writing my own code (and surely, as I have competent colleagues, this is not even as bad as if I expected that the code that I'm reading could be totally random shit)

tkgally

8 months ago

Both off and on topic: I got access to Claude’s voice mode today, and for my second test I asked it for its thoughts about both the linked blog post and the HN discussion here. The full transcript is at [1]. Some parts that stood out (slightly edited):

Me: So what is your assessment of the discussion at Hacker News?

Claude: The Hacker News discussion strikes me as much more grounded than the blog post itself. What I find compelling is that many commenters are sharing specific technical experiences rather than making broad ideological arguments. When someone describes spending hours fighting with Claude agents that keep refactoring code into spaghetti, that's concrete data about the current state of these tools. ...

Me: Well, what about you, Claude? You are made by a company whose president has recently made some public statements saying that, you know, 50% of white collar jobs will be replaced soon. And the company, Anthropic, also is very aggressively developing and selling tools to help with AI coding. What are your thoughts about that?

Claude: That's a really fair question to ask me directly. I think there's an obvious tension in my position here since I'm built by a company that has clear financial incentives around AI adoption, including coding tools. When I look at my own capabilities honestly, I can see both sides of this. I'm genuinely useful for certain coding tasks like explaining unfamiliar code, generating boilerplate, or helping debug specific problems. I've helped people learn new programming languages faster than they might have otherwise. But I'm also clearly not at the level where I could replace an experienced software engineer working on complex system design or novel problem solving. ...

[1] https://claude.ai/share/c934e67c-f132-43e8-8c31-ab238b5be25a

user

8 months ago

[deleted]

v3xro

8 months ago

Another one, here we go :) I think I'm going to keep it short because I am not here to convince people they're wrong, just to voice my dissent from uh almost every viewpoint this article comes from.

> Professional software developers are in the business of solving practical problems for people with code. We are not, in our day jobs, artisans.

Well that's just wrong - we have failed to capture tremendous value through knowledge of our craft and to reduce it down to min-maxing effort/profit is not a pursuit that I can get behind. Nobody is talking about building Ivory towers, but we can do a lot better than most of the common denominator technologies in use today. We're failing our users most of the time (and of course people like the author say it doesn't matter because it doesn't show up in the quarterly results).

> Nobody cares if the logic board traces are pleasingly routed.

Speak for yourself.

aucisson_masque

8 months ago

> Professional software developers are in the business of solving practical problems for people with code. We are not, in our day jobs, artisans. Steve Jobs was wrong: we do not need to carve the unseen feet in the sculpture. Nobody cares if the logic board traces are pleasingly routed. If anything we build endures, it won’t be because the codebase was beautiful.

I think it comes all down to that, do you have pride in what you do or you don’t ?

I make a wall with bricks, even if it will be covered with coating i will do my best to have regular joints and pacing.

Could make it faster, no one would notice the difference but me… i hate that feeling when you done something and you know it’s barely enough, just barely, it’s kind of shit and you really don’t want others to see it.

On the opposite side, some people will take pride in building wall twice as fast as me and won’t care it’s horrendous.

Both cases are valid, but me i know i can’t do a work I’m not proud of.

ta_20250603

8 months ago

My AI enamored friends are all nuts.

I get it. You're being so productive. (Or so you claim. I don't believe you.)

But if I don't affirm your work choices, or embrace them myself, you lose your mind like a little caffeinated squirrel.

> If you can’t metabolize the boring, repetitive code an LLM generates: skills issue!

Case in point. Touch grass.

bgwalter

8 months ago

I'd be interested in the open source repositories that the author of this article created a) before "AI" and b) after "AI". I mean significant work mostly done by him.

zahlman

8 months ago

> Level Setting

> First, we need to get on the same page. If you're [6 months out of date with the technology you think of as overhyped after having observed it for the last 4 years or so], you're [not fairly evaluating it].

Perhaps, but this is an extremely unconvincing approach to the argument right out of the gate - it's basically on the same level as "communism has never been tried".

Especially if you're going to start out by describing your interlocutors as "crazy", rather than positing that an effectively completely new thing now exists that ought to be evaluated differently from Copilot et. al.

timewizard

8 months ago

> You’ll only notice this happening if you watch the chain of thought log your agent generates. Don’t.

"You're nuts!" says the guy with his head intentionally buried in the sand. Also way to tell me your business model is a joke without telling me your business model is a joke. Enjoy it while it lasts.

disambiguation

8 months ago

Man the redbull is oozing off this post, talk about sipping rocket fuel.

I mean a tool is a tool, nothing wrong with that - but most of the resistence stems from AI being shoved down our throats at warp speed. Its already everywhere and I can't opt out, that stinks.

As for the skepticism in terms of adoption and usefulness, its mainly a question of whether or not it will continue improving - there's no way to no what lies ahead, but if it came to a grinding halt today well then the high water mark just isn't all that impressive.

> Yeah, we get it. You don’t believe in IPR. Then shut the fuck up about IPR. Reap the whirlwind.

This is the point that matters, and I don't think everyone is on the same page that LLMs are essentially over glorified data laundering.

The industry would get just as much "value" if we declared a jubilee and wiped out all licenses and allowed unlimited plagiarism (Looking at Zuckerburg and his 10 TB of pirated data). In fact, if AI owners published their training data sets with a capable search engine, I would bet money of it out performing LLMs in most cases. Why waste all that man power reinventing Netflix again? Just copy paste the code and give everyone their time back, sheesh.

> Kids today don’t just use agents; they use asynchronous agents. They wake up, free-associate 13 different things for their LLMs to work on, make coffee, fill out a TPS report, drive to the Mars Cheese Castle, and then check their notifications. They’ve got 13 PRs to review. Three get tossed and re-prompted. Five of them get the same feedback a junior dev gets. And five get merged.

I'm in a role that is behind the times, using a bespoke in-house framework that is immune to the benefits of LLMs, so I don't get to see what you see - so as a skeptic, I'm not convinced this isn't just the illusion of speed. I have not seen convincing results, show me the amazing things being made by AI (AI tooling itself does not count) - but yes, maybe that's because its all siloed into walled gardens.

> But something real is happening. My smartest friends are blowing it off. Maybe I persuade you. Probably I don’t. But we need to be done making space for bad arguments.

Yeah all the arguments have been made, good and bad, we're all waiting to see how it plays out. But I'd rather take the side of being a skeptic - if I'm right then I'm in the right place. If I'm wrong, that's cool too, I don't mind playing catch-up. But fully embracing the hype is, IMO, tantamount to putting all your eggs in one basket, seems like a needless risk but if that's worth it to you to get ahead then by all means, slurp up the hype.

Wowfunhappy

8 months ago

The most salient part of the article IMO:

Under the heading: "but you have no idea what the [LLM's] code is."

> Are you a vibe coding Youtuber? Can you not read code? If so: astute point. Otherwise: what the fuck is wrong with you? You’ve always been responsible for what you merge to main. You were five years go. And you are tomorrow, whether or not you use an LLM. If you build something with an LLM that people will depend on, read the code.

> People complain about LLM-generated code being “probabilistic”. No it isn’t. It’s code. [...] The LLM might be stochastic. But the LLM doesn’t matter. What matters is whether you can make sense of the result

> Reading other people’s code is part of the job. If you can’t metabolize the boring, repetitive code an LLM generates [...] how are you handling the chaos human developers turn out on a deadline?

consumer451

8 months ago

I am just some shmoe, but I believe that devs fall into to major categories when it comes to LLMs: those with their own product ideas, and those without their own product ideas.

The prior look upon Claude Code/Cursor/Windsurf much more favorably, as they are able to ship their ideas much faster.

This is a bit of a hot take, so I would love any replies to bring me back down to earth.

ofjcihen

8 months ago

I feel like we get one of these articles that addresses valid AI criticisms with poor arguments every week and at this point I’m ready to write a boilerplate response because I already know what they’re going to say.

Interns don’t cost 20 bucks a month but training users in the specifics of your org is important.

Knowing what is important or pointless comes with understanding the skill set.

noobermin

8 months ago

Tbf the dismissal of the IP argument is a bit disappointing. Just because you don't respect IP doesn't mean we all do. Some of the code I'm proudest of I'm considering never open sourcing now because I simply don't trust online repositories anymore. Granted I'm in a bit of a different field than most developers but still, open source as a concept seems less attractive in the wake of tools that scrape it and copy it automatically without attribution. Count me out from ever sharing my code ever again.

I used to believe in the stereotypical copyleft anti IP ethos. In the modern day of corporate LLMs and disrespectful scraping, the lay of the ground is different and people understandably should be less inclined to open source their code.

mcv

8 months ago

I wasn't familiar with these agents yet. Does anyone know what the best ones are? Is there a good comparison of the options and their strengths and weaknesses?

PokerFacowaty

8 months ago

This is a great article and I think I agree with most of it, not being an agent user myself.

One point the author might be missing is:

> If you were trying and failing to use an LLM for code 6 months ago †, you’re not doing what most serious LLM-assisted coders are doing

The tech giants and AI bros alike have been bombarding us with "but look what it can do NOW", "the new shiny model is revolutionary, now buy tokens", "look what's around the corner" and whatever else for over 2 years now. Can you really blame a typical "skeptic" for not being interested in putting their time to veryfing these claims themselves after seeing mediocre results so many times? You start to develop a filter for these things.

user

8 months ago

[deleted]

nomilk

8 months ago

> "but you have no idea what the code is"

> Are you a vibe coding Youtuber? Can you not read code? If so: astute point. Otherwise: what the fuck is wrong with you? You’ve always been responsible for what you merge to main. You were five years go. And you are tomorrow, whether or not you use an LLM.

This identifies a critical lever: it doesn't matter that AI sometimes makes mistakes, hallucinates, makes poor architecture decisions. All that matters is your PR to master, because that's what you always have been and will continue to be judged on. Merging trash? That's on you! Failing to utilise new tools and taking 10x longer to make the feature? Also on you!

tom_m

8 months ago

I think people fail to realize that to value software to $0 is to destroy the point of most of it.

If it becomes so easy to write apps, then everyone can build their own. They won't need your app.

The entire point of most SaaS business revolves around the simple concept/question: build vs. buy.

So if there's no point in buying since building is so easy, then AI isn't helping you like your software product/SaaS.

I think programmers may just become the "IT person" or "webmaster" or "AI guy" at a company that needs software. Not at a separate company building it for others.

This may greatly reduce the need for programmers. This will in turn reduce the need for fancy computers like that expensive MacBook Pro. It will reduce the need for web hosting. Don't get me wrong, these things will still exist...but the demand will decrease.

Essentially it will become the biggest bubble since the dot com bust. It'll be much larger.

The dust will eventually settle and we'll all adapt to a new world with AI...but I think the years and years of over specialization could come to a screeching halt.

The industry will likely implode and suck in all of the orbiting industries along with it. I hope I'm wrong, but I don't think people quite understand here. I greatly suspect there will be far fewer sales of high end computers. Compute power will continue to move to data centers.

Think about it this way. Code aside, because it's not just a coding thing. If everyone can create amazing videos and full on films with AI, then they don't need all those high end machines. They don't need tons of hard drive space that takes all the raw footage and different cuts to make a video. You prompt and the get the exact result you need. Assuming AI gets that good.

So the more we push into AI the greater than "gravity" here so to speak and the stronger the implosion. I just see an entire industry collapsing in on itself personally. If I'm believing all the FOMO logic out there.

If "we'll see our first one person billion dollar company." Whoever said that is a moron. You understand what that means, right? If anyone can do all that, then how could that even exist? Are we all going to become billionaires now? No, to say something as stupid as that is to say software is trivial and worthless. So how could anyone start a software business worth so much?

bigbuppo

8 months ago

Ah yes, because it was garbage six months ago, all that was thrown away and now they latched on to the "agentic" thing. At best this is pre-alpha-quality software not fit for production use. After all, it has been less than six months. Next it's going to be the post-agentic world, and then all the companies are going to go bankrupt once the bills are actually due. Any company that pivoted to video, err, AI is also going to go bankrupt, while everyone they laid off is going to build the next big thing and they'll live the heads of the AI charlatans on pikes outside of town to warn off any AI stragglers.

DebtDeflation

8 months ago

> Some of the smartest people I know share a bone-deep belief that AI is a fad — the next iteration of NFT mania

It's not that it's a fad. It's that the hype has gotten way ahead of the capability. CEOs laying off double digit percentages of their workforce because they believe that in 6 months AI will actually be able to do all those jobs and they want to get the message out to Wall St to juice the stock price today.

K0balt

8 months ago

I’d love to know your tool stack?

lerp-io

8 months ago

ai would be great if only the problems I was trying to solve were the right ones

OhMeadhbh

8 months ago

people do not believe AI is fad because of NFT mania. we believe LLMs are a fad because they're over-hyped and they under-deliver. just my $0.02. note that i didn't say "AI is Bullshit." but I will say some of the AI hype is bullshit. and one thing i've noticed is there are so many caveats for making accurate statements about LLMs, it's hard to make short statements that aren't wrong (unless you have all those exceptions and caveats.)

come at me.

Mofpofjis

8 months ago

> A heartfelt provocation

okay then (profanity begets profanity)

> Reading other people’s code is part of the job. If you can’t metabolize the boring, repetitive code an LLM generates: skills issue!

Do you /intend/ to spend /most/ of your work life reading AI puke? If so: sanity issue! You are advocating for replacing creative action that gives you Flow with reaction that gives you hemorrhoids, as the /bulk of the work/. Fuck right off.

> How are you handling the chaos human developers turn out on a deadline?

By correcting the deadline setting methodology for the next round of development.

> Does an intern cost $20/month? Because that’s what Cursor.ai costs

then rely on Cursor.ai to raise your next-gen seniors who are going to be supposed to review AI puke in the future

> but the craft [...] Do it on your own time

Go choke on a bag of dicks. You are the problem. This is why quality no longer exists in the world, only lowest common denominator consumerist shit. This is why cars, home appliances, and tools have been getting both worse and more user-hostile. Because nobody values the quality of their own creative output anymore. Quality should not be an exception (which makes it very expensive), but the standard. Quality should be a near-commodity, and therefore at least occasionally affordable for anyone.

> I buy a fucking table

A ridiculously low quality, but hey, cheap!, table, that will fail you at the most inopportune moment. IKEA does have its place, but it's probably not in your office where you receive clients. Do you want them to see the table top fly off?

> They almost certainly have a bigger bag of algorithmic tricks than you do: radix tries, topological sorts, graph reductions, and LDPC codes

and you'll have to review that bag of algorithmic tricks embedded in AI puke, with potential hallucinations introducing obscure, critical mathematical bugs. Good luck verifying all that as a senior, based on proofs and first principles. A human coder will either use a well-reviewed library, or cite a textbook, and implement the textbook very closely, so you can follow it, and have some trust in the intent at least.

> No profession has demonstrated more contempt for intellectual property

how disingenuous. you are showing contempt for copyright. You are totally missing the point of copyleft. Copyleft doesn't advocate for anarchy, it advocates for user freedom via the software copyright framework. When AI barfs GPL'd code snippets into a proprietary code base, that harms user freedom.

> and watched it in seconds spot LVM metadata corruption issues

you are drifting; this is not code generation. Fuzzy pattern matching has always been fair game.

kyle-rb

8 months ago

>> but you have no idea what the code is

> Are you a vibe coding Youtuber? Can you not read code? If so: astute point. Otherwise: what the fuck is wrong with you?

> You’ve always been responsible for what you merge to main. You were five years go. And you are tomorrow, whether or not you use an LLM.

Loved this bit. In a professional setting, any code — AI-written or not — should be read by at least two people, the submitter and the reviewer.

throwawaybob420

8 months ago

Another day another post about AI by people whose job will be made redundant.

Something fascinating about this HN crowd in particular is its lack of foresight. Companies producing medicine have to take into account longterm effects, yet people working in these “tech” companies push out AI after AI with not a single care in how it’s going to impact people.

peterjliu

8 months ago

interesting are LLMs a lot better at Go than Rust?

are_you_sure

8 months ago

I'm not a skeptic because they can't produce code or whatever. Sure they are getting better at it.

I'm a skeptic because the megacorps have decide ai slop is the future and its going to push us deeper into hypercapitalist dystopia.

Programming as a career is going to end up as a ai slop janny. You aren't going to be paid more if your job is easier or whatever, you're gonna get paid less (and then end up doing more atomised work) because "an ai can do it". That's the direction that everything seems to be heading.

starkparker

8 months ago

I'm more interested than skeptical, but I'd take 500 simonw posts over another one of these "shove this concern up your ass" ones.

thunderbong

8 months ago

> We are not, in our day jobs, artisans. Steve Jobs was wrong: we do not need to carve the unseen feet in the sculpture. Nobody cares if the logic board traces are pleasingly routed. If anything we build endures, it won’t be because the codebase was beautiful.

Very true and humbling.

mkfs

8 months ago

> Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

> The median dev thinks Star Wars and Daft Punk are a public commons. The great cultural project of developers has been opposing any protection that might inconvenience a monetizable media-sharing site. When they fail at policy, they route around it with coercion. They stand up global-scale piracy networks and sneer at anybody who so much as tries to preserve a new-release window for a TV show.

This is pretty disingenuous and mean-spirited. He's using SV startup types to smear all developers, including the typical, humble, un- or undercompensated FOSS dev who absolutely respects intellectual property, and quite reasonably, expects their own IP to be respected as well. But because Sam Altman types follow the "It's Better to Beg for Forgiveness than to Ask for Permission" rule, altruistic, non-sociopathic developers have no right to complain?

groestl

8 months ago

I find it curious that nobody in this whole thread does once mention AI communism. I think after much pain and sorrow, and many deaths, this is the most likely outcome. Probably in a dystopian fashion.

XiphiasX

8 months ago

All good. They will suffer, and you will laugh.

ImaCake

8 months ago

>My AI skeptic friends are all nuts

This is dead right; my AI skeptic friend are ideologically opposed to LLMs and GenAI.

Their arguments have nothing to do with how good or bad LLMs are:

- IP issues (for code in a jupyter notebook which will never face IP scrutiny)

- because it exploits slaves and poor people (but so does the computer they use and the clothes they wear).

I also have a few programmer friends who make more legitimate complaints about code quality but because they are friends there is also an obvious subtext of ideological opposition.

My opinion is you should use LLMs anyway; you can hate "capitalism" and still take advantage of the system.

user

8 months ago

[deleted]

user

8 months ago

[deleted]

user

8 months ago

[deleted]

user

8 months ago

[deleted]

20k

8 months ago

>All progress on LLMs could halt today, and LLMs would remain the 2nd most important thing to happen over the course of my career.

During my time as a programmer (gaming + astrophysics), the following things have happened:

1. The rise of GPGPU programming, which has enabled 1000x increases in performance

2. A revolution in CPU architecture, from single core, to massively multicore

3. C++98 - C++26

4. Transformational increases in CPU memory

5. (In the graphics space): dedicated raytracing hardware, the fully general purpose GPU + OpenCL/CUDA, deferred rendering, FSR/DLSS

6. Mobile phones were invented

7. 64-bit

8. The internet went from being for MSN and facebook to what it is today

9. The rise of Valve/Steam and the incredible transformational existence of the indie games market, which enables individuals to self publish their code and products for virtually nothing

10. Clang was born, and GCC came back to life. MSVC became standards compliant, finally

11. Rust was invented, and is taking off. People actually take security seriously now (!)

12. Unified CPU/GPU memory spaces, GPU architectures becoming scalar etc

All of these have had vastly more impact on my programming than LLM's ever had. I've always a bit wondered who people are who find it transformational, because I can vaguely gesture at any part of my programming tooling and find that its vastly different to 10 years ago

>interact with Git, run existing tooling, like linters, formatters, and model checkers, and make essentially arbitrary tool calls (that you set up) through MCP.

I mean.. you can just do all these things anyway. Its literally more work for me to use an LLM to run a linter than to run a linter (its built into my IDE). So's git. And formatters as well. You can also make arbitrary tool calls.. through your ide/scripts/precommit/postcommit/etc. I have no idea why you'd even want an LLM to do this!

>People complain about LLM-generated code being “probabilistic”. No it isn’t

>The LLM might be stochastic

????????? That's literally the entire point. I want deterministic answers, like clang based autocomplete instead of the nightmare that is prob- i mean stochastic autocomplete

>If hallucination matters to you, your programming language has let you down.

They matter beacuse they waste your time with bullshit that you then have to fix. No programming language can truly enforce correct logic constraints which are one of the primary difficulties with writing code. I literally have no idea what the OP is even doing, actually writing code has always been a vastly minimal amount of time - the main bottleneck is the train of thought to make sure that everything's correct. The literal typing is an afterthought. No programming language can bypass that step, they can (at best) handhold you through certain kinds of problems

>Does an intern cost $20/month? Because that’s what Cursor.ai costs.

For the moment. They'll jack up the prices while enshittifying, and then good luck. I do not want to subscribe to a service to be able to code. I use free IDEs and free tools for exactly this reason. If you rely on a paid-for 3rd party you are doing it wrong and will regret it. This is one of the silliest things in the whole article

>But people select languages in part based on how well LLMs work with them, so Rust people should get on that

They really don't. People select languages based on:

1. What they're taught at school/university

2. What language meets their domain requirements

3. What language their job requires

>Meanwhile, software developers spot code fragments seemingly lifted from public repositories on Github and lose their shit. What about the licensing? If you’re a lawyer, I defer. But if you’re a software developer playing this card? Cut me a little slack as I ask you to shove this concern up your ass. No profession has demonstrated more contempt for intellectual property.

Are you joking. Is this article a troll? Programmers give a lot of a crap about copyright law. GPL/MIT/etc are hugely important, and people respect the ever loving crap about it in general - even most major companies won't just blatantly pirate GPL works

There's a tonne more in this article, but it smells like someone who has literally no idea what they're talking about talking out of their arse, and it shows profoundly

pona-a

8 months ago

> It’s projection. People say “LLMs can’t code” when what they really mean is “LLMs can’t write Rust”. Fair enough! But people select languages in part based on how well LLMs work with them, so Rust people should get on that.

How is it the responsibility of the Rust community that there weren't enough metric tons of free code for the machine to slurp up? And the phrasing makes it sound like it's the community's fault for not feeding OpenAI enough code to be stripped of its license and authorship and get blended into a fine latent soup. It's a lot like people coming to a one-man FOSS project with a laundry list of demands, expecting to be treated with the religious reverence of a major enterprise contract.

The whole tone, the pervasive "use it or you'll be left behind"—where users saying they don't want or need it only proves further evidence of its imminent apotheosis—superficially reminds me of previous FUDs.

And how is it not concerning that the thing described as intelligent needs billions of lines to generalize a language a human can learn from a single manual? Will it need hundreds of kLOC to internalize a new library, or even its new version, beyond in-context learning? The answer is yes; you are choosing to freeze the entire tech stack, when fixing its abstractions could actually save you from boilerplate, just so the machine can write it for you at $200 a month with a significant error rate.

PeterHolzwarth

8 months ago

Wow, I'm surprised this post hasn't gotten hit by the HN flame-war detector: We have threads downvoted into forced-collapsed that are headed by completely innocuous comments. It really is strange how people here are not able to accept different viewpoints in a discussion: I've three times now returned to the comments to just blanket-upvote everything that's starting to turn grey.

keybored

8 months ago

Thankfully the uncrazy person is going to get us on that sane VC AI wavelength.

> If you’re making requests on a ChatGPT page and then pasting the resulting (broken) code into your editor, you’re not doing what the AI boosters are doing. No wonder you’re talking past each other.

They’re playing 3D chess while you’re stuck at checkers.

I do things suboptimally while learning the ropes or just doing things casually. That doesn’t mean that I judge the approach itself by my sloppy workflow. I’m able to make inferences about what a serious/experienced person would do. And it wouldn’t involve pasting things through three windows like I would do.

So of course I don’t judge AI by “ask chatty and paste the response”.

Yes indeed: “deploying agents” is what I would imagine the Ask Chatty And Paste workflow taken to Perfection to look like.

> LLMs can write a large fraction of all the tedious code you’ll ever need to write. And most code on most projects is tedious. LLMs drastically reduce the number of things you’ll ever need to Google. They look things up themselves. Most importantly, they don’t get tired; they’re immune to inertia.

Most Rube Goldberg machines are very tedious and consist of fifty-too-many parts. But we can automate most of that for you—

I could not have ever imagined a more Flintstones meets Science Fiction clash than AI According To Software Engineers. You’re using AI to generate code. And no one cares how much. It’s just so tedious in any case.

A wortwhile approach would have been to aspire to make or generate technology artifacts that could be hidden behind a black box surface with a legible interface in front. Is the code tedious? Then make the AI come up with something that is well-designed, where the obvious things you want is given freely, where minor customizations are just minor tweaks, and larger deviations require only proportionally larger changes. Uh, how about no? How about generating 20KLOC line “starter” some-framework project with all the 20KLOC “tedious” bits hanging out, then we can iterate from there. The AI made a Git log and everything so it’s ya know audited.

But maybe I’m being unfair. Maybe we are moving towards something not quite as stupid as Deploy ChatGPT 50X? Or maybe it’s effectively going to behind a black box. Because ya know the AI will deal with it all by itself?

> Are you a vibe coding Youtuber? Can you not read code? If so: astute point. Otherwise: what the fuck is wrong with you?

> You’ve always been responsible for what you merge to main. You were five years go. And you are tomorrow, whether or not you use an LLM.

No!, and what the fuck is wrong with you? We are Flintstone technologists and I’ll be damned if I can’t get my AI brain chip-injected, genetically enhanced for speed horsey cyborg for my modern horse-drawn carriage patent.

skor

8 months ago

well, I'm going to reference [1] a comment on the "Who Cares Era" that really stood out and maybe should get pinned somewhere.

What about that "superpower" we had to make something out of _nothing_ but our own brains? Sure, you may have looked up some code (do some research and learn), but that mental exercise.. just knowing your code inside-out, can never be compared to the "oh look at that, it actually works" with LLM stuff.

Well guess what, now, you traded that superpower for a subscription! (yes, you are now a middle man of software peddling - paying some company that stole other peoples code and ideas and did not pay _them anything_ in return), and eventually you will get to a point when the internet is down, you won't write any software that day cause you cant get the N model to work.

Did we go to the next step in software evolution? If it has a cost per month (and you pay thieves) (yes that what they are), its going to be a hard "no" for me, you just became a cow. Sure, now this is whats expected of you? OK. This has some strong neoliberalism drift, I assume I can be wrong so please comments welcome I am quite interested in this part.

yes, augmentations seem like amputations, is it McLuhan? I'm not sure, Will we retain our power to produce software? No! Humans dumb down very quickly, a generation is all it took to reduce reading to kids below expected educational levels [2]. There will be less professionals and lots of peddlers that have no skills, and software will be so junk it will be seriously scary to catch a plane in 10 years time.

Interesting times.

[1] https://news.ycombinator.com/item?id=44116724 [2] https://www.theguardian.com/lifeandstyle/2025/jun/02/gen-z-p...

jurgenaut23

8 months ago

Something that I feel is missed in every such post or debate is that, maybe, this isn’t a yes/no question.

Fast forward 10 years, the skeptics will be right on a few things, and the fanboys will be right on other things.

I for one know this isn’t just a “fad” like NFTs were, but I cannot help but feel skeptical about the sweeping claims of software engineering’s doomsday.

gar1t

8 months ago

I code to understand. That's it. That's all. My code is a reflection of a problem definition and a solution. The problem may be under- or poorly defined and the solution may be lousy but by God it's there as a clear reference to be further reasoned about.

Programmers who don't work to deepen their understanding? Nah, sorry, not programmers I want anywhere near the code I'm working on.

To the extent that an LLM can help deepen understanding, good! Use it! Use its code. But you use it according to your intentional, systematic understanding of what the you're doing and why. And that understanding is not a function of code generation or, worse, code churn for the sake of feeling like you're going fast and paying less.

> LLMs can write a large fraction of all the tedious code you’ll ever need to write. And most code on most projects is tedious.

I've been writing code for over 30 years and I can't recall ever writing "tedious code". I don't know what this even means. Code, by definition, should not be tedious. At any layer of the stack, code should solve non-tedious problems. The whole point of code is to avoid tedium.

Most code, most projects? I haven't seen this and doubt it's even close to true - if it is God help us. If you write tedious code, find another place to work or another career.

> Sometimes, gnarly stuff needs doing. But you don’t wanna do it. So you refactor unit tests, soothing yourself with the lie that you’re doing real work.

Seriously who kills time by refactoring unit tests? Is this projection by the author?

> But an LLM can be told to go refactor all your unit tests.

Wtaf?? The unit tests are what stands between the blind ambitions of a statistical model and correct code. Handing over tests to an LLM? One staggers.

Tests represent part of that problem definition and solution. They're integral to the code. They foster and deepen understanding - not to be subject to the musings of statistical process, unless those musings serve as a dialectic.

> If you can’t metabolize the boring, repetitive code an LLM generates: skills issue! How are you handling the chaos human developers turn out on a deadline?

Answer: Slow the F down! Chaos and programming don't belong. Managers who drive their teams like this are bad managers.

> If hallucination matters to you, your programming language has let you down.

The author seems to think that programming is about producing code. Producing code that compiles is not a problem. Producing correct and coherent solutions to problems that need to be solved is a problem. Hallucinations aside, how will you know that generated code is something to keep or reject unless you have some understanding of what the code should do before you see it?

> Does an intern cost $20/month? Because that’s what Cursor.ai costs.

Squee! Code for all my friends!

> but it’s bad at rust

No, it's bad at understanding. And so are humans, initially. But it's our job to build and deepen understanding and we use code to facilitate that.

> Professional software developers are in the business of solving practical problems for people with code.

Correct.

> [LLMs] devour schlep, and clear a path to the important stuff, where your judgement and values really matter.

This begs the question, who defines what's important? It sounds like the author agrees that it's us, not the model. I agree this is a useful method. It's like any code review - it sharpens the reader no matter the code quality.

> As a mid-late career coder, I’ve come to appreciate mediocrity.

How cool and nonchalant what a rebel he says the opposite of everyone what a baddie!

I think the author means "appreciate naivety", meaning, a first pass that's good enough is good enough - there's no need to go further. I'll concede this, but it's a concession and not something to boast about. Odds are decent you'll come back to this naive implementation and revise it. Yes, at a certain point there's diminishing returns but good programmers know when to invest in revision and when to move on.

> LLMs really might displace many software developers.

We've seen this cycle. Technology and globalization puts pressure on programmers. There are legions of programmers in parts of the world that will generate code for $20 an hour. You can pay $20 and hour - or $20 a month - and generate mountains of code that blows chunks - not because it's ugly but because it's incoherent or because it solves the wrong problem. We. have. seen. this. It's why Silicon Valley still pays massive salaries to good programmers.

> The cool kid haughtiness about “stochastic parrots” and “vibe coding” can’t survive much more contact with reality.

Time will tell. In the meantime I'll keep investing in understanding, not code, and see how things shake out.

kakadu

8 months ago

A hammer hammers.

It hammers 100% of the time, with no failure.

It requires the same amount of labour from my part but it delivers the same outcome every time.

That is what tools do, they act as an extension and allow you to do things not easily done otherwise.

If the hammer sometimes hammers, sometimes squeaks and sometimes screws then it requires extra labour from my part just to make it do what purpose specific tools do, and that is where frustrations arise.

Make it do one thing excellent and we talk then.

mrbungie

8 months ago

You know what's nuts? How so many articles about supporting LLMs and against skeptics are so full of fallacies and logical inconsistencies like strawmans, false dichotomies, appeals to emotion and to authority when they have supposedly almost AGI machines to assist them in their writing. They could at least do a "please take a look at my article and see if I'm commiting any logical fallacies" prompt iteration session if they trust these tools so much.

These kinds of articles that heavily support LLM usage in programming seem to FOMO you or at least suggest that "you are using it wrong" in a weak way just to invalidate contrary or conservative opinions out of the discussion. These are pure rhetorics with such an empty discourse.

I use these tools everyday and every hour in strange loops (between at least Cursor, ChatGPT and now Gemini) because I do see some value in them, even if only to simulate a peer or rubber duck to discuss ideas with. They are extremely useful to me due to my ADHD and because they actually support me through my executive disfunction and analysis paralysis even if they produce shitty code.

Yet I'm still an AI skeptic because I've seen enough failure modes in my daily usage. I do not know how to feel when faced with these ideas because I feel out of the false dichotomy (pay for them, use them every day, but won't think them as valuable as the average AI bro). What's funny is that I'm yet to see an article that actually shows LLMs strengths and weaknesses in a serious manner and with actual examples. If you are going to defend a position, do it seriously ffs.

mlsu

8 months ago

I tried the agent thing on:

- Large C codebase (new feature and bugfix)

- Small rust codebase (new feature)

- Brand new greenfield frontend for an in-spec and documented openAPI API

- Small fixes to an existing frontend

It failed _dramatically_ in all cases. Maybe I'm using this thing wrong but it is devin-level fail. Gets diffs wrong. Passes phantom arguments to tools. Screws up basic features. Pulls in hundreds of line changes on unrelated files to refactor. Refactors again and again, over itself, partially, so that the uncompleted boneyard of an old refactor sits in the codebase like a skeleton (those tokens are also sent up to the model).

It genuinely makes an insane, horrible, spaghetti MESS of the codebase. Any codebase. I expected it to be good at svelte and solidJS since those are popular javascript frameworks with lots of training data. Nope, it's bad. This was a few days ago, Claude 4. Seriously, seriously people what am I missing here with this agents thing. They are such gluttonous eaters of tokens that I'm beginning to think these agent posts are paid advertising.

habosa

8 months ago

I’m an AI skeptic. I’m probably wrong. This article makes me feel kinda wrong. But I desperately want to be right.

Why? Because if I’m not right then I am convinced that AI is going to be a force for evil. It will power scams on an unimaginable scale. It will destabilize labor at a speed that will make the Industrial Revolution seem like a gentle breeze. It will concentrate immense power and wealth in the hands of people who I don’t trust. And it will do all of this while consuming truly shocking amounts of energy.

Not only do I think these things will happen, I think the Altmans of the world would eagerly agree that they will happen. They just think it will be interesting / profitable for them. It won’t be for us.

And we, the engineers, are in a unique position. Unlike people in any other industry, we can affect the trajectory of AI. My skepticism (and unwillingness to aid in the advancement of AI) might slow things down a billionth of a percent. Maybe if there are more of me, things will slow down enough that we can find some sort of effective safeguards on this stuff before it’s out of hand.

So I’ll keep being skeptical, until it’s over.

norir

8 months ago

This has become an impoverished conversation. I have seen this pattern where llm capabilities improve and people who had previously dismissed the technology based on its present capabilities realize they were wrong in their pessimistic assessment of the potential of the tech switch over to the other side and project their own previous bias onto those who continue to object.

The basic structure is this: six months ago, I tried llms and they were trash, but holy cow they have improved so much, now I can use them to avoid tedious that I don't like! Don't be an idiot like my skeptical past self.

Then they accuse everyone who now disagrees with their take on the tech as being an incurious luddite who is blinded by their anti-progress bias.

Personally, as a non-user but close observer of the tech, I never doubted that the tech would improve but there are obvious problems with the tech beyond hallucinations that have to do with human meaning, understanding and power relations that cannot be solved by making the tech better.

My challenge to all of the booster is this: try to articulate your own personal vision of both ai utopia and ai dystopia. I personally find it borderline impossible to even imagine a utopia emerging from genai, but it is extremely easy for me to imagine dystopia, especially given the entities that are controlling the tech and competing to "win" the ai arms race.

For me, the representation of the Chinese state as filtered through western media is already a dystopia. Of course, having not been to China myself and being unable to speak any of their languages, I cannot personally verify the representation. But by competing with the Chinese on ai (and I mean Chinese in the way we define them in the west, which I recognize may be very different from both the actual lived experience in China and their self-conception), we become more like our own negative stereotypes of them. It is essentially a race to disempower ordinary people, remove agency from their lives, hand it over to agents who most certainly do not have the best interest of living humans in mind and call this victory. To "win" the ai war as presently defined would likely be disaster for us all.

There are these ridiculous handwaving things about solving climate change or even human mortality with this tech even though there is no evidence whatsoever that it will do this. Just because the people building it say it will do these things doesn't mean we should trust them.

Imagine if a primatologist tried to tell us that because they have trained chimpanzees to recognize colors and some words better than a three year old, we should now stop investing in education and direct all of out resources into training chimps to do all of our repetitive tasks for us to liberate us from the drudgery of doing anything for ourselves. With enough resources, you would see an explosion in chimp capabilities and this would come directly at the expense of humans, who now have no work to do and just sit on top of a pyramid built by chimp labor. Not only would the things we made be worse than what we could have if we focused on developing our own human capacities instead of chimp capacities, but we would live in fear that the chimps (who also are much stronger than us) will wake up to their plight and rise up against their rulers. Humans would also rapidly lose our own capabilities and become much more like chimps than the humans of today. Sound familiar?

I tend to believe that as it is currently being developed, this tech is far more likely to lead us in a direction like the chimp apocalypse than some post labor utopia.

That doesn't mean that the tech isn't getting better or can't do impressive things. I can hold both things in my head at once. But I am much more concerned with human flourishing and well being than some bored engineers who don't actually like programming (or at least don't like it under the current industrial conditions) feeling like they are being liberated from the tedium of their work. And instead of solving the real the underlying problems that make the work so tedious, we instead compound the problem by having ai generate even more of the exact kind of code that caused the problem i the first place.

grey-area

8 months ago

I’d love to see the authors of effusive praise of generative AI like this provide the proof of the unlimited powers of their tools in code. If GAI (or agents, or whatever comes next …) is so effective it should be quite simple to prove that by creating an AI only company and in short order producing huge amounts of serviceable code to do useful things. So far I’ve seen no sign of this, and the best use case seems to be generating text or artwork which fools humans into thinking it has coherent meaning as our minds love to fill gaps and spot patterns even where there are none. It’s also pretty good at reproducing things it has seen with variations - that can be useful.

So far in my experience watching small to medium sized companies try to use it for real work, it has been occasionally useful for exploring apis, odd bits of knowledge etc, but overall wasted more time than it has saved. I see very few signs of progress.

The time has come for llm users to put up or shut up - if it’s so great, stop telling us and show and use the code it generated on its own.

bloat

8 months ago

So we replace the task of writing tedious boilerplate with the task of reading the AI's tedious boilerplate. Which takes just as long. And leaves you with less understanding. And is more boring.

davidclark

8 months ago

>If you were trying and failing to use an LLM for code 6 months ago †, you’re not doing what most serious LLM-assisted coders are doing.

Here’s the thing from the skeptic perspective: This statement keeps getting made on a rolling basis. 6 months ago if I wasn’t using the life-changing, newest LLM at the time, I was also doing it wrong and being a luddite.

It creates a never ending treadmill of boy-who-cried-LLM. Why should I believe anything outlined in the article is transformative now when all the same vague claims about productivity increases were being made about the LLMs from 6 months ago which we now all agree are bad?

I don’t really know what would actually unseat this epistemic prior at this point for me.

In six months, I predict the author will again think the LLM products of 6 month ago (now) were actually not very useful and didn’t live up to the hype.

slg

8 months ago

>We imagine artists spending their working hours pushing the limits of expression. But the median artist isn’t producing gallery pieces. They produce on brief: turning out competent illustrations and compositions for magazine covers, museum displays, motion graphics, and game assets.

One of the more eye-opening aspects of this technology is finding out how many of my peers seemingly have no understanding or respect for the concept of art.

ckiely

8 months ago

The argument that programmers are into piracy and therefore should shut up about theft is nonsensical. Not defending piracy, but at least an artist or creator is still credited and their work is unadulterated. Piracy != plagiarism.

TheCraiggers

8 months ago

> "For art, music, and writing? I got nothing. I’m inclined to believe the skeptics in those fields."

You've already lost me, because I view programming as an art form. I would no more use AI to generate code than I would use it to paint my canvas.

I think the rest of the article is informative. It made me want to try some things. But it's written from the perspective of a CEO thinking all his developers are just salt miners; miners go into the cave and code comes out.

I think that's actually what my hangup is. It's the old adage of programmers simply "copying and pasting from stack overflow" but taken to the extreme. It's the reduction of my art into mindless labor.

lapcat

8 months ago

> If you were trying and failing to use an LLM for code 6 months ago, you’re not doing what most serious LLM-assisted coders are doing.

This sounds like the "No true Scotsman" fallacy.

> People coding with LLMs today use agents. Agents get to poke around your codebase on their own.

That's a nonstarter for closed source, unless everything is running on-device, which I don't think it is?

> Part of being a senior developer is making less-able coders productive

Speak for yourself. It's not my job.

user

8 months ago

[deleted]

moomin

8 months ago

Who are these friends? Are they in the room with us right now? Look, maybe my experience is atypical but I’m an AI skeptic and I know plenty of others. I’ve never heard people claim that LLMs are a fad or going to go away.

I’ve seen lots of people:

* think that conflating LLMs and “AI” produces a lot of poorly reasoned arguments

* doubt the economic narratives being built around LLM technology

* think the current rate of progress in the technology is basically flat

* think most “AI companies” resemble most crypto companies

An addendum to the last point: very few crypto skeptics deny that BitCoin is a thing or think it’s going away, either. It’s just strawmanning.

esjeon

8 months ago

It's like the problem of half-full vs half-empty. We see LLM can handle certain tasks, but counter-examples are too far from being rare. So, "LLM can do A" is always followed by "LLM fails at A".

The problem is that LLM never performs consistently. It works when it works. It doesn't when It doesn't. No one knows exactly why, and no one can tell when it's gonna fail. For example, even to this day, GPT sometimes gives me wrong calculations, even when it is instructed to use calculator for that. Who knows why it ignores the instruction, nor why it can't reliably perform the addition of two integers. That really screws up with the automation.

Anyways, I'm really tired of skeptic-skeptics. I hate some people believe "half-full" is genuinely better than "half-empty". I refuse that idea completely. It's more about which context you're in. If you need exactly a cup of water, it's half-empty. If you are lucky to have some water, it's half-full. If you have a clear direction you want to go, you discover a lot of deficiencies. If you're there just enjoying the moment, yeah, you can just keep enjoying the new toy.

grafmax

8 months ago

> Our jobs are just as much in tech’s line of fire as everybody else’s have been for the last 3 decades. We’re not East Coast dockworkers; we won’t stop progress on our own.

If you really believe in the power of LLMs then it’s time to wake up. The writing is on the wall. Automation the workforce further into precarious jobs.

The idea that tech workers can’t stop so-called “progress” is at best a dumb self-fulfilling prophecy. Our workplaces depend on us. We have the power to put the brakes on whatever our employers are up to by organizing and striking.

Tech workers should be organizing to prepare for the profit-taking moves management has in store for us as the tech gets better and better. If LLMs really live up to their potential, It’s just going to get worse from here.

They keep bragging about how many people are going to lose their jobs and they mean us. They’re bragging about firing us! It’s foolish for us to sit idly by while we are the ones who make them their profits.

thoughtpeddler

8 months ago

I was recently "pair-vibe-coding" with someone who's much 'smarter' than I am, certainly when it comes to coding, especially Python. He's always been in the LLM skeptic camp, and it was fascinating to see that because of his extensive Python knowledge, his prompting was actually very minimal and weak, one might even say 'lazy'. The output he got from o3 for our given task was therefore really mediocre, and had a few hallucinations (which could've been avoided if he spent a few more seconds or minutes prompting).

I, knowing far less than him, would've had a much more elaborate prompt, and o3 would've proved a lot more competent/capable. Yet with my friend, since he knows so much already, and has such a high bar, he thinks the AI should be able to do a lot more with just a few basic words in a prompt... yet, for that same reason, he (understandably) doubts the inevitable sub-par output.

That's what makes all these debates about "Why are smart people doubting LLMs??" so pointless. The smarter you are, the less help you need, so the less prompting you do, the less context the model has, the less impressive the output, and the more the smart person thinks LLMs suck. With this logic, of course the smartest people are also the biggest skeptics!

dawnbreez

8 months ago

Throwing my two cents in here...I think there's a disconnect between what AI advocates want, and what everyone else wants.

The arguments against genAI tend to point out things like: 1. Its output is unreliable at best 2. That output often looks correct to an untrained eye and requires expert intervention to catch serious mistakes 3. The process automates away a task that many people rely on for income

And the response from genAI advocates tends to be dismissive...and I suspect it is, in part, because that last point is a positive for many advocates of genAI. Nobody wants to say it out loud, but when someone on Reddit or similar claims that even a 10% success rate outweighs the 90% failure rate, what they mean is most likely "A machine that works 10% of the time is better than a programmer who works 60-80% of the time because the machine is more than 6-to-8-times cheaper than the programmer".

There's also the classic line about how automation tends to create more jobs in the future than it destroys now, which itself is a source of big disconnects between pro-genAI and anti-genAI crowds--because it ignores a glaring issue: Just because there's gonna be more jobs in the future, doesn't mean I can pay rent with no job tomorrow!

"You can write an effective coding agent in a week" doesn't reassure people because it doesn't address their concerns. You can't persuade someone that genAI isn't a problem by arguing that you can easily deploy it, because part of the concern is that you can easily deploy it. Also, "you’re not doing what the AI boosters are doing" is flat-out incorrect, at least if you're looking at the same AI boosters I am--most of the people I've seen who claim to be using generated code say they're doing it with Claude, which--to my knowledge--is just an LLM, albeit a particularly advanced one. I won't pretend this is anything but anecdata, but I do engage with people who aren't in the "genAI is evil" camp, and...they use Claude for their programming assistance.

"LLMs can write a large fraction of all the tedious code you’ll ever need to write" further reinforces this disconnect. This is exactly why people think this tech is a problem.

The entire section on "But you have no idea what the code is!" falls apart the moment you consider real-world cases, such as [CVE-2025-4143](https://nvd.nist.gov/vuln/detail/cve-2025-4143), where a programmer who is a self-described expert working with Claude--who emphasizes that he checked over the results with a fine-toothed comb, and that he did this to validate his own skepticism about genAI!--missed a fundamental mistake in implementing OAuth that has been common knowledge for a long while. The author is correct in that reading other people's code is part of the job...but this is difficult enough when the thing that wrote the code can be asked about its methods, and despite advances in giving LLMs a sort of train of thought, the fact remains that LLMs are designed to output things that "look truth-y", not things that are logically consistent. (Ah, but we're not talking about LLMs, even though kentonv tells us that he just used an LLM. We're talking about agentic systems. No true AI booster would "just" use an LLM...)

I actually agree with the point about how the language can catch and point out some of the errors caused by hallucination, but...I can generate bad function signatures just fine on my own, thank you! :P In all seriousness, this addresses basically nothing about the actual point. The problem with hallucination in a setting like this isn't "the AI comes up with a function that doesn't exist", that's what I'm doing when I write code. The problem with hallucination is that sometimes that function which doesn't exist is my RSA implementation, and the AI 'helpfully' writes an RSA implementation for me, a thing that you should never fucking do because cryptography is an incredibly complex thing that's easy to fuck up and hard to audit, and you really ought to just use a library...a thing you [also shouldn't leave up to your AI.](https://www.theregister.com/2025/04/12/ai_code_suggestions_s...) You can't fix that with a language feature, aside from having a really good cryptography library built into the language itself, and as much as I'd love to have a library for literally everything I might want to do in a language...that's not really feasible.

"Does an intern cost $20/month? Because that’s what Cursor.ai costs," says the blog author, as if that's supposed to reassure me. I'm an intern. My primary job responsibility is getting better at programming so I can help with the more advanced things my employer is working on (for the record, these thoughts are my own and not those of my employer). It does not make me happy to know that Cursor.ai can replace me. This also doesn't address the problem that, frankly, large corporations aren't going to replace junior developers with these tools; they're going to replace senior developers, because senior developers cost more. Does a senior engineer cost 20 dollars a month? Because that's what Cursor.ai costs!

...and the claim that open source is just as responsible for taking jobs is baffling. "We used to pay good money for databases" is not an epic own, it is a whole other fucking problem. The people working on FOSS software are in fact very frustrated with the way large corporations use their tools without donating so much as a single red cent! This is a serious problem! You know that XKCD about the whole internet being held up by a project maintained by a single person in his free time? That's what you're complaining about! And that guy would love to be paid to write code that someone can actually fucking audit, but nobody will pay him for it, and instead of recognizing that the guy ought to be supported, you argue that this is proof that nobody else deserves to be supported. I'm trying to steelman this blogpost, I really am, but dude, you fundamentally have this point backwards.

I hope this helps others understand why this blogpost doesn't actually address any of my concerns, or the concerns of other people I know. That's kind of the best I can hope for here.

kmeisthax

8 months ago

in re: "but the plagiarism"

As someone who thinks modern copyright law is unfit for purpose, and more specifically that software shouldn't be copyrightable at all, my main complaint about LLMs is the same as Chinese spying and IP theft: I only care because they don't share.

I'm perfectly fine using open-weights LLMs[0] to do things LLMs are good at. But I would never trust using OpenAI or Perplexity's SaaSS models as a replacement for my own skills. Half the reason they put things behind a server is so they can spy on you[1], the other half is so they can promise a revenue stream to the people they plan to sell the company to so they can enshittify it. The only enshittification-resistant software is software people can't charge you for.

All the other things this blog post is complaining about are real reactions to real harms, even in the FOSS community. People use LLMs as skilled labor substitute and get burned, while creating a spam problem for everyone else. In fact, that's the real replacement threat for artists: diffusion models don't so much outperform human artists as much as they convince people not to pay for art.

[0] I don't give two flying fucks about the license terms.

[1] The judge in the NYT lawsuit is even ordering spying for evidentiary reasons

mgraczyk

8 months ago

We are beyond the point of trying to convince naysayers.

I will simply not hire anybody who is not good at using LLMs, and I don't think I would ever work with anybody who thinks they aren't very useful. It's like working with somebody who things compilers are useless. Obviously wrong, not worth spending time trying to convince.

To anyone who reads this article and disagrees with the central point: You are missing the most important thing that will happen in your career. You should reevaluate because you will be unemployable in a few years.

aykutcan

8 months ago

> Do you like fine Japanese woodworking? All hand tools and sashimono joinery? Me too. Do it on your own time.

Ughh. That "own time." Spoken like a true middle manager who thinks passion is a liability.

donatj

8 months ago

And this goes at least part of the way towards explaining why Fly.io has been the second least reliable cloud provider I've ever used, after Azure.

theusus

8 months ago

Numerous words to make a very small point. Also, a lot of colloquial words used that made it difficult to comprehend the sentences.

dnoberon

8 months ago

This reads even more like an angry teenager than my angsty high school diary. I'm not sure how many more strawmans and dismissive remarks I can handle in one article.

davidgerard

8 months ago

fly.io is of course closed source, right?

so we can't look at the code and see the demonstrable engineering excellence

trust me bro, you fool, you poltroon,

user

8 months ago

[deleted]

mindwok

8 months ago

I am pretty exhausted with reading the cynical takes on AI lately. Like, I get it, but ugh.

Yes, the tech isn't perfect yet. Yes, it means existing industries will be displaced. Yes, it threatens to undermine the identities we have built as useful artists, programmers, data analysts, whatever. It is a scary, uncertain future, and on some days I am overcome with dread about what it means for me.

But ffs, we will figure it out. This technology, if it continues to improve at the pace it has, will open the door to us solving previously intractable problems - problems like curing cancer, endless energy and nuclear fusion, making us 100x more productive at building great housing and infrastructure. Let's get on board and make this thing a success, not fight it every step of the way because we want to preserve some basically arbitrary state of society.

millipede

8 months ago

"AI is Amazing" - People who barely write any code.

bitpush

8 months ago

A writing for the ages. I've found most of the LLM skeptics are either being hypocritical or just being gate-keepy (we dont want everyone to write code)

user

8 months ago

[deleted]

user

8 months ago

[deleted]

user

8 months ago

[deleted]

sneak

8 months ago

THANK YOU.

I was a 3-4x programmer before. Now I’m a 9-15x programmer when wrangling LLMs.

This is a sea change and it’s already into “incredible” territory and shows no signs of slowing down.

> Think of anything you wanted to build but didn’t. You tried to home in on some first steps. If you’d been in the limerent phase of a new programming language, you’d have started writing. But you weren’t, so you put it off, for a day, a year, or your whole career.

I have been banging out little projects that I have wanted to exist for years but always had on the back burner. Write a detailed readme and ask the agent to interrogate you about the missing parts of the spec then update the README. Then have it make a TODO and start implementing. Give it another code base for style guide.

I’ve made more good and useful and working code in the last month than I have in the last two years.