6 ms·
Not satire. But I can understand why my comment seemed contradictory. I've been designing software for a long time, but I'm nowhere near as good as most career
by ad_fontes 24d ago
Not satire. But I can understand why my comment seemed contradictory.
I've been designing software for a long time, but I'm nowhere near as good as most career SDEs I know (my career path has been SDE-adjacent). So it's not like I sat down and independently told various LLMs how to build out all these guardrails. I make high level architecture decisions and nudge them in the right direction ("use RabbitMQ", "trunk-based branching, not gitflow", etc).
A lot of this stuff evolved piecemeal and organically. But at no point was a churning out garbage and I never had a runaway agent completely derail the project (or my budget). But, thinking about it more, I guess there are some things I might have done differently than most people:
- I started with documentation: user interview --> user stories --> functional spec --> frozen design contract. These were all done before I wrote any code.
- I specified the tech stack and the architecture in broad strokes, rather than let the LLMs make that decision. I went with boring choices because that's what I know best: Flask/Jinja, Alpine.js, Postgres.
- I've constantly gone back and refactored accumulated tech debt and have added hard CI gates for things like cyclomatic complexity, ensuring that docs don't drift from the underlying code, and an "apparatus ledger" that keeps track of all the rules and constraints that keep getting added.
- I make sure that each session proves that it's tests can fail before shipping a PR, so it's not writing meaningless tests.
Maybe I'm underestimating how impactful all those things add up to shape the behavior of the LLM agents? Because individually, I wouldn't expect them to have saved my from nearly all the AI pitfalls I read about.
- user43928 24d agoI have a project of similar scope, a native mobile app I have been working on for four months. I get the same kind of snarky comments when I talk about it. Amazing how people who know nothing about the project think they know better than me about its quality or maintainability. I doubt it's anything in particular that we are doing, I suspect it is rather a lack of trying and experience with the ones who are claiming agentic development does not work. I have not once seen a believable story where for example the project broke down after 200k LOC, or after going live. It is always inane stuff like in the OP, like the agent supposedly generated only tests and no code, sure. Most of the ones I have seen were "I generated some code and did not like the output". No attempts of iterating and refactoring. I believe they simply did not yet try our way of working.