Do you prompt your AI in your native language or in English?
English isn’t my first language, and I’ve noticed something odd while vibe coding: I get better results when I prompt in English, but I think more clearly when I write in my own language.
A few things I’ve run into:
When I describe a UI or a bug in my native language, the AI sometimes picks up the intent fine, but gets technical terms wrong or mixes languages in the output.
Prompting in English feels “safer” for code, but I lose nuance, especially when I’m explaining what a feature should feel like rather than what it should do.
Translating my own thoughts before every prompt adds friction, and I catch myself writing shorter, vaguer prompts just to avoid it.
So I’m curious how others handle this:
Which language do you prompt in, and has it ever changed the quality of what you got back?
Do you split it, e.g. native language for product thinking and English for implementation details?
For English-first folks: do you ever notice your prompts changing depending on how “technical” you sound?
Would love to hear real examples where the language made a difference, good or bad.
Replies
I split it, but not the way you describe. I talk to the agent in Russian, every instruction, every correction, and it answers me in Russian. Everything that persists is in English: the rules file it reads before each change, the notes per area, the code, the commit messages. So the conversation is in the language I think in and the artifacts are in the language the code is in, and I never translate my own thoughts before typing. Two things made it work. The nuance you lose in English goes into the rules file once, in calm English, instead of into each prompt in a hurry. And the agent writes the app's copy in 43 locales itself, so I check only Russian and English, and the rules file carries what I know about the others, like the product name staying in Latin letters in every language. On mixed output: the files the agent reads set the language of the files it writes, so keeping the persistent layer in one language does most of that work.