News for hackers. Stuff that matters.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by Terr_ on Saturday March 01, 2025 @03:04PM (#43223094)
> I use LLMs for writing generic, repetitive code, like scaffolding. It's OK with boring, generic stuff.

In other words, they're OK in use-cases that programmers need to eliminate, because it means there's high demand for a reusable library, some new syntax sugar, or an improved API.

Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by hombre_fatal on Saturday March 01, 2025 @04:08PM (#43223694)
Boilerplate and plumbing code isn't inherently bad, nor do you improve the codebase by factoring it down to zero with libraries and abstractions.

As I've matured as a developer, I've appreciated certain types of boilerplate more and more because it's code that shows up in your git diffs. You don't need to chase down the code in some version of some library to see how something works.

Of course, not all boilerplate is created equally.

Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by andix on Saturday March 01, 2025 @04:12PM (#43223723)
Boilerplate is better than bad abstractions. But good abstractions are far superior.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by pertymcpert on Saturday March 01, 2025 @04:21PM (#43223795)
The best abstraction is no abstraction.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by andix on Saturday March 01, 2025 @04:31PM (#43223890)
No.

Edit: I'm not going to code asm just to be cool.

Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by brookst on Saturday March 01, 2025 @11:09PM (#43227178)
asm? Why would anyone use that useless abstraction over byte code?
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by nuancebydefault on Sunday March 02, 2025 @05:08AM (#43228991)
bytes are abstractions. Only use them if you know upfront how many bits you need.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by xmprt on Saturday March 01, 2025 @05:10PM (#43224255)
I agree with you but as I've matured as a programmer, I feel like it's very hard to get abstractions for boilerplate right. Every library I've seen attempt to do it has struggled.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by Spivak on Saturday March 01, 2025 @10:33PM (#43226977)
Even Rails went with codegen despite being backed by the language most amenable to abstractions.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by int_19h on Sunday March 02, 2025 @01:15AM (#43227895)
I would consider deterministic codegen to be a valid abstraction (or rather a valid implementation of some abstraction). It's not really any different from a regular library wrt ability to test & validate. The problem with any human- and LLM- handwritten code is that even the best coders make mistakes.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by bubblyworld on Sunday March 02, 2025 @03:24AM (#43228488)
Abstractions are like mutations - most of them kill the host =P
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by airstrike on Saturday March 01, 2025 @04:24PM (#43223820)
"A program is like a poem. You cannot write a poem without writing it." — Dijkstra
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by MaxikCZ on Saturday March 01, 2025 @03:28PM (#43223327)
You can use niche libraries and still benefit from AI, basically anything I want to code is something that I don't think exists, and to bend API in a way that makes a generic library do just what I want means basically writing the same code, just instead of contributing to library its immediate, because the "piping" around it magically appears. I bet if it keeps improving at a current late for a decade, the occupation "programmer" will morph into "architect".
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by mvdtnz on Saturday March 01, 2025 @05:21PM (#43224341)
I'll take boring scaffolding code over libraries that perform undebuggable magic with monkey patches, reflection or dynamic code.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by woah on Sunday March 02, 2025 @12:16AM (#43227622)
With LLMs, I hope we move towards libraries that make code easier to read, not easier to write.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by TeMPOraL on Sunday March 02, 2025 @04:58AM (#43228942)
We won't be eliminating anything until we give up on only ever working directly on plaintext single source of truth code. AI is automating tedium that's otherwise impossible to automate because we're stuck in a 1970s Unix paradigm and can't let go.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by anonzzzies on Sunday March 02, 2025 @05:17AM (#43229037)
But people, especially here on HN, are saying it's the only way to go.
Re:Making o1, o3, and Sonnet 3.7 Hallucinate for Everyone by anonzzzies on Sunday March 02, 2025 @05:23AM (#43229062)
> because it means there's high demand for a reusable library

Every 'modern' project takes bucket loads of (annoying) setup and plumbing. Even in rather trivial 'start' cases, the LLM has to spend quite a bit of time to get a hello world thingy working (almost all of that is because 'modern programmers' have some kind of brain damage concerning backward compatibility; move fast and break things between MINOR versions that have no use or reason for those changes whatsoever but 'they liked it better', so stuff never works as it says on the product page; heaven help you if you need something exotic to be added). It's a terrible timeline for programming, but LLMs do fix at least that annoyance by just changing configs/slabs of code it until it works.