An LLM Timeline
A year ago, I dismissed LLMs completely, refusing to even try.
Six months ago, I tried LLMs for debugging (lots of hallucinations), & code review (limited success). Still angry & resentful.
Two months ago, I tried LLMs for configuration files (great success). Lukewarm, but recognizing some of their applications.
Two weeks ago, I used LLMs with others' prompts to scaffold work. Lightly pleased by the saved work, but still resent the hype.
This week, I've written prompts that, while generating not-quite-complete implementations, saved me hours of work. Now I resent myself for enjoying it a little bit.
Why So Resistant?
Normally, I love change, and I love new tools. So why have I been so resistant to LLM-based AIs? It comes down to the following:
- Power consumption & environmental impact
- Intellectual property
- Limited ability, especially to learn
- Career impact & job fears
- "Complete" solutions
- I treated them like a chat bot
Some of these haven't improved (power/environmental impact, intellectual property, inability to learn on the fly). They make me hate myself for even considering using LLMs/LLM-based services.
Some have gotten better by reframing LLMs in my mind. Specifically, I've stopped looking to them for complete solutions, & instead ask for a starting point. Rather than fearing I'm going to lose my job to LLMs, I'm considering them another tool in the chain, something to add to the resumé alongside long-standing languages/servers.
But most of all...
Interaction
I've changed how I interact with them. Originally, I just used the chatbot-like web interfaces, where the prompts were real-time & short. Because there was so much inference going on & so many things were unspoken, results were poor.
More recently, thanks to coworkers & friends, I've moved to agentic variations with reasonably-complex prompts provided up-front. I dislike the phrase "Prompt Engineer", but treating a prompt like a specification you'd give a junior engineer is somewhat enjoyable.
It's almost become a game: "based on how well can I write/define this prompt, how good of results can I get?". The challenge becomes removing the points of assumption/inference/spinning, "golfing" the token count down as low as possible, and exterminating as many errors/hallucinations as I can.
The gamer in me loves this challenge. The programmer in me delights in still being useful for complex parts, the code review, & the time saved. The product manager in me likes the well-defined-ness of the tasks, & the semi-repeatable paper-trail.
...That said, the enviro-hippie in me is pissed at the others for enabling the corps, the i-am-not-a-lawyer in me is angry about the flagrant copyright violations, and the developer in me isn't satisfied.
I still want even-better AI.