Presentation on theme: "Open Source Globalization and Local Community Li Yang Freescale Semiconductor for Linux.conf.au, Mel8ourne January 2008."— Presentation transcript:
Open Source Globalization and Local Community Li Yang Freescale Semiconductor for Linux.conf.au, Mel8ourne January 2008
Agenda Why is globalization important What obstacles are we facing What can we do about it How can local community help What are we doing in China
Agenda Why is globalization important?
Brief introduction of FOSS FOSS (Free/Open Source Software) Emerged from 1970s Represented by Unix Gnu Linux Through 30 years of experience, development model has been proved viable
Growth of FOSS 50+ open source licenses (OSI) GPL BSD Mozilla … Thousands of open source projects
How to define a successful project Popularity The number of users. Commercial software usually use profit here Participation The number of developers. More work can be done. More ideas can be implemented. The two factors affect each other More users -> more developers More developers -> better quality -> more users
Where to recruit new developers? Internet users are potential FOSS users FOSS users are potential developers Internet users are potential developers
Internet Users regional distribution Other regions (Brazil, China, India, Russia) are growing even faster than US and EU Data from ITU for 2006
Kernel contribution Linux Kernel Summit 2007 attendees
Regional sourceforge developers
Findings US and EU are the main base of open source developers Australia has the highest participation rate US and AU are more active in kernel, EU is more active in other FOSS Other regions are the largest potential user base and developer base GO GLOBAL
Agenda What obstacles are we facing?
Why this happens? There are obstacles for these regions to participate Use China as example to analyze some obstacles Other countries should be similar
Language Different official languages English is official for FOSS projects English is not official for most people in other regions The situation won’t change The world is growing to be more diverse, tradition is more valued. English is not likely to be much more popular in the future. Community should live with it, and try to address this problem
Language (cont.) Language family People from some countries may find English not so hard to learn Their native language is also in Indo-European family East Asia, middle east, north Africa may find English harder to learn than others
Language (China) English is being taught Reading is ok for most educated Written and spoken English is relatively poor Language can not be learnt well without language environment to practice often
Language (China) cont. Most people can’t use English freely Read/write tends to be much slower Easier to misapprehend Can’t express idea clearly People are being afraid to communicate in English
Cultural Any other country could be different, even different parts of one country could be different List a few differences between China and FOSS community (not all) Communication: apprehension towards criticism Chinese are used to tactful remarks, likely to treat direct criticism as insult. While direct criticism are quite common in patch review process. Management style: Organizational behaviors Chinese are used to and are more effective in close-knit team. Community likes loosely-knit team.
Geographical Time difference 8~12 hours from China to US and EU IRC Hard to use. Uneasy to find common time. The most effective way, but normally takes a day for each round of a discussion Australia and China, better match to cooperate Face to face Not possible generally
Economical Developing countries Less education Without good IT industry Spend more time and energy to work for a living, less time and energy for hobbies
Political Government support Financial Policy Censorship (China) Sourceforge.net (ok now) Freebsd.org (ok now) Wikipedia.org
Summary of problems Language, culture and geographic problems make communication much difficult, which is the biggest challenge Political problems can be addressed but not easy Need to negotiate as strong organization Geographical and economical problems can’t be addressed. We should make up by other means
Agenda What can we do?
Is this a new problem? Look at multi-national enterprises Local marketing and sales Local R&D centers to attract talents Local PR department to deal with government relationship Establish aligned local communities to provide localized help
Unaligned local community
Good for users (LUGs) Not enough for developers Interactive Shared goals
Aligned local developer community
Mission Recruit and sustain local developers Align local developers with global community
The way it works Global Community developers Local developers Local developers Local developers
Benefit Developer overlap between global and local community, form strong connection Share the same goal and standard Can help other local developers to communicate with the global community Bridge obstacles for normal local developers
How to attract local user Advertisement, PR Localized promotion Features meet expectation Address local requirements China: QQ (local IM which is massively used), dictionary, more fonts
How to attract local user (cont.) Easy to use Localized UI Localized user manuals/HOWTOs Fashionable Local community and User Groups
Local communities Distro’s are doing well as they have local offices The same thing can also be done with local community Distro’s are also making use of local community
How about Developers FLOSS project EU sponsored research project Survey and study about FOSS development
Motivation for developers Career (more important for developing countries) Learn and develop new skills Get better job opportunity Fun (social) Share knowledge and skills Participate in a new form of cooperation Participate in OS/FS scene
Local developer community helps Learn and develop new skills Easier to get help from local community without communication obstacles. Especially for beginners. Get better job opportunity Share local job opportunities Help more companies to use Linux, increase Linux job.
Local developer community helps Without any communication problem and culture differences in the local community to Share knowledge and skills Participate in a new form of cooperation Participate in OS/FS scene More local social activities will make it more fun to be a developer
De-motivating factors Too hard to get started Localized introduction documents Local mentor Too hard to interact with the community Not a problem within local community
FOSS development process Use Report BugRequest Feature Fix BugAdd Feature Integrate Maintainer Project Leader Developers Users
Process problem Project grows larger, process becomes more complex (Linux kernel) Each steps in the process are deactivated by the obstacles Makes it harder for developer to involve
Problem in global situation Use Report BugRequest Feature Fix BugAdd Feature Integrate obstacles
How to help Localize documentation on process and policy Provide help about the process in local community Help to negotiate by experienced developer Do translation or relay if really needed
With help of Local community Use Report BugRequest Feature Fix BugAdd Feature Integrate Local Community
Agenda What are we doing in China?
Zh-kernel.org community A Chinese language and culture oriented Linux kernel development community
General goals Promote contribution to Linux and make Linux better to use Reduce the negative effect of the language and culture differences for Chinese kernel developers to participate Encourage Chinese developers to help each other Attract and sustain more kernel developers in China Improve overall technical skills on Linux related development in China
Characteristic Focus more on development and contribution Improve communication and tighten connection with English community rather than being isolated Provide help to address obstacles in every stage of the development process
Mailing List Address: Subscribe: Subscribers: More than 700 Chinese kernel developers and enthusiasts. Including most of active Chinese kernel developers like: Herbert Xu, Bryan Wu…
Mailing List Encourage to use Chinese language in discussion between Chinese developers to be more focus on the problem itself. Support to use English when discuss with non-Chinese people or mailing list. Can be cc’ed when English community need to get the attention of Chinese developers.
Mailing List Main communication approach for local communities It provides: Help on technical issues Help on process issues Help on communication issues with English community Local kernel related job opportunities
Local projects Host local projects which are only participated by Chinese Linux kernel documentation localization Finished most policy and process documents Linux kernel Kconfig localization In planning
Foreign project helper Introduce and promote English project/subsystem in Chinese. Provide Chinese technical reviews and documentation Name local champions to be mentor of local new developers Help to integrate the result back into global community
Wiki pages in Chinese A platform to publish and share kernel development information, including: Translated documents, Chinese books and articles Local development activities Host local projects/sub-projects Introduction to non-local projects
Achievement More people from zh-kernel community are contributing to Linux kernel Starting from easy tasks like code cleanup, and bug fix Good beginning More patches from Chinese developers are submitted during development. Many local developers got technical help on Linux projects
Problems Still in the process of experiment, need to revise according to feedbacks Need more support and encouragement from English community Need more participation from Chinese developers
Real global participation is very important to FOSS We FOSS community should initiatively do things to attract people from the other regions rather than waiting for them to join Establishing local communities is a good way to try