Introduction
When working with Indian developers, their English skills can vary. You also need to be aware of certain words exclusive to Indian English; some of which I actually like. For example they have the word “prepone” which is the opposite of “postpone”, but in UK English, we don’t seem to have a single word for that.
Some phrases seem more like poor grammar. An example of that is “Can able” or “Can’t able” when we would say “I’m able/unable”.
- “i think you can able to see the second image is it?”
- “I can’t able to find any relationship between those two codes”
- “still we can’t able to recreate the issue”
“For the same” is an interesting phrase because it just refers to something earlier in the sentence without having much meaning. It’s similar to when they say “do the needful” which just means “do whatever is required” but often doesn’t really add anything to the instruction; if they have requested something from you, then surely you will do it if you can.
There’s a few strange greetings like saying “good noon” which I’d assume is just a shortened version of “good afternoon” rather than being appropriate for a very specific time period. There’s a few people that have a strange greeting of “Ho!”
“Ho!! Is it please can you share those knowledge with me…”
To take time off, they like to “avail”. As a bonus, here’s a strange requests:
Morning Team,
I have picked up fever and heavy cold. Availing AL today.
Please conduct stand up and end call.
Available over mobile for any urgent issues.
Thanks and Regards,
Jeeva
I’m glad you told me to end the call Jeeva, because I’d have stayed on it all day otherwise.
Indian Pull Requests
When it comes to the Code Review process aka Pull Requests (PRs), it can be hard to ask them why they are making certain changes. Sometimes asking questions can just lead to further confusion. Also, sometimes I’m sure some developers try to blag and hope you move on.
I was discussing this with a Lead Developer and he agreed that asking questions can either result in
- Blagging
- Revert the code and hope it works
- Or you actually get a good answer. But then if it’s not clear why the code was written like that, then maybe it does need a code comment or some documentation so others don’t get confused in future.
Even though I often got frustrated with their comments, in recent times, a lot of them use AI like ChatGPT to rewrite their responses, or sometimes I get the impression they just put your question into the AI and hope it comes out with a good response. So instead of poorly written English, it’s all robotic and a blag of jargon. So you can’t win really.
Row
“Refresh on special while saving special note, row background, Radio button alignment based on include exclude”
Blagging with Words on PRs
I questioned their pointless try/catch blocks which were catching an exception then rethrowing the exact same type of exception.
“Yes, as I couldnt use the dll in the resourcepicker project, so we can thrown the exception and catched it in resourcepicker class”
And
“The resources can be used due to filecahe, but no changes can be saved, when service is down. The above message is already used in Picker solution.”
Then when their project was being merged into the main branch, another developer questioned the same code. This time they said:
“To restrict that, have drilled up the ux tree and displayed the error message.”
Observation
“Found an observation while testing 12602 in 9.3.6 branch”
what does that even mean? I assume “observation” means “bug” or “potential problem”.
Bad Refactoring
He refactors some existing codec but also changes the return type of the method, which means the caller’s logic will have to be changed so was causing cascading changes which weren’t really relevant to his main change. Also, the logic didn’t look equivalent so I wouldn’t call it refactoring:, more like introducing a bug. He then claims he hasn’t changed it…
Me: "is this equivalent? It was checking >1 not >=1"
Them: "Actually, I haven't attempted to modify that as the logic written working as per acceptance criteria, and it already tested"
Me: "I don't understand, this method has been changed in this PR"
Them: "Just used expression for methods as commented by Andy. Apart from that i haven't changed any logic around that."
Down Merge
Vignesh
Here after no comments fixed against assurance branch?
Just need information about down merge
Andy:
sorry I'm not sure what you mean?
Vignesh
Two comments pending for our side... if any one raise PR I will raise PR also. Because of down merge... Incase only I will raise PR again do down merge that's why I am asking
IsMobileEnabled
IsMobileEnabled needs to return boolean value, so removed exception caused by null and also the GetResources during Trigger prompting needs to include Template also along with Protocols.
Didn’t Launch The Portal
me: “where is this used?”
developer: “This is used at TryLaunchPortal()…. At this point of time we never know the portal type to compare and verify the condition because the user didn’t launch any portal“
walkie talkie comms going on here
This reminds me of walkie-talkies, stating “over” so you know it’s the end of the message.
Roshni
give line break after method over
Shoban
Ok Roshni, Updated the changes
Shoban
Completed with the Changes
Roshni
give line break after method over not before the method over
Shoban
Thanks Roshni, Got your point. Made Changes
Roshni
and again please remove the empty line no 267
Shoban
Code changes completed as mentioned
Welsh
PR: Updated the Walsh text
Description: Updated the resource file with Walesh text
Do you think the text is gonna be accurate if he can’t get the title correct in English? It should say “Welsh text” as in “the Welsh language”.
Customer
Merge from Curomer first branch to main
Accelerator Keys
To define an accelerator key (allows you to use Alt key to select it), you place an & character before the letter. So Export has E defined. Edit can’t use E because Export has taken it, so they have chosen D. Cancel seemed an odd choice of N.
btnBackup.Text = "&Export";
btnContinue.Text = "E&dit";
btnCancel.Text = "Ca&ncel";
btnBackup.DialogResult = DialogResult.None;
Me
can't C be used as an accelerator key?
Kalyanaraman
C for Continue
Me
what is the continue button? Isn't this it? btnContinue.Text = "E&dit"; that is using D
SQL is up to 10 times better
yes i have tried with mocked 10 lacks data in local and while this query the data was well optimized. For data, I ran sp thrice
I bet you can’t tell if this is from some old children’s folk tale or an Indian’s PR