5 FOSS Development and FOSS Community
5 FOSS Development and FOSS Community
How to participate in
FLOSS survey: FOSS
developers on-line
survey, conducted from
that exist and describes some of the major Japan FOSS promotion forum's working group made a
detailed comment on FOSS distribution from
User communities
Growth of mutual support culture due to a lack of
vendor support
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 122
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
99
Free/Open--Source Software and the FOSS Community
whose members include over ten leading Findings of Support Infrastructure Working Group
Contents of report
describes GNU/Linux distributions and the GNU/Linux distributions: Main FOSS distribution route to
users
distribution business. The document also Summary and major points to consider for FOSS
deployment
explores the topic of user participation and Member corporations of Support Infrastructure WG:
NEC, NTT Comware, NTT Data, OSDL, NS Solutions,
Turbolinux, Nihon Unisys, Novell, Nomura Research
examines the respective roles of the devel- Institute, Hitachi, Fujitsu, Miracle Linux, Red Hat
2. support from the development community assuming that the community will
act out of its own responsibility.
100
FOSS Development and FOSS Community
Developer communities
Communities formed around developer groups
User communities
User communities formed for each application
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 124
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
101
Development Structure
dominated by major FOSS user groups. ja: Japan: OpenOffice.org Japan Users Group
The rest of the search reveals numerous Japan Zope User Group
cation of the prolific nature of FOSS user Analog, Snort, SELinux, Firebird, etc.
Development resources
Services and businesses that support FOSS
development
Project repositories
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 126
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
102
FOSS Development and FOSS Community
Cathedral model
GNU described as example of cathedral development, predating
Linux
Bazaar model
Linux development used as example of bazaar-style development
103
Development Structure
The number of core members often ranges Core members: Authority to change source code
individuals, sometimes exceeding 100 indi- Testers (advanced users): Test software and report bugs for
each release
viduals in some projects. Document authors: Create documents for general users and
developers
as project members. Regular developers Evangelism, PR (mailing list and/or Web site management)
are often FOSS users who provide feedback Supporters for offline activities
SourceForge.net
Rpmfind.net, others
104
FOSS Development and FOSS Community
5.2.4 SourceForge.net
SourceForge.net is a project repository op-
erated by OSTG, Inc., also known as the SourceForge.net
Open Source Technology Group. The site
Operated by OSTG,
Services
of its kind. SourceForge.net offers a di- Project Web site hosting
CVS repository
verse range of services including project Bug tracking system
Communication tools
105
Development Structure
the functions you want. However, the soft- Number of projects available online is nearly unlimited
ware may not necessarily meet all your needs, Debug or extend functionality of software
If you find a function that doesnt work or is missing
or there may be defects in the software. Take full advantage of released source code
106
FOSS Development and FOSS Community
To begin with, it is important to take an Important to provide objective data when reporting bugs
Reproducibility
objective stance when reporting about how Configuration, what you were doing, and what happened
software runs or describing problems with Code you contribute is not just for you
Observe certain courtesies
Include a description
the software you want to use, but if you Never send just your code (worst thing you can do)
107
Topics Related to FOSS Development
ternet, enabling round--the--clock develop- Requires proper assignment of roles based on contributions
to development
ment using various tools for communica- Share source code through the Internet
SourceForge.net lists 1,000,000 developers and 100,000
are required to ensure the smooth running Does not ensure quick completion
as well as the pros and cons of FOSS de- Some similarities are there between agile
development and FOSS development
Project forks
There might be cases that project is divided by two
opposing points of view about its direction
development
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 136
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
108
FOSS Development and FOSS Community
2. Small Releases
Continually plan in small units
4. Simple Design
5. Testing
Use metaphors for ease of understanding
7. Pair Programming
Actively review code
11.Whole Customer (originally: On-site Customer) Incorporate users into the team
3. Metaphor
4. Simple Design
5. Testing
7. Pair Programming
9. Continuous Integration
Four of the 12 practices are also emphasized in FOSS development, and are common-
ly practiced under agile development. These common practices are Small Releases
(no. 2), Collective Code Ownership (no. 8), Continuous Integration (no. 9) and
Coding Standards (no. 12).
In XP, Small Releases (no. 2) refers to short release cycles, while Collective Code
Ownership (no. 8) ensures that source code is accessible to every programmer. Con-
tinuous Integration (no. 9) means to continually test and keep the software running,
and Coding Standards (no. 12) means to program out of respect for coding con-
ventions. The following practices of XP are not entirely compatible with FOSS
109
Topics Related to FOSS Development
development: Planning Game (no. 1), Pair Programming (no. 7) and Sustainable
Pace (no. 10).
stable versions and development versions, Policy of fast and frequent releases
tive users. Under this system, bazaar mod- Addition of new features
110
FOSS Development and FOSS Community
ment of the software. This happened with Emacs -> Mule -> Emacs
GNU Emacs, which incorporated Mule (MUL- FOSS helps to maintain sustainability of
tilingual Enhancement to GNU Emacs) af- development but also allows project forks to occur
ter a branch and a subsequent period of x-1.0 x-1.1 x-1.2 x-1.3 x-2.0
y-1.0
x-2.1
y-1.1
111
Topics Related to FOSS Development
Unix technology without modification. The on low cost hardware (PC-compatible machines)
er software assets can also be used. Image processing, multimedia, science and technology
computing, etc.
The shortage of FOSS engineers is an indi- Support issue highly dependent on technical capabilities of user
company
both among user enterprises and for devel- Knowledge of how to collaborate with development community
still to come
112
FOSS Development and FOSS Community
the shift from volunteer--based development to business that best capitalizes on the
situation.
Lack of FOSS development experience is somewhat unavoidable due to FOSS devel-
opment model still being in its early stages. The situation is also due to the lack of
a clear method for collaboration between start--up companies and the development
community, which is still being worked out today. Certain issues relating to support
services need to be resolved at the present time, such as the issue of avoiding patent
infringement and finding a balance for securing intellectual property rights. These
issues are explored in later chapters.
5.4 Communication
FOSS software development revolves around developers. Consequently, communica-
tion between developers plays an extremely critical role in development. This sec-
tion explores the various methods of online
communication used by developers, and the Communication
pros and cons of each communication method.
Who develops software?
Off-line communication
Importance of off-line communication
Participating in conferences
Communicate actively via off-line meeting
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 142
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
113
Communication
provided for developers and users, and can E-mail exchange between developers
lists devoted to discussion of specific top- Message board on project Web site
Discussion tends to
board
This makes them unsuitable for in--depth IRC and other
discussion
114
FOSS Development and FOSS Community
Non-verbal communication
issues. Online communication involves many Difference between written and spoken words
unique expressions that subtly blend spo- Could be that social gatherings are most
important
ken and written language, using unique styles An Introduction to Free/Open-Source Software
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 145
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
Germany, and the Ottawa Linux Sympo- Libre Software Meeting/ Rencontres Mondiales du
Logiciel Libre (France)
FOSS conferences such as Debian confer- Many others such as DebConf, BSDCon, etc.
Participating in conferences and actively Build personal network, exchange information, etc.
115
FOSS Developers
ferences can also provide you with new knowledge through mutual information shar-
ing between developers and users. Furthermore, conferences can provide excellent
opportunities to engage in offline communication that can open up new possibilities.
well their reasons for getting involved in Developer background and Involvement
When FOSS developers get involved in their
FOSS development. The survey also ex- development?
Compensation
Do they receive money in return for their work?
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 147
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
116
FOSS Development and FOSS Community
JP Survey was carried out using question- Provides insight into conditions of FOSS developers
naires prepared in Japanese. The FLOSS-- Free/Libre/Open Source Software online survey
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 148
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
The FLOSS--JP Survey was conducted during a two--month period from Septem-
ber 1 to November 1, 2003, receiving a total of 547 valid responses. The sur-
vey includes questions about the level of
involvement in OSS and Free Software de- Free/Libre/Open Source Software
Japanese Developers Online Survey
velopment, and the initial impetus for get-
FLOSS-JP Survey
ting involved. Other questions provide in- Survey aimed squarely at FOSS developers
sight into developers’ personal views on Period: September 1, 2003 to November 1, 2003
receive compensation or sponsorship for their FOSS/FS experience, level of involvement, personal profile
development activities. Questions used in Income from FOSS/Free Software development, sponsorship
income, etc.
the FLOSS--JP Survey were designed to For more about the survey, visit the URL below:
117
FOSS Developers
master’s degree. Many of the respondents Many software engineers, programmers, students and
university instructors
118
FOSS Development and FOSS Community
question on a mailing list, and reporting a Released program I wrote myself: 36.5%
bug. Those who cite releasing their own Exchanged e-mail with author: 10.7%
The reasons for staying involved was posed Share knowledge and skills: 48.9%
the respondent’s own reasons and his or Realize new idea for software: 22.5%
Two-part question
119
FOSS Developers
agement and user support are each cited Write bug fixes: 36.0%
Packaging: 12.5%
Copyright © 2005,2006, Center of the International Cooperation for Computerization (CICC) All Rights Reserved.
An Introduction to Free/Open-Source Software Copyright © 2005,2006, Mitsubishi Research Institute, Inc. All Rights Reserved. 153
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
tional level, only 16.1% indicate that they Mainly active in global community: 16.1%
Almost 70% of developers feel that their Depends on enthusiasm and patience
120
FOSS Development and FOSS Community
5.5.8 Compensation
Just 26.8% of developers in the FLOSS--JP Survey indicate that they receive direct
income from FOSS--related activities, with less than half indicating that they have
profited indirectly from their FOSS activi-
ties. 9.6% of developers indicate that they Compensation
were hired or found a new job because of
Only 26.8% of developers receive direct income
data indicates that social recognition of Hired or found new job due to FOSS development
experience: 9.6%
· What are the characteristics of cathedral--style development? What are the char-
acteristics of bazaar--style development?
· Describe the different roles that FOSS project members can take on.
· What are the kinds of development resources that FOSS project need?
· Explain the steps that typically make up the process of getting involved in FOSS.
· What are important ways of conduct when getting involved in FOSS develop-
ment?
121
Chapter Review
· What are the most frequently used communications tools used among FOSS
developers?
· Compare the main communications tools used in FOSS development. What are
their pros and cons?
· How did FOSS developers typically get involved in FOSS development in the
past?
122