Mandarin Chinese programmer communities

by Jon Hancock on March 30, 2009

This post is a build on discourse found at Jeff Atwood’s blog post.  In his post Jeff does not directly discuss the recently launched Chinese clone of StackOverflow.  However, his article is timely in regards to the most salient point of why such a clone exists.  I participated in lengthy discourse at Hacker News on the topic of this clone.  Most of the HN discussion centered around the ethics of the clone itself.  I will focus on the necessity and certainty that yields such Chinese language communities.

The key question presented by Jeff is “Shouldn’t every software developer understand English?

I’ll start by directly answering this question: Yes, they should.  If you wait for docs on languages, tools, and libraries to be translated to you native tongue, you will be a “trailing edge” programmer.

But there is more to the issue.  One might try to stretch this simple question to imply that English should be the default language for all discussion within programmer communities.  If your goal is to create a global online community, such as StackOverflow, forcing it to be a single community only in English will leave plenty of room for other communities to emerge.  This is not a problem that needs to be fixed.  It simply needs to be understood.

My perspective is from living in Shanghai the last 9 years.  I am a “white” American.  I had no experience with China prior to my first trip there in Summer of 2000.  After all these years, now married into a Chinese family, my Mandarin is still poor.

By Fall of 2000 I had set up an R&D lab in Shanghai with a group of the best and brightest local talent.  I wasn’t there for cheap labor, I was paying more than double a good programmer’s salary.  I was there because my new customers were Chinese banks and governments which required local programers to interface with their systems.  Over the next 2 years, I grew a world class development team. They all spoke English as a hiring requirement.  Interacting with me and my team in the U.S., their language skills only got better.

During those first few years, I worked closely with bank Chairmen and senior officials in charge of IT for the Shanghai and China governments.  Whenever the issue came up of language choice for tech documentation, without exception, all officials asked me to keep docs in English only.  They wanted their programmers to be forced to learn.  They understood what it took to prepare their software community for a global market.  English was the only answer.

If language is not unified, trying to convey features and tech requirements is nearly impossible.  English has remained the choice in this regard.  But that is for requirements and final product.  Not for the process of getting there or for learning and basic knowledge exchange.

So I completely agree with Jeff Atwood, right?  Not quite.  There is more to the story.  This is a story about building community.

After a few years, I became interested in giving my time back to the local software community.  I am co-founder of the BarCamps in Shanghai and Beijing and co-founder of the Shanghai on Rails group.

The first BarCamp in Shanghai was put together by myself and friends from RainCity Studios in Vancouver.  We lucked out and the event was fantastic.  Over half the participants were local Chinese.  All the presentations were in English and mostly presented by foreigners.  We made a strong effort to encourage presentations and participation in “whatever language people were comfortable in” but it didn’t happen.  The next year’s Shanghai BarCamp was bigger and better.  This time half the presentations were by locals in Mandarin.  The presentations in Mandarin had interaction from the audience; the English presentations did not.

My experience with the Shanghai on Rails group is similar.  The first event, all presentation were in English even though we encouraged people to use “whatever language they felt comfortable with”.  Now, most presentations are in Mandarin and its the foreigner’s job to “sink or swim” in this environment.  I am very proud of this group and those that continue to build other communities such as China’s Open Source Camp.

When Chinese use their native tongue, the knowledge exchange goes faster and in more depth.  It encourages greater participation by a wider audience.

You may think these experiences only apply to offline, in person interaction.  It turns out it does not.  A site like StackOverflow ends up being more than just discrete programmer question and answer.  The discussion grows into rational behind the answers, agreement, disagreement, and derivative topics.  It grows into meeting people, online and off, and developing relationships.  An English-only website will not be adopted by the majority programmer community in China simply because they are not comfortable enough participating in English.  Will this change?  Maybe, but its changing very slowly.  My money is on Mandarin staying the language of choice for Chinese programmer communities even though their English skills continue to improve.

Jeff proclaims:
Advocating the adoption of English as the de-facto standard language of software development is simple pragmatism, the most virtuous of all hacker traits. If that makes me an ugly American programmer, so be it

This is not simple pragmatism.  It is the opposite of pragmatism.  Jeff seems to think he can “think” his way through this.  Pragmatism is not about “rational in your head”.  Pragmatism is about recognizing “what is”.  And what is is that Chinese programmers learn more rapidly and information exchange is more thorough when its in their native tongue.

I’m certain Jeff is a smart man.  I am certain if he spent a few years in China he would understand my position as the pragmatic one.  The only thing lacking is his experience in China.  Anyone with an English-only website that lacks this China experience and understanding will find themselves dumbfounded when their product gets cloned.

There is vast evidence to this effect.  There are hundreds if not thousands of Chinese IT knowledge exchange sites and blogs.  The local Chinese did not create these sites to simply be different or to “own it themselves and get rich off ad revenue”.  If you knew how hard it is in China to make money off an ad supported site, you would understand how laughable this is.

StackOverflow is a great site.  I hope it continues to see success.   If the folks at StackOverflow wanted to address the China market, the only way they could have successfully done so is to have cloned their own product and run it on a server inside China.  They would have to fragment their own start-up.

You can pretend the world is flat all you want.  Those that understand it is not will pick up where you have left off.

{ 4 trackbacks }

popurls.com // popular today
March 30, 2009 at 8:00 pm
Kent J. Chen's WebLog
March 31, 2009 at 12:39 am
Mandarin Chinese programmer communities - odwks | English Software
April 1, 2009 at 2:06 am
Podcast #48 - Blog - Stack Overflow
April 8, 2009 at 9:49 pm

{ 46 comments… read them below or add one }

trevelyan March 30, 2009 at 4:45 pm

Great post John. Hope things are going well in Shanghai – be sure to drop a line the next time you’re up in Beijing.

Jose March 30, 2009 at 5:20 pm

Are there presentations in Shanghaiese?
Some years ago, the Chinese government embarked upon a campaing to eradicate the shanghai dialect, encouraging everyone to just speak Mandarin. Forbidding its usage on TV, radio, and print press as much as possible. Funny enough, they don’t do this to Cantonese, which has a lot of media presence.

Being Shanghai has become the defacto monetary capital of China, does this mean the locals are using their language/dialect for technical matters, too? I’m curious about that.

jhancock March 30, 2009 at 5:32 pm

Jose,
Good question. Shanghainese is not used in tech presentations except for minor slips by the presenters in informal talk. The local Chinese programmers speak Mandarin without regard to if they also speak Shanghainese. Also,, its not a big stretch. Cantonese is significantly different than Mandarin as opposed to Shanghainese which is mostly Mandarin with local dialect and slang.

sergio March 30, 2009 at 5:50 pm

Excellent post, thanks for writing it.

Adam March 30, 2009 at 6:55 pm

I am an American programmer who studies Chinese and I’ve tried to find blogs/portals for Chinese-language hacker culture. Any suggestions?

James March 30, 2009 at 7:01 pm

I respect your point of view Jon, but until Mandarin is as much of a language of discourse as English is in the realm of science (which I don’t see happening in even the medium term), discussions in Mandarin are only of use to people in the Sinosphere, whereas English is accessible to a more diverse audience.

It’s great that they have a Chinese language StackOverflow clone, but it doesn’t help anyone but a native Mandarin speaker, it’s a silo.

English can be understood by a much greater distribution of people all over the world.

James March 30, 2009 at 7:02 pm

Just to clarify, I’m not a native English speaker.

Jon Hancock March 30, 2009 at 7:18 pm

James, my post isn’t intended to say English shouldn’t be used in China. But rather to have both choices, which is what they do. Those outside China don’t seem to understand the need for both. The Sinosphere is a pretty big silo ;) . It can bootstrap within itself along with cross pollination in the Western-English communities. I’ve been watching how Chinese programmers learn and have found that it happens much faster when they have community in their native tongue in addition to the English communities.

OwenK March 30, 2009 at 7:36 pm

Jon, do you think this applies to any languages besides Mandarin?

Bob March 30, 2009 at 7:38 pm

Maybe Jeff needs to have a chat with his opposite number in China, see what’s going down?

Shortbaldman March 30, 2009 at 7:51 pm

“but until Mandarin is as much of a language of discourse as English is in the realm of science…”

James, it was only in the 60′s that english became the most-used ‘language of discourse’ in science. Up until then ( and had been for about 80 years ) the language of science had been German.

I venture to say that Mandarin will become that ‘language of discourse’ and probably sooner rather than later.

Peekay March 30, 2009 at 8:04 pm

Interesting post.. and a fresh whiff of a different viewpoint..

James Pearce March 30, 2009 at 9:17 pm

India and China are in the midst of a superpower-sized experiment to see whether Jeff Atwood is right or not.

I’m a ‘white’ Briton living in India. I can’t hope as good an analysis about this country as Jon’s.

However, most agree that the reason this country has pioneered the (higher value) IT offshoring business – where China has dominated the manufacturing equivalent – is the fact that well-educated Indians speak English fluently. This makes it easier for clients and users to converse with the programmers.

“China competes on cost; India competes on English”

That’s naive of course. I also assume the IT industry in China has a larger domestic market than in India. Creating software for these non-English-speaking users, translating user guides & documentation etc… your language argument very much comes into its own.

It’s as much about the language of the market as it is about the community within the industry itself..

Indeed, since India’s non-IT sectors seem very IT-illiterate (every government agency I have visited is a floor-to-ceiling shrine to the culture of paper-based bureaucracy), there is probably less motivation here to target software to non-English speaking users. And this reduces the motivation for the developers themselves to ‘think Hindi’ (or whatever) when coding.

(I’m not saying this is necessarily good for India, by the way. By constraining the IT industry to have such an export-focus, it’s going to be harder to use it to help drag other parts of the country’s economy out of medieval agriculture.)

Nevertheless, there are many more regional languages here than in China – so maybe even with a more healthy domestic market, there will continue to be a strong need for English.

Great post. Thanks.

Josh March 30, 2009 at 9:27 pm

I really can’t see Mandarin as a language of discourse except for Mandarin speakers. I did a Mandarin minor in college, lived there for 2 years afterwards, and majored in cognitive linguistics. The general linguistic view is that all languages are equal in the “difficulty to learn” category. This is true when you’re talking about native level comprehension with an essentially blank slate, i.e. a child < 3 years old. However, that’s not what most people who are reading docs, posting to forums, etc, are doing. They’re having comparatively rudimentary conversations, fine linguistic nuance isn’t a big deal in technical questions. (Contract negotiation? Waaaay different). Mandarin is a pretty unforgiving language both to speak, read, and write (ever use a Chinese dictionary?) and I really can’t see it becoming a standard because it’s just too different than the lingua francas on the other 6 continents (Spanish, French, English). That’s not to say anything in Mandarin is bad, just that if it’s in French or Spanish (two languages I had to put 1/3 the effort to learn 3x as much in) I’ll give it a read. I just can’t see myself doing that with an interesting blogpost in Mandarin, despite my experience. These two silos are gonna stay separate for the time being I think.

Jeff March 30, 2009 at 9:40 pm

Nice….

I am a programmer
I am a chinese programmer
I am a chinese programmer in Shanghai
I am a chinese programmer in Shanghai but work in a european company that talk about tech in Englisgh

I’d like to say, more or less , it is a problem relative with english skills of chinese people
Most programmers ( 70% ? 80%? 90% or more ? ) can not speak fluent english, exactly the has no such kind of competence.
This is caused by bad education.
I am one of them, I could read english, pass the englih exam easily, but it’s hard to communication with foreigner, especilly talk about tech deeply.

Though now, I am comfortable, somewhat

please exchange your idea with me here http://itober.blogspot.com

Jeff March 30, 2009 at 9:46 pm

Nice….

I am a programmer
I am a chinese programmer
I am a chinese programmer in Shanghai
I am a chinese programmer in Shanghai but work in a european company that talk about tech in Englisgh

I’d like to say, more or less , it is a problem relative with english skills of chinese people
Most programmers ( 70% ? 80%? 90% or more ? ) can not speak fluent english, exactly the has no such kind of competence.
This is caused by bad education.
I am one of them, I could read english, pass the englih exam easily, but it’s hard to communication with foreigner, especilly talk about tech deeply.

Though now, I am comfortable, somewhat

please exchange your idea with me here http://itober.blogspot.com
:)

kai March 30, 2009 at 10:23 pm

Whoever thinks that everything should be in English should not forget about that each country has its own software. Take http://www.discuz.net/(open source forum) for China. So should Chinese take their questions to stackoverflow regarding to discuz.net in English?

Of course it’s much better to have a localized site. Every Chinese software engineer knows that he/she needs to be able to read English documentation. But majority of them aren’t able to comprehend well in English. Having a localized site will encourage people to learn and participate more in their native tones than being just a observer/viewer.

kai March 30, 2009 at 10:25 pm

Joe,
the Chinese government doesn’t forbid the usage of Cantonese on tv, radio etc. because Cantonese is the main language used in Hongkong. Media in Canton(Guangdong) uses both mandarin and Cantonese as well.

Carla March 30, 2009 at 11:51 pm

Nice work and well said Jon.

paul March 31, 2009 at 12:12 am

Nice article Jon I pretty much agree with everything you’ve said.

I’m British and have been a programmer and also an English teacher in China well away from the big cities for 3 years.

I found that developers in China are pretty similar to developers in the US or Britain. Many of them have got used to living in a monolingual environment and aside from Mandarin and their home-town dialect they are not pre-disposed to speak other languages. People here assume geeks are not great at languages.

Having said that I found many of the star programmers that I have come across almost always choose to read documents in English, which they have few problems understanding. To be honest I read technical books in Mandarin for practice and it is a lot easier than say reading a newspaper.

For the most part I found, like you, that even the weaker speakers could get their English listening skills up to a good enough level after only a few months of interacting with me.

The problem of course is speaking. As you know, Mandarin is unrelated to English, you go about expressing yourself quite differently than in English, so for late learners of either language it is incredibly challenging to express yourself accurately and fluently. Just for the simple fact that being able to learn both English and Mandarin to a high standard requires a rare talent and a lot of hard work, means that Mandarin will continue to be used as a language of technical discussion in China and that naturally extends into the online world.

You should understand that for most people in a country of 1.3billion, they are never going to interact with any kind of foreigner in their lives. They all get English at school, nowadays many of their English teachers speak English to a reasonable level, maybe their younger English teachers even had a foreign teacher at university. But this is all relatively new, remember not too long ago Russian was the main foreign language taught, so honestly the older English teachers aren’t really very good. Class sizes in an average middle school are usually in excess of 60 students so emphasis can only be put on reading English because their is no scope for intensive oral tuition and you can imagine the teachers don’t encourage much essay writing. I mean would you like to mark 60 essays a night.

Of course many parents take matters into their own hands and ensure kids get exposure to English from an early age, and many want their children to study abroad for a few years so they can come back and get a good job. Even though this may add up to a small fraction of the population, I think there will be no shortage of capable English speakers here in a few years, but these will doubtless be surrounded by less capable English speakers, which will continue to force discussions to be in Mandarin.

One final thing is that I think that forcing everyone to learn English actually only hurts one group of people, that is the native English speakers. My impression is that the human brain is able to hold almost limitless amounts of information and master many skills if it only has the right training. However we are ensuring that all the other nations in the world give thier children rigorous mental training in languages, whereas the Brits and the Americans end up becoming somewhat mentally backward. If you don’t believe me try learning Chinese.

Ling March 31, 2009 at 1:28 am

Most Chinese programmer are bilingual, as you’ve pointed out, they are interfaces, but not only to the business systems, also to their peers, and of course to themselves. It is inevitable, and also a big advantage.

The better at English, the better chance for one to be a top programmer, I think. See my blog for the details @ http://an00na.blogspot.com/2009/03/all-programmers-are-english.html

When the most open and active ones find good English resources, they bring them into local communities, and maybe explain them, or even translate them. They are introducers, the outmost interface. You should notice they are not just absorbing, they also participate in the original English communities.

In the other direction, the receivers in local communities learn the exotics, but also learn that they can more timely and directly enjoy the most advanced techs if their English is better. So they are motivated to improve their English, and on the way to become introducers themselves.

So it is a bidirectional strengthening process, good for both the local and global communities.

Henry Tan March 31, 2009 at 2:12 am

I am a Singaporean Chinese, and I am adept in both language English and Chinese. Speaking Chinese does help in personal touch, but I am sad to see many China Chinese losing out in technically “trailing edge” simply because they have to learn 2 languages or relearn something in English after they have learned in Chinese.

How many young Chinese speaking 20+ is disadvantaged simply because they learned everything, including Math in Chinese? Europeans also encounter the same thing, and they simply use English as main language for engineering discussion and thought process.

“Translating” not only results in “trailing edge”, it hampers programmers and engineers from being able to think clearly and solve technical problems efficiently.

wear March 31, 2009 at 2:47 am

In my minde, language is desided by the participate’s favor, if they think they are ok when using english, english is ok too. but most of them will like to use native language I think.

Adelle March 31, 2009 at 2:47 am

Make a post about English being the primary language of programming, on an English-speaking forum, and surprise surprise, a bunch of people agree. Stack Overflow is often an echo chamber, and the love-in following this post makes me want to vomit.

andhapp March 31, 2009 at 3:40 am

I totally agree with this post. I had a Russian tutor at University for Networking. No one knew what he was chatting about in the lecture. But there was this other guy who could speak Russian and he used to tell us that the guy is an absolute genius…his only problem is he could not express himself in English.

But I think there is a common language for developers to talk in and I guess the code is one way to look at it but in order to embark on a discussion it is important for both the sides to speak the same language.

Kl March 31, 2009 at 3:51 am

I agree. I write technical blog and some tutorials in Polish and they are popular. On Polish forums they are referred to instead of English sources or equivalents.

I’m sure there are _lots_ of programmers who just pick up a book in their native language, read local blogs/news and are happy with that.

Helena March 31, 2009 at 4:50 am

Thanks for this post. I completely agree with you. I am Dutch, and was not surprised to see all the comments of European-minority-language-speakers on Atwood’s post, that totally agreed with him. Most young Dutch people (probably the target audience of Atwood’s blog) are really proud of their ability to speak English, to the point that can be almost impossble for a foreigner in this country to learn Dutch. Like you, I also agree,but to a certain point. I cannot imagine not being able to speak/read English, not being able to read English documentation. I sometimes even find that I am unable to find the Dutch words for English concepts, because I only read about them in English. But still, I will always be a foreigner. It is still much harder for me to communicate a difficult issue in English than it is in Dutch and I don’t think that this will change soon, unless I were to move to an English speaking country. It is hard to improve your English if you are not surrounded by English on a day to day basis (unlike some of the commenters, I have never communicated with Dutch clients or colleagues in English and never seen that happen either). Unfortunately, Dutch is quite a small language, and there simply aren’t that many Dutch Django developers. It makes no sense for me to try to find answers within the Dutch community when the English community is so much larger and thus more knowledgeable. But if I were not Dutch, but Chinese, which is spoken by so much more people, there is no doubt that I would love to have a Chinese community. To me, it is best of both worlds: you can still do everything you need (like reading up to date tech docs, books and blogs) in English, but also communicate effectively using your mother tongue with fellow developers.

Scott March 31, 2009 at 7:39 am

Awesome Post. Thanks for the eye opener…

Ryan Eastabrook March 31, 2009 at 9:48 am

“If the folks at StackOverflow wanted to address the China market, the only way they could have successfully done so is to have cloned their own product and run it on a server inside China.”

Too bad that clone is hosted in the United States.

Jon Hancock March 31, 2009 at 10:05 am

Ryan, Interesting that cnprog is not running inside China yet. Not too surprising giving costs and effort to legally run a server in China. Any product for the Chinese mainland market needs to be on a server inside China to enable reasonable performance. I have no dog in this fight. cnprog, stackoverflow, or someone else may take cnprog’s source and run it inside China. There is how you create a winner.

Sam Jew March 31, 2009 at 10:10 am

As my Russian friend put it, maybe they’ll invent a machine that reads your thoughts and converts them to code. I’m sure “they” in this case refers to Chinese people who don’t understand English.

Mononofu March 31, 2009 at 12:24 pm

I believe language is just a tool to reach your goal, and if English is the language spoken by the most developers (as it is), then only English should be used for all developing purposes to ensure everyone can understand and profit from discussions and documentation.

My native language is German, but I still prefer to use English when talking about coding, as it is so much easier to transport ideas when you use the same language your code is in. (ranging from keywords over function names to comments)

Martin March 31, 2009 at 12:54 pm

It would be nice to see some language agnostic programming languages, where tokens could be localized.

I also wonder whether chinese programmers will eventually invent their own programming languages, with grammars that are less influenced by western thinking. Chinese grammar is so radically different to English grammar, that I wonder if this would result in completely different ways of coding problems.

Luis March 31, 2009 at 1:08 pm

James Pearce said: “However, most agree that the reason this country has pioneered the (higher value) IT offshoring business – where China has dominated the manufacturing equivalent – is the fact that well-educated Indians speak English fluently. This makes it easier for clients and users to converse with the programmers.”

And here it pays to remark on the sociolinguistic similarities and differences between India and China. In India, English is a language of interethnic and interdialectal communication (a role in which it competes with Hindi). In China, it’s Mandarin that serves that function.

So from a purely domestic perspective, the linguistic situation of the two countries is similar; there’s a lot of local linguistic diversity, so the conduct of national affairs requires a lingua franca, which the educational system teaches, and it is a significant disadvantage not to learn it. But while in China this lingua franca is Standard Mandarin, spoken mostly only in China, Indians have the advantage that one of their national lingua francas is English.

Andy March 31, 2009 at 1:28 pm

Great read, Jon, and great comments, all!

Many years back I read a report on children from dual-language families. I don’t know how this translates into adulthood, but in relation to kids of the same age that only spoke one language at home, the dual-language children had a lower overall vocabulary range for each language, on average. I don’t know if this means they had a larger total vocab.

Ben Newhouse March 31, 2009 at 1:45 pm

As a white guy who’s spent a fair amount of time in China/Taiwan and can read/speak/write pretty well, I’ve found that on more than one occasion I’ve found answers to technical problems on Chinese forums in Chinese.

Documentation addressed to a wide audience, makes sense to be in standard english. But there are a lot of smart people spontaneously conversing in their native languages. Knowing other languages (like Chinese) unlocks you to some of these brilliant insights you would not otherwise come across.

English is good for mass communication, but it can hamper creativity in non-native environments. I think it’s a bit imperialistic to try to impose English as the creative medium for everyone, because you’re ignoring the billions of people who are creative in another language and you’re ignoring a lot of technological potential.

So basically, I agree with your post :)

Enlightenment March 31, 2009 at 1:46 pm

I speak in C and C++.

Foo Bar March 31, 2009 at 2:14 pm

What you’re missing is how unlikely it is for this situation to occur in any country other than China. The reason why it’s possible in China is because:
a) the population is big enough for a sufficiently large programming community to exist
b) Mandarin is sufficiently different from English such that becoming fluent in English would be too much hassle for the average Chinese person’

However, you should note that Mandarin itself is a lingua franca within China. Were it not for the PRC making Mandarin the national language, this situation would have never developed in the first place.

Nick Taylor March 31, 2009 at 4:01 pm

re: “This is not simple pragmatism. It is the opposite of pragmatism. Jeff seems to think he can “think” his way through this. Pragmatism is not about “rational in your head”. Pragmatism is about recognizing “what is”.”

Thank you, thank you thank you.

This concept is absolutely pivotal to a huge amount of what constitutes “debate” on the web. I’d never seen it articulated before. There is waaaaay too much “thinkism” and not enough “isism” out there.

I’m a big fan of isism.

Emris March 31, 2009 at 4:34 pm

Foo Bar wrote: “However, you should note that Mandarin itself is a lingua franca within China. Were it not for the PRC making Mandarin the national language, this situation would have never developed in the first place.”

The overwhelming majority of people in China (like 85%) were already speaking standard Mandarin (putonghua) or something close to it before it was made the national standard. So the PRC didn’t have to try very hard.

Testing here: italic? bold?

Grover March 31, 2009 at 9:37 pm

Martin wrote: “I also wonder whether chinese programmers will eventually invent their own programming languages, with grammars that are less influenced by western thinking. Chinese grammar is so radically different to English grammar, that I wonder if this would result in completely different ways of coding problems.”

PRC simplified Chinese often only needs one character where a whole word would be needed in English, hence you could leave out whitespace, just like in their writing. And because it can be read at the same font size as English, you could get much shorter programs – very useful if you can see everything in one screenful.

As for the different-ways-of-coding-problems result of the grammar-being-different property of Chinese, that would cause syntactic-level-only differences.

Guillaume April 1, 2009 at 1:09 am

Hi, it’s a bit out of topic, but do you know what is the average salary for a good programmer in Ruby in Shanghai or Suzhou? What about the salary for a good designer/css guy?

I’m planning on maybe moving to either Shanghai or Suzhou in a few month and would be interested in knowing that… Also if you can give me your email address, it would be nice to chat with someone who has experience working there as a software developper and when I finally come there I can invite you to some beer and huoguo :-) (I lived in Shanghai for 6 months 4 years ago but none of my friends there are really in the software business…)

On the topic, while I think it’s important for programmers to learn to communicate in english (by writing is enough) to get access to the wealth of new information, I also completely agree that it makes sense to have resources in one’s own language…. For most people who haven’t lived in a english country for a long enough time so that english has not become completely natural for them, learning in their own language will remove the cognitive barriers of mentally translating the content while learning. As an example, I’ve lived in Japan for 3 years and an half and while I understand Japanese well enough to work I know that when it comes to learning new materials, I learn much faster in French or English than I would in Japanese.

I sometimes have a feeling that a lot of American companies are blinded by the fact that a lot of people can read and write English. They tend to think that building a global community in english is enough and there is no need to localize it to other languages but what most of them fail to realize is that a lot of people who can communicate in English have to make a mental effort that wouldn’t be present in their own language.
Of course, there is the issue of the cost of localization and so it might not actually make sense to localize your product. But I have the feeling that thy discard the idea of localizing too quickly and are surprised when a cloned localized version of their website springs up.

Sorry for the rambling answer…

Bruce M. Axtens April 1, 2009 at 2:17 am

All that has been said here applies equally well to other language environments. I spent six years in Pakistan. I taught IT at an institute in Karachi. Everything was bilingual, English and Urdu, and had it not been so, no one would have passed.

Stephen Walli April 1, 2009 at 8:40 am

Great post and commentary, thank you. Couple of comments.
I’m learning Mandarin as an English-native 48 year-old Canadian. I made the observation recently to an English friend who has lived in Beijing for 15 years and is fluent that Western languages (English, French, German) seem to be process centric languages (they describe how the world works), but Mandarin seems to be a stateful language (it describes how the world is). It would be interesting from a programming language design perspective to see if this came through from Chinese developers. [@Grover - I'd be worried that if the new programming language was too compact in expression that it would turn into the other write-only language: APL]

I’ve had the privilege of travelling widely for work. I’ve given talks in Finland, Holland, Germany, Spain, and China. I always slow down my speaking speed and leave behind slides with too many words on them by “modern US presentation standards.” Despite the brilliant level of English I’ve encountered, it’s a Bell curve in every group. Some are fluent (or “fluent” in their own minds), others less so. Side discussions in any of these countries that drop into their native tongue to quickly explain something I’ve said always reduce the signal:noise ratio and improve throughput in the comms channel over people trying to be too polite and stay with me in English. And that’s the point in the end, it’s an exchange of ideas and not a unidirectional blast of “perfect” information.

Lastly there seems to be an assumption here from the pure English speakers that English is English. It’s not. I grew up in Canada, a country wedged between a massive American neighbour to the south and a terribly British upbringing. (My apologies for cultural-bias to my Québecqois cousins.) Canadian English is already a mashup of American and British English. (As the old joke goes, in one “bugger” is a noun but in the other it’s a verb.) I worked for an India Dev Centre for two years. Indian English is a further strain again. My friends from Australia talk funny. Once you get into any sort of nuanced discussion, you still find yourself needing to slow down and ask for clarification. English is not One-True-Language.

cheers,

Ape April 1, 2009 at 8:24 pm

No, only 70% of programmers should understand English, but that conclusion would be too boring for blogs. Secondly, it wouldn’t mesh with Jeff Atwood’s world of black and white.

MissXu August 1, 2009 at 11:00 am

Hey there,

I came across this post today as I was searching for Chinese programmer communities + specifically, Mandarin technical / business terms that are specific to the programming space.

Although I am English fluent, + learned English at a very young age, I grew up in a household watching my parents struggle with the language. It’s easy for people who only speak English to say, “Everyone should learn English!” but really? come on, a) China is 1/3 of the world’s population b) it’s as difficult for someone to learn English well as to learn any other language well c) the desire for everyone to be a bit more open minded and willing to learn another’s language provide infinite opportunities.

A lot of people I know write English beautifully but don’t speak it well. I am this way with French (minus the beautiful part :) ). There is an inherent fear in speaking a language, screwing up, and feel like you might be wasting someone else’s time with the slowness of the pace.

Anyway, I got a bit off track there but super glad to have discovered your post. If you can refer me to any Mandarin/Shanghai-ese/or Cantonese programming groups, web pages, resources, etc. I’d love to know about it. I for one, would love to learn our lingo in a new language!

Thanks again!

M

Leave a Comment