Yeah, the dream may be over when Asia gets a high quality development machine in every home.
Yeah, the dream may be over when Asia gets a high quality development machine in every home.
My observation is that skill, communication and cultural alignment are what puts the West ahead of common outsourcing destinations (at least for Western projects - I would definitely pick a local developer for a local project as their cultural alignment and domain knowledge would be much better than an outsiders').
The problem I see is that access to hardware and educational resources is not enough. I don't believe software engineering as a whole can be taught, there are some things (including unwritten things nobody wants to admit) you only pick up from real-world experience, and some things that have less to do with software and more with culture and the local environment your software will be used in (since software in most cases is there to solve some kind of business problem that might be specific to a certain location or jurisdiction).
Lack of real-world experience in the target environment is what's holding the common outsourcing destinations back. Giving free computers to everyone still won't magically make them competitive in our software engineering market.
General-purpose computing devices are less and less popular and I wouldn't be surprised if a lot of developing countries have better smartphone penetration than computers, partly because smartphones offer better opportunities for rent-seeking and the attention economy where as general-purpose computers hamper those things, so the former are being pushed more and potentially subsidized.
This is even a problem in Western countries - a lot of kids/teenagers today feel at home on a phone yet don't even understand the concept of a file.
A lot of people got into software engineering by learning it themselves because they had access to a general-purpose computer, since back in the day it was the only computer you could get. Nowadays, a lot of families might be satisfied with a phone, tablet and games console - those offer zero opportunities for learning programming.
They definitely do, such as in many African and Asian countries, although not for the reasons you state. Phones are simply cheaper in these countries than computers. They're getting devices for 200 dollars from Chinese manufacturers mainly, not the 1k iPhones that are popular in the West.
https://www.nationmaster.com/country-info/stats/Media/Person...
The problem is the skills and communication, which stem from this situation being the status-quo and there being nowhere for new developers to learn anything better (or even know that their current skills aren't up to scratch, at least not for working on foreign, outsourced projects).
The real reason is that their country of origin just has a massive number of people, and the ones who are able to immigrate to the US are those who have either money or skills that will make them money here. Same goes for Chinese Americans.
There is a source country with a massive number of people, and the target country (with a fraction of the residents of the source country). The target country filters immigration for high skill and/or high income. Just through the sheer numbers game, you get the outcome you described.
Of course, it is more nuanced in terms of the overall development level of the source country (e.g., this probably wouldn't work if pretty much no one in India was able to afford a computer or if India had almost no internet connectivity). But with how high the Indian level of development is as a country (compared to the minimum required for the numbers game to start working), it shouldn't matter.
Let's look at a purely western example - implementing a billing system for a company serving the US market. A developer from the UK will assume that every bank account holder can do free, easy and instant wire transfers, yet in the US that's (still!) not the case and most people use Zelle or Venmo or PayPal for those things instead, which now significantly increases complexity (both engineering and potentially regulatory).