Earlier quoted context omitted.
Yeah I have found that AI in general has a procrastination nullifying effect. Before dealing with anything that might put me off. I can just ask the agent to do it for me. And then, do something else, take that break, but regardless in a few minutes I will have something to jump on instead of the same blank terminal with the same blinking cursor judging me. It really makes taking the first step, much easier and then…
It's the empty page problem. For some people (most?) it's really hardhard, almost impossible, to fill the page with text, but when you have a page of text - even if it's shit - suddenly it's easy to critique it and interate to make it better. AI lets me poop out an MVP out of any idea or spec with very little effort on my part, then I can go in and start improving it.
I guess a lot of folks are having better luck than I am, in getting ship-quality results from LLMs.
In my case, I find that the first iteration is almost never suitable for shipping. In fact, the more intricate the functionality, the more likely it is, to contain some real showstopper bugs.
In my experience, iteration really requires that I know my shit. I have to know what to look for, and how to form effective prompts. Testing is absolutely vital. I can’t ever “just assume” that the code is fundamentally sound; even for extremely basic stuff.
That lack of trust in my output is something I haven’t had, in decades. It can be a bit stressful.
For example, I write a lot of mobile software, so resource usage is a big deal. I had gotten used to not testing for battery usage, leaks, or out-of-control allocations, over the years of using Swift. I am now back to routinely running Instruments.
In a couple of instances, I was just unable to get anything useful from the LLM, had to toss all its output, and rewrite by hand.
That’s why I can’t even imagine directly shipping anything the LLM gives me.
That said, I have generally had extremely positive experiences with LLMs. It’s now a basic component of my workflow.