Live data from Hacker News

AI makes programming differently difficult

cacm.acm.org

31–40 of 154 posts

Re: AI makes programming differently difficult

#31
post #15

> Code becomes only one representation of thought among many overlapping ones. This is wrong, code is the concrete "truth" being executed, the rest (plans, prompts, agent instructions) are just temporary artifacts used to generate the code. What's left is the code alone. LLMs don't have any semantics, they can't execute anything with 100% certainty. So far programming languages are the only langugues that can do that…

No, I think it's correct. One artefact of programming for decades is that I ended up thinking in code directly without "translating" from English first.

Thus the push to use LLMs has felt a little bit like being a fluent French speaker being told that all of the best French writers are using google translate to write French translated from English now.

Re: AI makes programming differently difficult

#32

It’s the same with writing: AI writing is coherent on the surface, but is impossible to edit because it’s built on no real insight. Now the sharpening of a coherent point, challenging one’s assumptions, and editorial decisions of what (not) to include are super important because they’re no longer a byproduct of the writing process.

Human insight can emerge from attacking the semblance of sense in the LLM's output.

Much of the cognitive work in writing emerges in the labor of writing prose and challenging assumptions against the model you build in your head as you go. I've found this process is inverted when working with an LLM: it in effect emits a provisional structure first, and I discover what I actually think by finding where its output is vague, overconfident, incomplete or outright false.

Accepting surface-level coherence as finished thought is the failure mode to avoid.

Re: AI makes programming differently difficult

#33
post #21
post #18

Earlier quoted context omitted.

I think you misunderstand. Code is also representing something. It may be what gets executed, but that does not make it "correct".

It does make it correct in the reality sense If someone says something happens and the code says something else, the code wins.

That's technically correct but consider the following:

You're implementing quicksort. The actual algorithm is a conceptual piece of math. You write the code. But sometimes the code produces output that isn't sorted.

The code "wins" in that whatever the code says is what actually happens. But the code is wrong. It must be edited to match the algorithm. The _algorithm_ is the thing that is proven correct; the _algorithm_ is what we wanted to execute. The code is a representation of the algorithm.

Re: AI makes programming differently difficult

#34
post #2

It can be both at the same time - easier and different.

I think the bigger issue in defining this is that “programming” is too big a task to say whether it got easier or harder. Some YAML formalities now take zero effort while architectural thinking became way more important and difficult.

>architectural thinking became way more important and difficult.

Did it though? I think the architectural stuff was always there and was always hard. And still is. I don't buy that it got harder now that you've got a pretty smart AI you can bounce ideas off, ask to investigate stuff, maybe make a quick mockup trivial test of both options on an architectural choice you face, send off to do research etc.

...so in my mind the aggregate {{programming}} got easier because the hard parts are still hard and the trivial parts got AI'd.

The only step up in complexity imo is wrangling a bunch of agents. Even very good coders report mental exhaustion from that

Re: AI makes programming differently difficult

#35
post #7

Quote of the main point in the article: In other words, the hard part moves from recall (“How do I write this?”) to judgment (“Does this actually make sense?”) This is very true. But to evaluate if it makes sense, you first need experience writing the code. I am glad I learned software development over 15 years ago, and not today. AI is a super power, but without the experience to guide it, it can go horribly wrong r…

I wonder about this. One would think new programmers, like old, will learn through experience to care most about the things that matter, and ignore things that don’t. In 10 years my pre-AI experience may condition me to waste time thinking about struct packing, while younger developers simply won’t know or care

> thinking about struct packing, while younger developers simply won’t know or care

That particular ship sailed more than 15 years ago. Back then if you asked people trained on high level GC-based languages about low level details or memory allocation, they wouldn't know.

Re: AI makes programming differently difficult

#36

It's somehow more tiring, reading complex plans in response to your guidance, and then making decision after decision. Reminds me of this Alan Watts bit... A farmer who ordered a farmhand quickly discovered he was an extraordinarily efficient worker. The first day, he put him on sawing logs, and the farmhand sawed more logs than anybody else, ever. It was fantastic — but the wood-cutting work was all done in one day.…

Historically, we make systems to make these decisions - build a method to sort potatoes. Or build a method that can build a method to sort potatoes.

Ai, as a cognitive technology, has the potential to climb that hierarchy.

Yes, current software developers need to make more decisions now. But that is just until the methodologies settle.

Then it is over.

Re: AI makes programming differently difficult

#38

Earlier quoted context omitted.

That's where I've landed too. Maybe I'm just delusional and telling myself a comfortable story, but I think my ~15 years of experience building software by hand lets me utilize these robots in a way that people lacking it simply can't. I still absolutely loathe talking to them and using them. But I feel less scared about losing my career these days. Work wants me to use it, I'm using it at work. In my hobby projects…

Yep, that's definitely true... for now. The thing that concerns me, however, is that just a year ago it was only useful for doing things like reminding me how to read in a file. Now it's at the level of a competent junior, who can almost do the whole task from start to finish but needs a little supervision. All the AI companies are retaining the messages we're sending to their agents to train the next models. I would…

I find myself just jumping up the abstraction ladder, aiming for more and more ambitious projects. It's like electric mountain bikes; at first there was a lot of objection across the purists (and there still is), but eventually people understood you put in the same effort just go longer and faster. I work the same hours and strain my thought just as much but my output is significantly more ambitious. Left to their own devices even SOTA models like Fable would produce a complete mess over time, fine locally but awful globally. Admittedly, I don't know if it's the nature of the beast or if I'm just not thorough enough with my prompting and let the LLM guess what I want to end up with; but clearly some directional expertise is required.

Re: AI makes programming differently difficult

#39
I don't think I write or read or code anymore, bar prs from juniors or senior colleagues wanting a review.

I didn't think it would work just 6 months ago, but reality is that at this point AI writes better code than me and I'm not the average developer, but someone who loved the craft and was good at it.

Lots of effort was required to get the repositories to a good level, best practices, documentation, etc, but reality is that once you do that and have strong rails most of your work is having it to write a plan focused on business logic, review it, have it derive an implementation plan, review it and then it's mostly on its own.

Codebases have never been healthier, cleaner, better documented, consisted and thoroughly tested as they are now. There was just no spare time and mental energy to bring them there before, now there is and experimenting to get there was cheap.

Needless to say I no longer enjoy the job anymore and thinking of changing domain. I loved tinkering about implementation details, etc, but the job nowadays is more of qa and architectural design than writing or reviewing code.

Re: AI makes programming differently difficult

#40

It’s the same with writing: AI writing is coherent on the surface, but is impossible to edit because it’s built on no real insight. Now the sharpening of a coherent point, challenging one’s assumptions, and editorial decisions of what (not) to include are super important because they’re no longer a byproduct of the writing process.

> It’s the same with writing: AI writing is coherent on the surface, but is impossible to edit because it’s built on no real insight.

LLMs lie in the unhappy-medium between an abstract machine we can reason-about versus a person we can instinctively model and simulate.

Instead it's a complicated machine that evades both reasoning and intuition.

Post reply on HN