Do you have to know English to be a Programmer?
An interesting comment thread broke out in a recent post on Using Crowdsourcing for Expanding Localization of Products. Someone linked to a post and used the phrase:
"If you don't know English, you're not a programmer."
The post linked to didn't make the statement so boldly, but it's an interesting "link bait" phrase, isn't it? It's defintely phrased to get your attention and evoke opinions. I don't agree with it, but I wanted to dig more into the concept.
This whole conversation caught the eye of Fabrice Fonck, General Manager (GM) of Developer Content & Internationalization for DevDiv. He wrote this email to me and I wanted to share it with you. He's was a programmer before he became a manager, and English is not his first language, so I thought it fitting. I also added emphasis in spots. Fabrice believes very strongly in the usefulness of translation and translated content and has an entire organization dedicated to it, so you can understand why he'd feel strongly about this.
I began studying computer science and programming in 1985 as a freshman in a business school in France, my native country. At the time , localized versions of programming tools were not available and I will always remember when I picked up that version of GW-Basic only to realize that it was all in English. Learning programming seemed already daunting, but doing it in a foreign language only increased my level of fear. Over 20 years have gone by and English does not feel quite as foreign to me anymore, but I cannot help but think that for billions of people around the world, taking on such a double challenge may not necessarily lead to the same outcome.
Over the past 17 years in the Developer Division at Microsoft, I have devoted a large portion of my time and energy making sure our products and technologies are available in as many languages as possible because I believe it is important to make them accessible to as many people as possible around the world. During all these years, I have had the privilege of traveling to many countries around the world and I have talked to many of our customers, a number of which through interpreters. I have met many brilliant developers out there whose English language skills were limited if not practically non-existent. This anecdotal evidence is supported by our sales figures. In Japan for instance, where we have one of our largest developer population in the world, over 99% of our product sales are in Japanese. Entering that market with an English-only product is a recipe for failure. That same is true in counties such as France, Germany, Spain, Russia or China where our localized products represent over 80% of our sales. The list of countries goes on and on.
While it is true that a number of people overseas for whom English is not their native tongue will eventually learn and benefit from the vast amounts of technical content available in English, a greater number will not. That is why we continue to expand the number of languages in which Developer Division products and technologies are localized into. Cost is obviously an important factor here, especially for smaller geographies. That is why we continue to invest in technologies such as machine translation, translation wikis and CLIP, and concepts such as crowdsourcing and community engagement to drive down costs and make these languages a reality for the millions of developers out there (and aspiring developers) that do not speak English. By making our products available in all these languages, we also foster more community engagement in these languages, through blogs, forums, chat rooms, etc.
Here's some choice comments from the previous post:
Erling Paulsen: "Most articles, knowledge bases, books and so on are in English, so if you want to read up on something in depth, you need to have at least basic reading skills in English. Translating tooltips inside Visual Studio could end up causing confusion for at least new developers, as what they would see on-screen potentially did not match up with what the tutorial/book they were following." and "...I truly do appreciate that Microsoft is trying to make an effort, and I believe that MSDN has had a vast improvement in usability the past year or so. And the fact that MSFT are allowing community contribution is absolutely fantastic, but at least to me, the translation effort just seems a bit unnecessary." and "I never said, or meant to say that you need to be fluent in english to be a good programmer. And as Scott points out, the side-by-side translation feature would actually be a great way for learning english."
Paul van de Loo: "Developers might as well get used to learning new languages (even if they aren't programming languages)."
Spence: ""A programmer who doesn't at least understand English is not a programmer" that's an outrageous statement. That's like saying "a musician who is deaf is not a musician" patently untrue and ridiculous. plus pretty offensive to millions of programmers."
Ramiro: "I believe that in an ideal world every programmer should speak and read enough English to be able to work, learn and interact. However (and specially in Latin America) this is still a long term goal. I really applaud the effort being put in by Microsoft and other companies to make resources more available for everyone."
Robert Höglund: "I do think we developers need a common language. When you have a problem, get a strange exception, 9/10 just googling the error message will get you the answer. I have tried developing on a Swedish version of XP but trying to search for those error messages doesn't work. Can't say i agree with the statement "If you don't know English, you're not a programmer" but it does make life easier."
Farhaneh: "I can not speak and write english very well , but i'm taking classes and reading english books in my major to make it better. because i want to be a good programmer."
Filini: "The english syntax that has been used in programming languages for the last 50 years."
John Peek: "To say that if you don't know English, you're not a programmer is a perfect example of ethnocentrism in this country."
What do YOU think? Is learning English the #1 thing a Programmer should do (after learning to type)? Can you be an awesome programmer and speak little or NO English?
The comment that *I* personally agree with the most is from Ryan:
"It would *seem* (totally non-scientific sampling) that the non-english speakers (as a first language anyway) tend to agree with the statement "If you don't know English, you're not a programmer" more than native english speakers."
What do YOU think, Dear Reader?