I’ve said it before and I’m standing by it:
If you don’t know English, you’re not a programmer
However I think that a language and culture shared by many people would be a big step towards reducing the feeling of animosity we have between different groups of people. You see, people are selfish mostly. To get someone to think kindly of you, she needs to consider that you have some things in common. And there is no easier way to create hate, than being different than the given person (talk a different language, dress differently, look differently).
It is always the differences we see first. You can convince yourself with this very simple experiment: try to recognize people who have a different skin color than you see every day (blacks, asians, whites, etc). At first you will see no difference between them, because the fact that they are different from what you are used to seeing is so striking that you don’t observe the more subtle details usually used to identify individuals!
How would us all speaking a common language and share some common cultural values help? It would eliminate some of the differences. It would help us better relate to each other. It would make it possible to directly communicate with one another, without an intermediary who may distort the ideas.
Is English the only option? No, but its current position in many fields makes it a very good candidate for the job.
Won’t this “drown” other cultures? Not at all, there will always be some local aspect of people’s knowledge and behavior (“culture”). Take a look at Canada, the USA and Australia for example. Even though they have English as (one of) their official language, nobody would say that they are the same. It may some small effect, but it is worth it to reduce the global xenophobia which seems to be ever growing…