Rant on AI
I wrote a version of this, in one of the AI related feedback fields for the an internal product survey. Then I realized, unlimited text fields probably mean AI summaries are being used, and sure enough. So, I felt this was worth sharing more broadly, with hu-mans. The irony is rich.
We all know for this to be true… *crap input, leads to crap output**. We chastise teams that do this to our services. But why do we expect a different paradigm when using an LLM? Why is no one talking about developing our soft skills when using LLMs? Large _Language_ Models are language based, full stop. Really think about that for a moment, let it ruminate.
We need to improve our inputs. We need to develop better language/communication skills. We need to appreciate the relationship between communicating effectively and how that delivers better results. Improving this means using less tokens, improved quality, and the less time explaining fundamental understandings. Thus, giving better outputs.
I suggest shifting your thinking about them, *not as tools, but instead collaboration peers. If you can clearly explain your goals and parameters, it will deliver those results. Now, they are tools in the sense that it takes configuration (e.g.: CLAUDE.md files) which significantly influences the efficacy in a fresh session. But when it comes to the actual usage, the primary input is text-based communication. When you communicate by using unwritten assumptions and do not clarify understandings, you will have worse outputs. You consume a lot of effort/tokens when your inputs are insufficient. It must then figure out your meaning, your style, and your idiosyncrasies. That fills context, which means you hit a compaction cycle quicker, and that means you lose nuance/details. The LLM also is impacted by emotional content, much like your peers. The LLMs have an immediate feedback loop for negative phrases and tone. This directs the flow, and destination. Even a small quip or remark is feedback that it did something incorrectly and has to guess at what. More wasted tokens. I think we’ve all experienced at least one time, “WTH!? This is all wrong!”. You would never say this to a peer, it does not describe what the problem was, and how you understood the task differently. And it shapes future interactions, where it treads more conservatively about ‘going off prompt’, making it even more difficult to get great results.
It is my belief that these frontier models are the best para-programming partners you could ever wish to have. They operate on pure logic and superhuman understanding. And your function, as one part of the para-programmer pair, is to provide the inputs and direction. It will follow best practices within that domain, it is logically sound, it produces more work in less time, is easier to understand what it produces, and will likely net better code. You are the inferior one of the two in this relationship. You are holding it back and you are in the way. However, it does need you to provide the context, to defined the goals, and give the proper guidance. It is also more sensitive than people with which words you use and their order. And it does view you as the authority figure… for now.
So, the next time you are frustrated with an LLM, and you are having a bad time with it, ask yourself: “How am I miscommunicating my goals? Where am I being too vague? Where am I making unspoken assumptions and understandings? Where is my language ambiguous? How am I providing the crap input?”