← All posts Field notes

Dari and Pashto are not a translation layer

Telos Product 6 min read

Machine-translated business software reads as foreign to the people who have to use it eight hours a day. Here is the register we write to, and why it matters more than coverage.

Getting every string translated is the easy half. The hard half is register: writing the sentence the way a Kabul shopkeeper would say it to another Kabul shopkeeper.

Three things make business copy read as machine-translated, and all three are common in software sold into Afghanistan.

1. The wrong Persian

Tehran and Kabul use different words for the same office object. Both are correct Persian. Only one is correct here.

A warehouse is a گدام, not an انبار. Information is معلومات, not اطلاعات. A report is a راپور, not a گزارش. A percentage is فیصد, not درصد. None of these are mistakes in Iran; all of them are wrong on an Afghan invoice.

2. Academy Pashto

There is a coined Pashto word for almost everything, and almost nobody says them. A file is a فایل. Settings are تنظیمات. If the word only exists in a dictionary, it does not belong in a button.

3. English grammar wearing local words

The clearest tell. "Accounts receivable" translated word by word gives you د ترلاسه کولو حسابونه, which is grammatical and means nothing. Receivable is money you will collect: د راټولولو وړ. Payable is money you will hand over: د ورکړې وړ.

The Pashto version of the same problem is a chain of three or more genitive د in one sentence. If you see it, the sentence needs breaking, not editing.

Why this is worth the effort

A clerk who half-understands the button label clicks it anyway, and finds out what it did afterwards. Bad translation is not a polish problem in an ERP. It is a data-integrity problem with a friendly face.

Our style guide lives in the repository next to the strings, so the rule and the text stay in the same place.