As AI technology develops rapidly, people are increasingly using it to improve their efficiency. Communicating with AI correctly and effectively is becoming more important. Some people believe that they can now do things they couldn't do before. That's true, but it also means that knowing how to give AI clear and specific instructions is becoming increasingly important.
Recently, some people in an AI group discussed how to interact with AI effectively. Some of them think one of the amazing things about using AI is that people can prompt it with simple words instead of academic vocabulary. I agree with them, but I think they may be overlooking something. I guess what they want to express is that even if people don't have knowledge of a particular domain, they can still instruct AI using simple words. Does that mean domain knowledge has become less important than before?
When I Tried to Draw a Picture with AI
I started thinking about this question a long time ago, when I tried to prompt AI to draw a picture for me. The first version it generated was very ugly, so I asked AI to improve the image. Unfortunately, I communicated with AI many times, and I thought I had done my best to describe what I wanted in natural language. But AI still couldn't draw the picture I had in mind. Afterward, I began to wonder: was the problem simply that my thoughts were difficult to express in words?
The more I thought about it, the more I realized that there were many other factors involved. Firstly, I didn't know why the image looked bad. It was just a feeling, and I couldn't explain what caused that feeling. Secondly, I didn't know how to instruct AI to edit it. Not because I didn't know the domain vocabulary, but because I didn't have the domain knowledge. I know almost nothing about painting. So, communicating with AI based only on feelings is not stable or effective. Maybe sometimes AI can create a beautiful picture by chance, but that’s not necessarily because I gave it a clear and specific prompt. It may simply be because AI has been trained on many examples of that kind of picture.
What Happens When You're Coding?
Imagine a similar situation in software development. When you are coding and want AI to use design patterns to keep the project well structured, if you tell AI:
"Use the Observer pattern here and the Chain of Responsibility pattern there."
AI can usually implement them well, and you can control the quality of its output much more effectively. If you don't know which pattern to use, you may only tell AI:
"Use design patterns."
or
"Follow the SOLID principles."
AI will choose a pattern that seems useful to it, but that's when you start opening a mystery box. If you don't even know that design patterns exist, then all you can say is:
"Keep it extensible."
Even Worse, if you don't know what extensibility means, you can only say:
"Make sure it's easy to change later because I may add some features in the future."
And worst of all, if you don't understand that changing requirements can affect the structure of a system, you may lose the ability to control the quality of the project altogether.
This example shows that domain knowledge is important, while domain language makes communication more efficient and precise. It is true that people can use simple words to describe the Observer pattern when communicating with AI. But why not use the specific vocabulary directly if you already know it?
Another Example from My Personal Website
I have another example that supports my point. When I was working on my personal website, I used vibe coding to help me. Everything went well at first, and I had nearly finished all the animations I wanted. When I was very excited about how the website was coming together, a difficult corner-case bug appeared.
Only when I refreshed the website with an anchor in the URL and then scrolled back from the anchor position did my homepage start flashing rapidly, as shown in the image below.

I was still learning frontend technology at that time, and I didn't know why this bug was happening. I prompted AI to fix it and described the bug in many different ways. Unfortunately, AI couldn't diagnose the root cause either. And the worst thing was that AI couldn't even fix it with a workaround. It cost me tons of tokens to deal with this bug, but the bug was still there.
There was nothing I could do but ask my wife for help. She is an experienced frontend software engineer. She looked at the bug and the project for a few minutes, then gave AI a few instructions.
Done!
Domain Knowledge Is a Shortcut
The examples above demonstrate that domain knowledge is still significant because it allows people to identify and point to problems accurately. Domain language, meanwhile, is like an arrow aimed at the bullseye: it helps you communicate precisely and hit the target.
Fortunately, AI has changed the way we gain knowledge. We can now learn new knowledge and concepts by doing, and understand and absorb them through practice. Perhaps this is one of the most exciting things about AI: it doesn't make domain knowledge unnecessary. Instead, it makes acquiring domain knowledge much faster and more accessible.
End of article 5 min read
More posts