Professional English for Developers Module 4 – Vocabulary for tech work
Indian English at work: what global readers miss
Spot Indian English forms such as revert, prepone and do the needful that colleagues abroad may misread, and pick words every reader takes one way.
What you will learn
- Recognise Indian English words and phrases that colleagues abroad may misread
- Choose an international alternative when you write for a global audience
- Explain why Indian English is a variety and not a mistake, while you adapt your writing to the reader
- Apply the same check to habits from your own first language if you are not from India
Before you start
What you’ll learn · Before you start
What you will learn
- Recognise Indian English words and phrases that colleagues abroad may misread
- Choose an international alternative when you write for a global audience
- Explain why Indian English is a variety and not a mistake, while you adapt your writing to the reader
- Apply the same check to habits from your own first language if you are not from India
Before you start
On this page
To a developer, revert means undo: Git’s git revert records new commits that reverse earlier ones. Oxford’s
learner’s dictionary also lists revert meaning reply, “especially Indian English, rather formal”, so “Please revert
on the PR” can send one colleague to answer a question and another to undo a change.
This lesson is about audience, not correctness. Indian English is a variety (of a language): A form of a language used in one country or by one community, with its own words, spellings and grammar, such as Indian, British or American English. No variety is a mistake. of English with words of its own, and the only question is whether your reader shares them. You will learn forms that colleagues abroad often misread, such as revert, prepone and do the needful, an international alternative for each, and a check you can apply to the habits of any first language.
Indian English is a variety; the question is who reads it
Oxford’s learner’s dictionary labels words by where they are used, as it labels others British or American. Several forms that Indian offices use every day carry its Indian English label:
| Form | Oxford’s label | What it means | For a reader abroad, write |
|---|---|---|---|
| prepone | Indian English, informal | to move something to an earlier time than was planned | bring forward, move earlier |
| revert | especially Indian English, rather formal | to reply | reply |
| do the needful | especially Indian English | to do what is necessary | the exact action |
| kindly adjust | Indian English, mainly in writing | please accept a problem and adapt to it | say what changed, and apologise |
The label is not a mark of error. Inside an Indian team these forms are understood at once, and prepone says in one word what other varieties need two for, bring forward. The cost appears only when the reader is elsewhere: a client in Ohio may never have met prepone, and do the needful tells them that something is needed without saying what.
The program runs a rule pack of these forms on eight chat lines, each rule with its source, and checks the rewrites:
// A global-reader rule pack for forms that colleagues outside India may misread. Each rule names its source: the label
// that Oxford's learner's dictionary gives the form, or "abbreviation" for a short form a reader may not know. A flag
// is a question about the reader, not a verdict on the English: with colleagues who share these forms, they are fine.
const RULES = [
[/\brevert(?:ing|ed|s)?\b(?! (?:the|this|that|my|your|it|commit|PR|change)\b)/i, 'revert (= reply)', 'Oxford: especially Indian English, rather formal', 'reply'],
[/\bpreponed?\b|\bpreponing\b/i, 'prepone', 'Oxford: Indian English, informal', 'bring forward, move earlier'],
[/\bdo the needful\b/i, 'do the needful', 'Oxford: especially Indian English', 'the exact action'],
[/\bkindly adjust\b/i, 'kindly adjust', 'Oxford: Indian English, mainly in writing', 'say what changed and apologise'],
[/\bintimate (?:you|me|him|her|them|us)\b/i, 'intimate somebody', 'Oxford: intimate something (to somebody); the adjective has a sexual sense', 'let you know'],
[/\bdiscuss(?:ed|ing)? about\b/i, 'discuss about', 'Oxford: still considered incorrect by most people', 'discuss'],
[/\brevert back\b/i, 'revert back', 'back repeats what revert says', 'reply'],
[/\bPFA\b/, 'PFA', 'abbreviation', "I've attached"],
];
function flags(text) {
return RULES.filter(([re]) => re.test(text)).map(([, form, source, plain]) => `${form} (${source}) -> ${plain}`);
}
const PAIRS = [
['Please revert on PR #412 by 6 PM IST.', 'Please reply on PR #412 by 6 PM IST (UTC+5:30).'],
['Can we prepone the demo to 3 PM?', 'Can we move the demo earlier, to 3 PM IST (UTC+5:30)?'],
['Kindly do the needful for the VPN access.', 'Could you approve my VPN access request?'],
['The build server is down today, kindly adjust.', 'The build server is down today. Sorry for the delay: builds will run again by 4 PM IST (UTC+5:30).'],
['I will intimate you once the patch is live.', 'I will let you know when the patch is live.'],
['Let us discuss about the schema on Monday.', "Let's discuss the schema on Monday."],
['PFA the logs and revert back with your comments.', "I've attached the logs. Could you reply with your comments?"],
['Please revert the change in PR #412: it broke the build.', 'Please revert the change in PR #412: it broke the build.'],
];
let before = 0;
let after = 0;
PAIRS.forEach(([original, fixed], i) => {
const found = flags(original);
before += found.length;
after += flags(fixed).length;
console.log(`${i + 1} ${original}`);
for (const f of found) console.log(` ${f}`);
console.log(fixed === original ? ' (revert means undo here: no flag)' : ` -> ${fixed}`);
});
console.log(`\nFlags: ${before} before, ${after} after`); Output
1 Please revert on PR #412 by 6 PM IST.
revert (= reply) (Oxford: especially Indian English, rather formal) -> reply
-> Please reply on PR #412 by 6 PM IST (UTC+5:30).
2 Can we prepone the demo to 3 PM?
prepone (Oxford: Indian English, informal) -> bring forward, move earlier
-> Can we move the demo earlier, to 3 PM IST (UTC+5:30)?
3 Kindly do the needful for the VPN access.
do the needful (Oxford: especially Indian English) -> the exact action
-> Could you approve my VPN access request?
4 The build server is down today, kindly adjust.
kindly adjust (Oxford: Indian English, mainly in writing) -> say what changed and apologise
-> The build server is down today. Sorry for the delay: builds will run again by 4 PM IST (UTC+5:30).
5 I will intimate you once the patch is live.
intimate somebody (Oxford: intimate something (to somebody); the adjective has a sexual sense) -> let you know
-> I will let you know when the patch is live.
6 Let us discuss about the schema on Monday.
discuss about (Oxford: still considered incorrect by most people) -> discuss
-> Let's discuss the schema on Monday.
7 PFA the logs and revert back with your comments.
revert (= reply) (Oxford: especially Indian English, rather formal) -> reply
revert back (back repeats what revert says) -> reply
PFA (abbreviation) -> I've attached
-> I've attached the logs. Could you reply with your comments?
8 Please revert the change in PR #412: it broke the build.
(revert means undo here: no flag)
Flags: 9 before, 0 after
Recorded with Node.js 24.21.0 on macOS 26 arm64. To run it yourself: mise exec node@24.21.0 -- node reader_check.mjs
Runs on this device, in your browser. The first run downloads JavaScript (about 0.6 MB), which is kept for the next runs.
Your run, in this browser
Seven of the eight lines had 9 flags between them, and the rewrites none. Line 8 shows that the pack is not a word filter: “Please revert the change in PR #412” uses revert in its Git sense, to undo, so it is not flagged.
Key idea
Keep the forms with readers who share them, and write the international word when your reader may be elsewhere: reply, move earlier, the exact action.
Checkpoint
Check: Indian English as a variety, adapted to the reader
Revert means undo to a developer
Outside software, revert usually means to go back to an earlier state. In a team of developers it also names a Git
command. Git’s
documentation describes git revert as taking existing commits, reverting the changes they introduced “and record some
new commits that record them”. So the Indian English revert, meaning reply, collides with an instruction that changes
the code. Step through one chat between Pune and Ohio:
The drawing shows the whole scene; its 6 steps are listed below.
Every step as text
- Please revert. Priya has questions about Tom's comments on her pull request, merged this morning. She posts: "Please revert on PR #412." In her office, revert means reply.
- Revert, the Git command. To Tom, as to most developers, revert names a Git command: git revert records new commits that reverse the changes of earlier ones. He reads an instruction to undo the change.
- The fix is undone. Tom runs git revert on the merge commit of PR #412 and pushes it. The fix that Priya shipped this morning is no longer on main.
- Two readings meet. Tom posts "Reverted, as you asked." Priya sees the revert commit, and ten minutes of chat later both see what happened: one word, two meanings.
- The exact action. The fix is to name the action: "Could you reply to my questions on PR #412 by 6 PM IST (UTC+5:30)?" Revert stays the word for undoing a change.
- One meaning. Tom answers the questions on the pull request, and the fix goes back on main. In a team of developers, keep revert for Git and write reply for answers.
The fix costs one word: write reply when you mean reply, and keep revert for undoing a change. “Could you reply to my questions on PR #412 by 6 PM IST (UTC+5:30)?” leaves one reading.
Three more groups of forms have parts of their own below. A full email from a team in Pune to a client in Ohio shows how these forms add up and how a rewrite keeps every fact. Intimate, doubt, discuss about and revert back are words whose second meaning or extra word surprises readers abroad. Forms of address such as Sir and Ma’am, and mixing languages in chat, depend on who reads, and the same check works for any first language.
Checkpoint
Check: Revert as reply and as undo
A Pune email to a client in Ohio, checked and rewritten Pro: opens with a Pro, Premium or Ultimate pass
One email can carry ten of these forms without anyone noticing, because each is normal in the office that wrote it. This part checks a real-sized email, line by line, and rewrites it so that a client in another country reads it once.
In this part:
- The email, flagged line by line
- What the rewrite kept, and what it cost
1 runnable example (JavaScript) · about 3 minutes
Opening this part with your pass…
This part opens with any MySmartCoPilot pass.
- Pro pass · 1 week₹79$2.99
- 30 days₹179$5.99
- 1 year₹1,699$45
One payment; a pass never renews. The price shown is the total you pay: no fees or charges are added at checkout.
Passes can’t be bought right now, so this part can’t be opened at the moment. The free part above stands on its own. If you have a pass, enter your licence key.
It also opens every other in-depth part in Learn and every Pro tool. Sales are final, except where the law gives you a right to withdraw, for example in the EU and the UK (refund policy).
Words with a second meaning abroad: intimate, doubt and doubled forms Pro: opens with a Pro, Premium or Ultimate pass
Some words cause trouble not because readers do not know them, but because they know a different meaning. This part covers the forms whose dictionary meaning surprises readers abroad, and the doubled forms that add a word without adding meaning.
In this part:
- Intimate: a formal verb next to a personal adjective
- Doubt: uncertainty, not a question
- Doubled forms: discuss about, revert back
about 3 minutes
Opening this part with your pass…
This part opens with any MySmartCoPilot pass.
- Pro pass · 1 week₹79$2.99
- 30 days₹179$5.99
- 1 year₹1,699$45
One payment; a pass never renews. The price shown is the total you pay: no fees or charges are added at checkout.
Passes can’t be bought right now, so this part can’t be opened at the moment. The free part above stands on its own. If you have a pass, enter your licence key.
It also opens every other in-depth part in Learn and every Pro tool. Sales are final, except where the law gives you a right to withdraw, for example in the EU and the UK (refund policy).
Sir and Ma'am, mixed languages and your own first language Pro: opens with a Pro, Premium or Ultimate pass
How you greet a reader and which languages you mix depend on the reader even more than vocabulary does. This part gives a way to choose a form of address, a rule for mixed-language chat, and a check that works for any first language.
In this part:
- Forms of address, chosen by asking
- Mixed languages: fine with people who share them
- The same check for any first language
- Three rules to keep from the parts on the email, second meanings and address
about 7 minutes
Opening this part with your pass…
This part opens with any MySmartCoPilot pass.
- Pro pass · 1 week₹79$2.99
- 30 days₹179$5.99
- 1 year₹1,699$45
One payment; a pass never renews. The price shown is the total you pay: no fees or charges are added at checkout.
Passes can’t be bought right now, so this part can’t be opened at the moment. The free part above stands on its own. If you have a pass, enter your licence key.
It also opens every other in-depth part in Learn and every Pro tool. Sales are final, except where the law gives you a right to withdraw, for example in the EU and the UK (refund policy).
Practise: rewrite an email for a reader abroad
The exercise holds a short email to a client in another country, with the forms of this lesson. Rewrite it until the sample tests pass:
Exercise · Easy · JavaScript
Rewrite an email for a client in another country
email.mjs holds an email from Neha, a developer in Pune, to Mark, a client in Ohio. Rewrite it inside the quotes for him:
- none of the forms of the lesson's rule pack: discussed about, prepone, do the needful, PFA, intimate you and revert back, and no EOD;
- the ask stays an ask: a question, or please and a verb, for the test report;
- a time with its zone for the test report, such as 5 PM Eastern Time on Friday, in the client's own zone;
- every fact stays: the go-live, Monday, the test report, the deployment plan, the cut-over and Neha;
- no sentence over 25 words.
Run the sample tests after each sentence. When they pass, read the email as Mark would, and then as Neha's team lead would: is it still respectful and warm?
Starter code · email.mjs
// Rewrite the email for Mark, a client in Ohio. Keep the line breaks of the greeting and the signature, and every
// fact.
export const email =
'Hi Mark,\n' +
'As discussed about, we have preponed the go-live to Monday. Kindly do the needful and share the test report by ' +
'EOD. PFA the deployment plan. I will intimate you once the cut-over starts. Please revert back with your ' +
'comments.\n' +
'Regards,\n' +
'Neha'; The sample tests · email.test.mjs
import { test, assert } from 'mysmartcopilot:test';
import { email } from './email.mjs';
// The lesson's global-reader rule pack, with its rule for a time that has no zone.
const RULES = [
[/\brevert(?:ing|ed|s)?\b(?! (?:the|this|that|my|your|it|commit|PR|change)\b)/i, 'revert: write reply'],
[/\bpreponed?\b/i, 'prepone: write moved earlier'],
[/\bdo the needful\b/i, 'do the needful: write the exact action'],
[/\bintimate (?:you|me|him|her|them|us)\b/i, 'intimate you: write let you know'],
[/\bdiscuss(?:ed|ing)? about\b/i, 'discussed about: write discussed or agreed'],
[/\bPFA\b/, 'PFA: write I have attached'],
[/\bEOD\b/, 'EOD: give a time and its zone'],
];
const ASK = /\?|\bplease\s+\w+/i;
const TIME_AND_ZONE = /\b\d{1,2}(?::\d{2})?\s?(?:AM|PM)?\s?(?:IST|UTC|GMT|BST|CET|Eastern Time|ET)\b|\bUTC[+-]\d/;
const body = () => email.split('\n').slice(1, -2).join(' ');
test('none of the rule pack forms remain', () => {
for (const [re, why] of RULES) assert.ok(!re.test(email), `"${email.match(re)?.[0]}": ${why}`);
});
test('the ask for the test report stays an ask, with a time and its zone', () => {
const sentence = body().split(/(?<=[.!?])\s+/).find((s) => s.includes('test report')) ?? '';
assert.ok(sentence, 'the email no longer mentions the test report');
assert.ok(ASK.test(sentence), 'ask for the test report: a question, or please and a verb');
assert.ok(TIME_AND_ZONE.test(sentence), 'give a time with its zone for the test report');
});
test('every fact stays', () => {
for (const fact of ['go-live', 'Monday', 'test report', 'deployment plan', 'cut-over', 'Neha']) {
assert.ok(email.includes(fact), `the email no longer says "${fact}"`);
}
});
test('no sentence is over 25 words', () => {
for (const s of body().split(/(?<=[.!?])\s+/)) {
const n = s.split(/\s+/).filter(Boolean).length;
assert.ok(n <= 25, `${n} words: "${s}"`);
}
}); A hint
Start with the ask. "Kindly do the needful and share the test report by EOD" becomes a question with the exact action and a time with its zone: "Could you send us the test report by …?"
Results of the sample tests
| Test | Result | Details |
|---|
What your code printed
The sample tests run on this device, in your browser (QuickJS): nothing is sent to mysmartcopilot.com. The first run downloads JavaScript (about 0.6 MB), which is kept for the next runs. A check in your browser is feedback for you, not proof that the code is right for every input.
Then try the questions on the variety and the revert trap. The session sends you first to the idea your answers so far have found hardest:
Practice that adapts to you
Practise this lesson
5 questions about 5 ideas of this lesson. Each answer is explained at once, and what you get right is kept in this browser.
Interview questions
Warm-up (fresher to mid-level): What can “Please revert” mean, and why is it risky in a team of developers?
It can mean two things. Oxford’s learner’s dictionary lists revert meaning reply as especially Indian English and
rather formal, so in many Indian offices “Please revert” means “please reply”. To developers everywhere, revert also
names a Git command: git revert records new commits that undo earlier ones. A colleague abroad can read “Please revert
on the PR” as an instruction to undo the change. Write reply when you mean reply, and keep revert for undoing a
change.
Three longer questions about Indian English at work wait in this module’s bank:
-
Fresher to mid
A teammate's first email to a new client in Ohio says: "Dear Sir, kindly do the needful and revert by EOD. PFA the logs." Your lead asks you to fix it before it goes. What do you change, and how do you explain it to your teammate?
-
Mid to senior
A colleague abroad ran git revert on a merged fix after a message said "please revert on the PR", which the writer meant as "please reply". The fix was off main for two hours. You are asked to stop this happening again. What do you propose?
-
Senior to staff
Your company is writing one style guide for engineering teams in India and the US. You are asked to write the entry on Indian English forms. What goes into it, and how do you keep it respectful?
Key takeaways
- Indian English is a variety with its own words; adapt them to your reader, not because they are wrong.
- Write the international word for a reader abroad: reply for revert, move earlier for prepone, the exact action for do the needful.
- Keep revert for undoing a change: in a team of developers, “Please revert on the PR” can undo a fix.
Terms in this lesson
- code-switching
- Moving between two languages, or two varieties, in one conversation or message, such as mixing Hindi and English in a team chat.
- variety (of a language)
- A form of a language used in one country or by one community, with its own words, spellings and grammar, such as Indian, British or American English. No variety is a mistake.
References
- prepone (verb), Oxford Advanced Learner's Dictionary (Oxford University Press)
- revert (verb), Oxford Advanced Learner's Dictionary (Oxford University Press)
- needful (noun): do the needful, Oxford Advanced Learner's Dictionary (Oxford University Press)
- kindly (adverb), Oxford Advanced Learner's Dictionary (Oxford University Press)
- intimate (verb), Oxford Advanced Learner's Dictionary (Oxford University Press)
- intimate (adjective), Oxford Advanced Learner's Dictionary (Oxford University Press)
- discuss (verb), Oxford Advanced Learner's Dictionary (Oxford University Press)
- doubt (noun), Oxford Advanced Learner's Dictionary (Oxford University Press)
- git-revert documentation (Git project)
- Personal names around the world (W3C Internationalization)
- Abbreviations (Google developer documentation style guide) (Google for Developers)
- Write for a global audience (Google developer documentation style guide) (Google for Developers)
Related tools
Report a problem with this lesson
Kept only in this browser. Your Learn progress