Why is offshore-developed code not the same quality? What is it about living (growing up?) in the US that has developers producing higher-quality code?
I highly suspect that it's merely selection bias. US companies outsource offshore to save money and when your goal is to save money you've already decided that "the best" isn't really what you're going for. So the code we--as US-based developers--see from offshore development often looks like barely-working garbage.
Yet if we look at open source code written by offshore developers it's often of high quality (i.e. higher quality than the crap we see in the world of Enterprise software). Why doesn't it match our experiences with commercial software development?
It probably has a lot to do with incentives. Open source software is often developed for pleasure or as a learning experience whereas US companies outsourcing software development aren't exactly "driving excellence."
I would also be curious what the relative salaries are, e.g. food and shelter are usually much cheaper in foreign countries.
American exceptionalism and absolutely wrong.
Should I assume that American code is usually low quality?
Yes. It usually is.
You can also hire the better part of offshore developers if you'll pay just a bit closer to US rates. I saw the situation "$15/h developer failed everything, help us $35/h developer!" quite a lot in Russian-speaking freelance communities.
Oh, and also, both the previous paragraph and your comments in the thread are (edited:)nationalist[1]. Not that it's not fun to use stereotypes and a few anecdotes to form an opinion, so don't mind me, just noting.
[1] Not sure if it's the correct word, I mean discrimination by ethnicity and nationality.
Nor do I think my nation is the greatest, and all the others suck. So I don't think it counts as nationalism.
Anyway, you do attribute certain characteristics to members of whole nations without any kind of proof (beyond what "everybody [in the field] knows"). I believe you shouldn't, and that it doesn't matter if the characteristics are positive or negative.
In reality, there are both good and bad programmers everywhere. That you ended up working with the bad - or maybe ill-incentivized due to some circumstances - programmers from here or there does not mean that there are no good programmers there or businesses that care for quality. It just means you didn't meet them.
Perhaps you should not be accusing others then if you aren't even certain what you're accusing them of.
> Anyway, you do attribute certain characteristics to members of whole nations without any kind of proof
Homogeneous groups of people often share similar attributes, I don't see what is incorrect or wrong about that.
You are correct though, I do not have proof, but it is something that I hear from and discuss with colleagues, as well as have observed myself.
I said I'm sorry, and I edited the comment. This is, however, a detail - that you are unjustly discriminating, only on a basis other than race, I stand by.
> Homogeneous groups of people
Assuming homogeneity of any group of people is almost certainly wrong.
Why don't you substitute "black" or "Hispanic" or "Jewish" for "offshore" in your arguments and see what happens? Would you be able to leisurely write that, in your opinion, "black programmers are sloppy and only churn code as quickly as possible"?
That is implied, from the comment you replied to. You may need to rephrase.
I don't think this has to be American to be true.
I have no idea what % of offshore code work that represents compared to just a regular consulting firm that happens to be located overseas, or a branch office of a company located in another country.
You can get ridiculously poor quality of code by paying bottom dollar and failing to properly communicate with your developers, no matter what country those developers happen to be situated in.
Even if luxuries are not cheaper, food, shelter, healthcare etc. are, freeing up more monies.
Cheap offshore developed code is usually not the same quality. Pay people the same and it's amazing what you'll get.
I write a lot of it professionally.