Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

New post - Bad Indian Programmers

  • Loading branch information...
commit 26c0f54f0af6f9133a605e6745e8243a7111ef18 1 parent 25af6e2
@Srirangan authored
View
6 app/views/index.scala.html
@@ -2,6 +2,12 @@
<ul id="posts">
<li>
+ <a href="/2013-10-bad-indian-programmers">
+ Bad Indian Programmers
+ </a>
+ <small>2013-10-07</small>
+ </li>
+ <li>
<a href="http://www.scalacommunity.com/post_top_5_scala_programming_books_money_can_buy_1367336392401">
Best Scala books money can buy
</a>
View
2  project/build.properties
@@ -1 +1 @@
-sbt.version=0.11.3
+sbt.version=0.12.0
View
2  project/plugins.sbt
@@ -5,4 +5,4 @@ logLevel := Level.Warn
resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"
// Use the Play sbt plugin for Play projects
-addSbtPlugin("play" % "sbt-plugin" % "2.0.4")
+addSbtPlugin("play" % "sbt-plugin" % "2.1.5")
View
88 public/posts/2013-10-bad-indian-programmers.html
@@ -0,0 +1,88 @@
+<h2>Bad Indian Programmers</h2>
+
+<div class="entry-content">
+
+ I was reading <a href="http://www.reddit.com/r/ProgrammerHumor/comments/1nuslr/got_a_contract_to_fix_some_outsourced_indian_php/">a thread</a> on reddit.
+ Reddit user "chinan" has to work with an existing code base for a project that was originally outsourced to an Indian PHP
+ developer.<br/>
+ He is devastated.<br/>
+ <br/>
+ The lively discussion has humorous notings by various redditors of their mostly-poor experiences with Indian programmers.<br/>
+ As an Indian programmer, I feel offended.<br/>
+
+ <h3>Living in India.</h3>
+
+ Also have lived in India until recently. I remember spending three hours a day commuting (either by car or public transport). That's 15 hours a week.<br/>
+ Public transport used to always be really crowded. The summers saw 45 degrees celsius. Everything had a long queue / wait list, it was hard.<br/>
+ <br/>
+ Long story short, the quality of life is really bad. Worse than what my words describe.<br/>
+ If you lived there, you know what I mean.<br/>
+ <br/>
+ If I talk to somebody working in India, and he is cheerful, I respect that.<br/>
+ Maybe, just maybe, there could be a correlation between quality of life and quality of work?<br/>
+
+ <h3>Am I in denial about crappy Indian programmers?</h3>
+
+ Probably not. Having worked around ten years with Indian colleagues, I probably have more stories about bad Indian programmers than you.<br/>
+ On the same note, I probably have more stories about brilliant Indian programmers than you can ever imagine.<br/>
+ <br/>
+ Given the economic situation in India since the mid 90's, IT / Software is often the best job option for a young adult in India, and he/she picks up an IT /
+ Software job regardless whether he / she has genuine interest in the field.<br/>
+ That is the reason why many Indian programmers you encounter are demotivated, uninterested and produce less than desired quality of work.<br/>
+ <br/>
+ <em>They're not stupid, they're demotivated.</em><br/>
+ <br/>
+ I don't blame the quality of education here. That's a common excuse. If a person is motivated, he'll surpass that constraint.<br/>
+ Now, given that they're indeed demotivated (as I claim they are) why do you choose to outsource to them?<br/>
+ And if you do, isn't it part of your responsibility to keep your team motivated?
+
+ <h3>Software projects fail.</h3>
+
+ Even with the best guys, a vast chunk of the software projects don't see the day of light.<br/>
+ That's the nature of software. That's why we hear from (agile || scrum || kanban || the-latest-greatest-process-of-today) gurus selling their methodologies as
+ if it were the silver bullet to solve all problems.<br/>
+ <br/>
+ Could it be it wasn't "those Indian guys" who caused your project to fail?<br/>
+
+ <h3>Everybody else's code sucks</h3>
+
+ Working with legacy code, regardless of how well it is written, will always be a challenge.<br/>
+ Even if you start understanding how it was written, what stakeholders expect from the product changes over time.<br/>
+ <br/>
+ Thus legacy code will be inadequate regardless of which timezone it was written in.<br/>
+
+ <h3>Cost vs. quality trade-off</h3>
+
+ So you want to hire somebody for less than ~ $20 per hour.<br/>
+ And you expect the quality of $200 per hour experienced developer.<br/>
+ <br/>
+ Stop having crazy expectations.<br/>
+
+ <h3>Code quality, a collective responsibility</h3>
+
+ If X interviews Y, and Y sucks, then X sucks.<br/>
+ If X manages Y, and Y sucks, then X sucks still.<br/>
+ If X works with Y, and Y sucks, and X can't effect change, and Y continues to suck, then X continues to suck.<br/>
+ <br/>
+ Of course the reality of project outsourcer X can be worse.<br/>
+ <br/>
+ Many of the X's I worked with:
+ <ul>
+ <li>wanted to save costs at the expense of quality</li>
+ <li>wanted to ship everything yesterday</li>
+ <li>didn't understand what they wanted in the first place</li>
+ <li>changed their minds every two weeks (and then educated me about <em>pivoting</em> and Eric Reis)</li>
+ <li>were completely hands off and just expected magic to happen on the 'milestone dates'</li>
+ </ul>
+
+ <br/>
+
+ Now we run out of funds. Isn't it easy to blame the crappy Indian programmer?<br/>
+ Poof, not my fault. Not my responsibility.<br/>
+ <br/>
+ Boo those bad, bad Indians!<br/>
+ <br/>
+ <hr/>
+ <br/>
+ <strong>Bottom line</strong> - Stop making indefensible generalizations, stop making excuses.
+</div>
Please sign in to comment.
Something went wrong with that request. Please try again.