I appreciate Simon’s balanced take on how LLMs can enhance a project when used responsibly.
I’m curious, though—what are this community’s opinions on the use of LLMs in programming?
I appreciate Simon’s balanced take on how LLMs can enhance a project when used responsibly.
I’m curious, though—what are this community’s opinions on the use of LLMs in programming?
I mainly use it to create boilerplate (like adding a new REST API endpoint), or where I’m experimenting in a standalone project and am not sure how to do something (odd WebGL shaders), or when creating basic unit tests.
But letting it write, or rewrite existing code is very risky. It confidently makes mistakes, and rewrites entire sections of working code, which then breaks. It often goes into a “doom loop” making the same mistakes over and over. And if you tell it something it did was wrong and it should revert, it may not go back to exactly where you were. That’s where frequently snapshotting your working code into git is essential, and being able to reset multiple files back to a known state will save your butt.
Just yesterday, I had an idea for a WebGL experiment. Told it to add a panel to an existing testing app I run locally. It did and after a few iterations, got it working. But three other panels stopped working, because it decided to completely change some unrelated upstream declarations. Took 2x time to put everything back to where it was.
Another thing to consider is that every X units of time, you’ll want to go back and hand edit the generated material to clean up sloppy code. For example, inefficient data structures, duplicate functions in separate sections, unnecessarily verbose and obvious comments, etc. Also, better if using mature tech (with lots of training examples) vs. a new library or language.
If just starting out, I would not trust AI or vibe coding. Build things by hand and learn the fundamentals. There are no shortcuts. These things may look like super tools, but they give you a false sense of confidence. Get the slightest bit complex, and they fall apart and you will not know why.
Mainly using Cursor. Better results with Claude vs other LLMs, but still not perfect. Paid versions of both. Have also tried Cline with local codegen through Llama and Qwen. Not as good. Claude Code looks decent, but the open-ended cost is too scary for indie devs, unless you work for a company with deep pockets.