Being an Indian, I can speak about India.
The issue is about the culture here, the mindset of the people. Since childhood, we are trained to follow the process, trade the safe path, get into high paying professions like engineering, medicine, business administration, etc. Innovation, exploration, entreprenuership is still not so common here.
Most people get into IT for money, not because they like coding, or have an inclination towards computing. Due to this lack of interest, most of us end up becoming robots, carrying out instructions without paying attention to the meaning. Most developers never think from the end user perspective, or how would their specific component provide value to the bigger system.
You would hardly find innovators here, but you would see excellent workers. The idea of growth is solely in terms of money and designation, knowledge doesnt really matter to most.
Leading IT companies also follow the same pattern. They hire freshmen from colleges and train them to become such robots. The sad part is, their pay scale is still better than most other professions and there is no escaping from it. There are hardly any IT companies in here, who look out for real talent.
Another important fact is, most of the talented people fly across to the US or other nations where they can apply thier skills and earn much more than their Indian counterparts. So, if you are a developer in India, chances are, you'd end up being a process geek, than a tech rookie.
Although things are changing now and we do see a few startups cropping up, but they are still in short supply.
Update: So, the points above were my perspective to how programmers in the east are. However, to answer the question, programmers in the west, are generally more result oriented, focused, upfront and more professional. I have always worked with customers/clients from the west and have always found them co-operative, patient, flexible and supportive.