Obviously they are coming later than most developed countries, and many geeks cannot afford to spend a couple of years on personal projects that are not guaranteed to yield enough game or revenue, but it is growing and promising, especially in mobile and hardware.
That being said, on the ground it still feel very fragmented and insular. Some of the fundamentals of a healthy and self sustaining local culture are still missing.
I agree with both the OP and you, and I notice the same problems in Hong Kong as well with a varying degree, though I wouldn't put too much emphasis on "The Chinese Culture" (I don't even know what defines contemporary Chinese culture anymore, let alone the Chinese hacker subculture) but more on __information__ barrier.
Notice I didn't use the word language.
The internet in China, and media in general, as you know, is a tightly controlled and filtered walled garden. Kids in China don't grow up watching English language TV, movies and listening to music sung in English. English aren't taught until high school. Even if they have the talent, tenacity and resources to learn English really really well. They have nothing to talk about with people from the rest of world because they simply lack a common cultural context. This tremendously inhibits English learning in China.
With the lack of access to good language reference materials, very often the only way for the Chinese to learn anything tech is to read books, mags and blogs that translate technical materials from the outside world. While books translated are often in good quality as far as fidelity goes, magazines and blogs are not so much so. Even when they are translated properly, there are only so many people capable of translating them, and they only understand so much that they are translating. The number of materials available in Chinese is extremely limited, and when they are available in English, they are translated 6 months to years late. 6 months is a very long time in tech.
Education is also lacking. Very very very few secondary schools teach programming. Universities are better, and some do teach good fundamental theories. As far as programming languages though, I suppose even if you are educated in the US, you probably still have to catch up as soon as you graduate. I know, because I just graduated from the US a couple years ago.
Low pay is also a big problem. Engineers are generally treated like slightly upgraded factory workers. The only ones who stay are the ones who truly love what they are doing, but there are only so many of them around, so the chances for you to be mentored by an expert is low.
All the odds are against you for you ascending to a world-class programmer in China.
On the bright side, you do see a lot of semi-popular README files on Github and NPM that's written completely in Chinese, so it seems that they are figuring out things their own way, in their own language, sharing with they own people.
Now onto Hong Kong. HK is actually quite similar to China with the major exception that the GFW doesn't exist in HK and command in English is generally good enough to communicate with the outside world. Technical materials are readily available and are often read first hand. Education though, is the same story as China, though the problem where the brightest kids don't go into engineering and CS is even more pronounced in HK due to our economic structure. Low pay, suits throwing around charts etc. Same thing. Less fragmented tech groups in HK. We do talk to other tech groups and startup groups a lot, but not enough local participants just the same. Barcamp talks hover around the how to use Bootstrap and Drupal variety.
I'm obviously a Chinese and sorry for my English(language matters, you see? :)
It may not be for everyone, but you could dis the local market and work remotely for western companies. And finding oversea opportunities can be achieved by marketing yourself. One extremely clever way of doing that is through open-source contributions.
Also, there's plenty of opportunity to open-source stuff without making an effort. If you work as a software developer you've got plenty of by-products around, like little helpers or libraries you wrote and that aren't core to the business you're working for. Packaging those by-products with minimal documentation and throwing them in a GitHub account takes minimal effort.
I don't know about Chinese developers, but I feel the need to publish stuff when I'm NOT motivated by my job.
- The latest generation of Chinese tech companies is already very different from their established counterpart (Tencent, Baidu...) in almost every aspect, especially towards their employees.
- The GFW won't survive another decade in its current form. There is simply too much internal pressure.
I'm actually convinced that there is an incredible human potential in China, provided you give them the proper opportunities.
If your job sucks so much, consider joining us : we're recruiting folks to build stuff with node.js, NoSQL, Elastic Search and a gazillion other Open Source technologies.
I feel like the younger companies have developed more aggressive engineering cultures. Tudou, Dianping, Douban seem to embrace more their technical side, when Baidu for example has more of a business and sales spin to it.
In particular, I've noticed this difference through;
- The involvement of these newer companies in OSS, tech event s...
- The reaction of local geeks towards these companies: you'll find a lot of young Chinese programmers who think Taobao is a pretty awesome company when it comes to tech, Baidu not so much (I think most of them refer to it as a sales company...).
Here's what you may not know: There are a growing number of small to mid sized IT shops in China that need good talent, know how to treat them right and are willing to pay better. FIND THEM and pick yourself up and things will get better. Go to these hacker meetups and learn to mix and mingle.
All my employees work only 40 hours a week, with benefits and pay well beyond the norm. And I invest in their future by preparing their skill set for what's to come next. I'm not the only person in China doing this. I know the man that wrote this article here is very progressive and invests in his people.
7+ years ago J.Aaron Farr (ASF) talks about open source in China. I put his slide online and there are still views/mentions everyday... guess what? People have the same question, and there are not much good answers.
I do agree a lot with the blogger. Without Taobao and perhaps Douban, business propelled open source movement in China by Chinese is quite a shame to be mentioned.
Just try to put my own self as an example, in 2003-2007, I do quite a lot of breeding edge OSS project digging and delivered hundreds of patches ( mainly among asterisk, qmail, horde, IMEs, bbs-related stuff... ). Jumping into the business field, I'm damned to be a pure consumer... shameful. Most of the time clients stop me from releasing the code. But from my own perspective, its more like they believe in hasten broken code with cheap labour and obscurity is the only safe. It was hourlyWTF for me.
But I still do barcamps, still stressing open source is not a biz talk but hands-on the hack. The damn thing is I, as a foreigner/guest in cities out of China (Bangkok,Tokyo,SG etc), can freely challenge super facial "open source" demonstrations, but hardly do the same in HK/GZ, where I am the organizer. Just can't be the black face too often.
In open source we need open minds. The whole Asia thing is not quite open so far. People easily feel ashamed/transgressed for technical challenges. It wastes a lot of time to just be nice and "suggesting" the damn alternatives. It is not about China, but the whole Chinese culture circle including JP/KR/SG.
Taobao is good that their engineer are both courageous to show what they can do ( such as strong urge for node.js security patch. They show how to be better and keep pushing the U.S. to acknowledge. ), and humble enough to shame what have done wrong among the community.
But these are rare kind of people. I just hope to foster more open minded ones, and the spirit of hand-on hacks.
Again, it is not about how much open source projects you know or how is your level of skill. It is more about how openness jam into the corporate culture and the civic society at large.
A great article, but that sentence really made me cringe.
I'm in Chengdu these days at perhaps China's fastest growing software community...not the biggest yet, but its the up-and-coming place to do software. Its next to impossible to get Chinese devs to share and collaborate in ways we're used to in the U.S. Frustrating to see so much held back. The culture of not willing to informally present/collaborate in front of others, even small groups of three to five co-workers, is a huge barrier.
There are exceptions. I hosted a start-up weekend last year in Chengdu and was pleasantly surprised at how well around 60 people collaborated and presented.
Perhaps some enterprising Chinese could come up with a form of "rejection therapy" that some software devs in the West like to use to get into selling their wares. I'm not sure what this would look like. Anything that would get people to practice informal/ad-hoc openness to learn that you won't lose face, not in a friendly environ, of which there are quite a few these days.
For those not familiar with what most Chinese experienced from the moment they set foot in grade school and prepped for from birth: You're praised for getting the answer "right and fast". Not only does nothing else count but is possibly counted against you. Your classmates laugh at you for being wrong. Your teacher scolds you for not quickly regurgitating the reams of facts and quick calculations you are meant to memorize. You're measured by test scores only. This "institutional" problem is compounded after college where they find themselves in rigid work environs. Again, measured for getting correct exactly what you are told to do and only that.
In my recent struggles, I've had to "join the system". My Chengdu employees are only used to being dictated terms and measured. So I'm trying to hack the system. I put in this quarter's performance measurement worksheets that they get negative marks for not participating. Don't speak up and volunteer some idea when I ask a question, lose points, which equates to losing money. You don't lose points for being wrong, but for not speaking up at all. Just having quarterly performance worksheets is foreign to me. But its not to them. So I'm turning it on its head and measuring behavior I need them to exhibit.
What to do when you're a progressive software shop in China that wants your bright and good-hearted Chinese developers to accept "Your free, fly as high as like. Experiment. There is no punishment for getting the answer wrong! Collaborate! Iterate!"
Its changing. Mostly for the better. From 2000-2002, with my first dev shop in Shanghai, it took me two years to get my developers to come out of their shells. 10 years from now, this assessment will hopefully seem foreign to a 20-something Chinese programmer. But until then, it ain't easy.