logoalt Hacker News

theshrike79 • today at 5:07 AM • 1 reply • view on HN

Not just specs and prompts, tests, actual procedural limits. No program will ever be perfect[0], but you need to get it good enough for the problem at hand.

A human defines the checks (the mold) that give the agent the limits. They can be TLA+ definitions, linters, cyclomatic complexity checkers, unit tests, integration tests, end to end tests etc. And usually some written docs - made in a way that's specifically targeted at agents. Those define the limits the agent has to stay inside of.

There will always be work for human QA too, an AI can't determine if something feels off in an app's flow, it has no taste or concept of usability beyond the purely mechanical rules.

[0] Not talking about health, aerospace or nuclear stuff here naturally.


Replies

skydhash • today at 12:02 PM

> They can be TLA+ definitions, linters, cyclomatic complexity checkers, unit tests, integration tests, end to end tests etc.

That’s even more work than just writing the code, at least the latter is immediately useful. The reason we create complicated machinery is mostly because of industrial scale. Molds and factories help create thousand of pieces and the total value of the latter is way more than the cost of the former.

The reason we don’t write specs and other kind of docs extensively is usually that the time taken is way more than just writing the code. Yes, code do require formal thinking, and a training in syntax. But a lot of jobs require understanding some concepts and training in the jargon and techniques.

> No program will ever be perfect[0], but you need to get it good enough for the problem at hand.

The nicest thing about software is that some subproblems are nearly eternal. That’s why we reuse code and utilities. Also while some problems do evolve, it’s usually done slowly and in a way, predictably (as in how, not when). Taking care to solve it once well, usually is better, rather than solving it again and again.

It’s more important to worry about the solution to a specific problem (in terms of concept), than to worry about code. Coding was not, and will never be the primary problem. Any experienced developer knows this, which is why most will says they spend very little time thinking about code and writing it.