Prompt engineering is fascinating and complex. On the one hand, it's essentially about writing a query in normal language (natural language), which is very similar to writing code in a language we all know instead of having to learn a new programming language. However, natural language is very complex. It takes each of us years to learn to understand and use it. Programming language is based on a structured logic. Natural language is more fluid, often ambiguous.
Prompt engineering requires us to use natural language to communicate with a machine that doesn't understand natural language in the human sense. As a result, prompt engineering requires us to be much more aware of HOW we use language and HOW the machine will interpret our language. The machine interprets the prompt to guide its algorithms to the right outcome. The distinction between human cognitive processes and machine algorithms is crucial to understand and important to keep in mind as we use natural language to query machines.
Prompt engineering requires us to examine our own cognitive processes, to analyze our mental models and to try to identify communicate our intentions, meaning, and context in such a way that the machine algorithm will be able to accurately interpret. Our assumptions, biases, and the way we frame information can significantly impact the effectiveness of prompts and the AI's responses.
In short, even though we query GenAI with natural language, which appears at first glance to be much easier than learning a programming language, a sharpened awareness of our own language is required to get the best results.
Since mind-reading AI is on the way, ultimately, language could disappear, but we are still far from language extinction. Until then, I will translate thoughts into words and strive to be coherent with my writing and my prompts.