zlacker

[return to "My AI skeptic friends are all nuts"]
1. bccdee+qC[view] [source] 2025-06-03 01:49:01
>>tablet+(OP)
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.

◧◩
2. tptace+bD[view] [source] 2025-06-03 01:56:25
>>bccdee+qC
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.

◧◩◪
3. superc+PD[view] [source] 2025-06-03 02:03:42
>>tptace+bD
Your article comes across like you think every developer is the exact same as you, very egocentric piece

Not everyone is just cranking out hacked together MVPs for startups

Do you not realize there are many many other fields and domains of programming?

Not everyone has the same use case as you

◧◩◪◨
4. Uehrek+CF[view] [source] 2025-06-03 02:23:49
>>superc+PD
> Not everyone is just cranking out hacked together MVPs for startups

Now here’s the fun part: In a really restrictive enterprise environment where you’ve got unit tests with 85% code coverage requirements, linters and static typing, these AI programming assistants actually perform even better than they do when given a more “greenfield” MVP-ish assignment with lots of room for misinterpretation. The constant “slamming into guardrails” keeps them from hallucinating and causes them to correct themselves when they do.

The more annoying boxes your job makes you tick, the more parts of the process that make you go “ugh, right, that”, the more AI programming assistants can help you.

◧◩◪◨⬒
5. BobbyT+5I[view] [source] 2025-06-03 02:48:21
>>Uehrek+CF
Unfortunately high code coverage is misaligned with high quality code.

If one copy-pastes a routine to make a modified version (that’s used), code coverage goes UP. Sounds like a win win for many…

Later, someone consolidates the two near identical routines during a proper refactoring. They can even add unit tests. Guess what? Code coverage goes DOWN!

Sure, having untested un-executed code is a truly horrible thing. But focusing on coverage can be worse…

◧◩◪◨⬒⬓
6. WWLink+lK[view] [source] 2025-06-03 03:18:59
>>BobbyT+5I
Trash Driven Development :D
[go to top]