LLMs are like leaf blowers
When I describe how I use Copilot or other AI tools, I usually say I use it to overcome an initial blocker and then take it from there. The blocker might be writer's block, staring at a blank page, coming up with an outline, dealing with an unknown error, or filling in boilerplate code for something I want to write.
What I don't do is rely on the LLM to bring me to 100%.
Recently Gene Kim sat down with Steve Yegge, and they built something together with Cody and a few other tools.
At the end, Steve had this quotable quote:
Know when to use the LLM as a leaf blower, and when you need to come in with a broom or shovel for the last little bit.
-- Steve Yegge
I thought this was a great metaphor and visual.
When I (finally) bought a leaf blower, I didn't throw away my broom. It does a good job getting a lot of crap out of the garage very quickly, but it also blows stuff back into corners or takes a few sweeps over the same area to get everything. Often, you have to point it down straight to the ground (or turn it off) so it doesn't accidentally blow stuff in places you don't want.
The broom didn't go away, it just becomes a more specialized tool.
This is exactly what it's like to code with an LLM.
Despite its drawbacks, every yard company uses leaf blowers. Not only that, they are battery-powered backpack blowers. Why? The time saved doing 80% of the work by blower more than makes up for the last 20% by hand.
I suck at using a leaf blower because I use it maybe 3-4 times a season. They do it all day every day for the season – that's called practice. They know exactly how to maneuver the blower to get 90-95% of the job done.
Rather than wishing leaf blowers didn't exist, it might make sense to figure out how you can use them and what they're good at.
Cheers,
Kamran