dmazin 22 hours ago

This rings true to me.

I still use LLMs heavily. However, I now follow two rules:

* Do not delegate any deep thought to them. For example, when thinking through a difficult design problem, I do it myself.

* Deeply review and modify any code they generate. I go through it line-by-line and edit it thoroughly. I have to do this because I find that much of what they generate is verbose, overly defensive, etc. I don't care if you can fix this through prompting; I take ownership over future maintainability.

"Vibe coding" (not caring about the generated code) gives me a bad feeling. The above approach leaves me with a good feeling. And, to repeat, I am still using them a lot and coding a lot faster because of it.

2
chuckadams 21 hours ago

I delegate all kinds of deep analysis to the AI, but it's to create detailed plans with specific implementation steps and validation criteria, backed by data in reproducible reports (i.e. "generate a script to generate this json data and another to render this data"). Plans have a specific goal that is reflected in the report ("migrated total should be 100%"). It's still an iterative process, the generators and plans have to be refined as it misses edge cases, but that's plans in general, AI or no.

It takes a good hour or two to draw up the plans, but it's the kind of thing that would take me all day to do, possibly several as my ADHD brain rebels against the tedium. AI can do yeomans work when it just wings it, and sometimes I have just pointed at a task and did it in one shot, but they work best when they have detailed plans. Plus it's really satisfying to be able to point at the plan doc and literally just say "make it so".

rco8786 22 hours ago

> Deeply review and modify any code they generate. I go through it line-by-line and edit it thoroughly

This is the issue, right? If you have to do this, are you saving any time?

tasuki 21 hours ago

(Usually) Yes. The LLM can generate three functions, over 100 lines of code, and I spend perhaps 15 minutes rearranging it so it pleases me aesthetically. It would've taken me an hour or two to write.

I find most benefit in writing tests for a yet-inexistent function I need, then giving the LLM the function signature, and having it implement the function. TDD in the age of LLMs is great!

dmazin 21 hours ago

I know what you’re saying, but I’m saving time by: * getting ideas for how logic etc could be implemented * boilerplate is a thing of the past

The other thing is that I have the LLM make the modifications I want.

I know how long it takes to get an extremely bad programmer to do what you want, but the LLM is far better than that, so I do come out ahead.

jgilias 21 hours ago

I believe this depends on the individual. For me, yeah, I am. But I do have colleagues who wouldn’t be.