4 ms·
Writing detailed specs and then giving them to an AI is not the optimal way to work with AI. That's vibecoding with an extra documentation step. Also, Sonnet
by Aurornis 7mo ago
Writing detailed specs and then giving them to an AI is not the optimal way to work with AI.
That's vibecoding with an extra documentation step.
Also, Sonnet is not the model you'd want to use if you want to minimize cleanup. Use the best available model at the time if you want to attempt this, but even those won't vibecode everything perfectly for you. This is the reality of AI, but at least try to use the right model for the job.
> Therefore I need more time and effort with Gen AI than I needed before
Stop trying to use it as all-or-nothing. You can still make the decisions, call the shots, write code where AI doesn't help and then use AI to speed up parts where it does help.
That's how most non-junior engineers settle into using AI.
Ignore all of the LinkedIn and social media hype about prompting apps into existence.
EDIT: Replaced a reference to Opus and GPT-5.5 with "best available model at the time" because it was drawing a lot of low-effort arguments
- mandeepj 7mo agoSure, Opus is next level than Sonnet, but it still doesn't free OP from these handcuffs - It is reading the code, understanding it and making a mental model that's way more labour intensive.
- Aurornis 7mo agoThe OP's problem was treating the situation as two extremes: Either write everything myself, or defer entirely to the AI and be forced to read it later. I was trying to explain that this isn't how successful engineers use AI. There is a way to understand the code and what the AI is doing as you're working with it. Writing a spec, submitting it to the AI (a second-tier model at that) and then being disappointed when it didn't do exactly what you wanted in a perfect way is a tired argument.
- hunterpayne 6mo agoIs doing that faster than just writing it by hand? Remember to include the time you need to review the code afterwards. The research so far says it isn't faster. Yet people keep doubling down on it and thinking winning an Internet argument is going to matter when it hits the fan in the near future.
- WesolyKubeczek 7mo agoBut when you write code by hand, you at least are there as it’s happening, which makes reading and understanding way easier.
- elAhmo 7mo agoFunny hearing you’re saying only GPT 5.5 (and Opus) can do this, having in mind that it came out last night.
- Aurornis 7mo agoTo be clear, I'm not saying that they can do this. I'm saying that if you're trying to have AI write code for you and you want to do as little cleanup as possible, you have to use the best model available.
- munk-a 7mo ago> Stop trying to use it as all-or-nothing. You can still make the decisions, call the shots, write code where AI doesn't help and then use AI to speed up parts where it does help. You're assuming that finding the places where AI needs help isn't already a larger task than just writing it yourself. AI can be helpful in development in very limited scenarios but the main thrust of the comment above yours is that it takes longer to read and understand code than to write it and AI tooling is currently focused on writing code. We're optimizing the easy part at the expense of the difficult part - in many cases it simply isn't worth the trouble (cases where it is helpful, imo, exist when AI is helping with code comprehension but not new code production).
- Aurornis 7mo ago> You're assuming that finding the places where AI needs help isn't already a larger task than just writing it yourself. Not assuming anything, I'm well versed in how to do this. Anyone who defers to having AI write massive blocks of code they don't understand is going to run into this. You have to understand what you want and guide the AI to write it. The AI types faster than me. I can have the idea and understand and then tell the LLM to rearrange the code or do the boring work faster than I can type it.
- Exoristos 7mo agoThe number of devs I've worked with who can't touch-type and don't use or know their way around a proper IDE is depressingly large.
- Aurornis 7mo agoSame with debuggers. I run into people with 10 years of experience who are still trying to printf debug complex problems that would be easy with 5 minutes in a debugger. I think we're seeing something similar with AI: There are devs who spend a couple days trying to get AI to magically write all of their code for them and then swear it off forever, thinking they're the only people who see the reality of AI and everyone else is wrong.
- rafram 7mo ago> Opus or GPT-5.5 are the only ways to even attempt this. It’s pretty funny to claim that a model released 22 hours ago is the bare minimum requirement for AI-assisted programming. Of course the newest models are best at writing code, but GPT-* and Claude have written pretty decent systems for six months or so, and they’ve been good at individual snippets/edits for years.
- Aurornis 7mo ago> It’s pretty funny to claim that a model released 22 hours ago is the bare minimum requirement for AI-assisted programming. Not what I said. The OP was trying to write specs and have an AI turn it into an app, then getting frustrated with the amount of cleanup. If you want the AI to write code for you and minimize your cleanup work, you have to use the latest models available. They won't be perfect, but they're going to produce better results than using second-tier models.
- rafram 7mo agoIs it actually the case that 5.5 is that much better at implementing specs than its very capable predecessor released a month ago? Just seems like a baseless and silly claim about a model that has barely been out long enough for anyone to do serious work with it.
- Aurornis 7mo ago> Is it actually the case that 5.5 is that much better at implementing specs than its very capable predecessor released a month ago? The OP comment was talking about Claude Sonnet. I was comparing to that. I should have just said "use the best model available"
- ghurtado 7mo ago> Is it actually the case that 5.5 is that much better Nobody was talking about how much better it is until you wrote this though It's like you're building your own windmills brick by brick
- wg0 7mo ago> Writing detailed specs and then giving them to an AI is not the optimal way to work with AI. It is NOT the way to work with humans basically because most software engineers I worked with in my career were incredibly smart and were damn good at identifying edge cases and weird scenarios even when they were not told and the domain wasn't theirs to begin with. You didn't need to write lengthy several page long Jira tickets. Just a brief paragraph and that's it. With AI, you need to spell everything out in detail. But that's NO guarantee either because these models are NOT deterministic in their output. Same prompt different output each time. That's why every chat box has that "Regenerate" button. So your output with even a correct and detailed prompt might not lead to correct output. You're just literally rolling a dice with a random number generator. Lastly - no matter how smart and expensive the model is, the underlying working principles are the same as GPT-2. Same transformers with RL on top, same random seed, same list of probabilities of tokens and same temperature to select randomly one token to complete the output and feedback in again for the next token.
- snarkconjecture 7mo ago> the underlying working principles are the same as GPT-2 I don't think anyone was claiming otherwise. Sonnet is still better at writing code than GPT-2, and worse than Opus. Workflows that work with Opus won't always work with Sonnet, just as you can't use GPT-2 in place of Sonnet to do code autocomplete.
- jonas21 7mo ago> That's why every chat box has that "Regenerate" button. Wait, are you doing this in the web chat interface?! That's definitely not a good way. You need to be using a harness (like Claude Code) where the agent can plan its work, explore the codebase, execute code, run tests, etc. With this sort of set up, your prompts can be short (like 1 to 5 sentences) and still get great results.
- wg0 7mo agoI use claud CLI or OpenCode. The "Regenerate" example is just to illustrate that same prompt would produce different output each time. You're rolling a dice.
- afro88 7mo ago> Writing detailed specs and then giving them to an AI is not the optimal way to work with AI. > That's vibecoding with an extra documentation step. Read uncharitably, yeah. But you're making a big assumption that the writing of spec wasn't driven by the developer, checked by developer, adjusted by developer. Rewritten when incorrect, etc. > You can still make the decisions, call the shots One way to do this is to do the thinking yourself, tell it what you want it to do specifically and... get it to write a spec. You get to read what it thinks it needs to do, and then adjust or rewrite parts manually before handing off to an agent to implement. It depends on task size of course - if small or simple enough, no spec necessary. It's a common pattern to hand off to a good instruction following model - and a fast one if possible. Gemini 3 Flash is very good at following a decent spec for example. But Sonnet is also fine. > Stop trying to use it as all-or-nothing Agree. Some things just aren't worth chasing at the moment. For example, in native mobile app development, it's still almost impossible to get accurate idiomatic UI that makes use of native components properly and adheres to HIG etc
- yonaguska 6mo agothis is my workflow, converse with it to write a spec. I'm reviewing the spec myself. Ask it to trace out how it would implement it. I know the codebase because it was originally written mostly by hand. Correct it with my best practices. Have it challenge my assumptions and read the code to do so. then it s usually good enough to go on it's on. the beauty of having a well defined spec is that once it's done, I can have another agent review it and it generates good feedback if it deviates from the spec at all. I'm unsure if this is actually faster than me writing it myself, but it certainly expends less mental energy for me personally. The real gains I'm getting are with debugging prod systems, where normally I would have to touch five different interfaces to track down an issue, I've just encompassed it all within an mcp and direct my agent on the debugging steps(check these logs, check this in the db, etc)
- ForOldHack 7mo ago"Writing detailed specs and then giving them to an AI is not the optimal way to work with AI." Perfect. I loosely define things, and then correct it, and tell it to make the corrections, and it gets trained, but you have to constantly watch it. Its like a glorified auto-typer. "Ignore all of the LinkedIn and social media hype about prompting apps into existence." Absolutely, its not hype, its pure marketing bullshitzen.
- ost-ing 6mo ago> That's vibecoding with an extra documentation step. This sounds like an LLM talking. Either you're a bot, or our human languages are being modified in realtime by the influence of these tools.