Você está na página 1de 24

FOSS Development and FOSS Community

5 FOSS Development and FOSS Community


This chapter examines FOSS development and the functioning of the FOSS commu-
nity. A discussion of FOSS would not be complete without covering the subject of
community involvement. It is important to
understand how FOSS projects are imple- (5) FOSS Development and the FOSS
Community
mented and how you can get involved. De-
FOSS and the FOSS Communication

velopment projects are supported by com- community


FOSS is closely-linked to
FOSS projects are
supported by

munication between project members, so activities in the FOSS


community
communication
between development
participants

it is necessary to understand the commu- Development structure


FOSS developers
How FOSS project

nication methods that are used. The last works?

How to participate in
FLOSS survey: FOSS
developers on-line
survey, conducted from

part of this chapter describes the results FOSS projects?


2002 to 2004

Topics related to FOSS


of the FLOSS--JP FOSS developer survey development

conducted in 2003. 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. 121
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

5.1 Free/Open--Source Software and the FOSS Community


This section provides an overview of FOSS development and the FOSS commu-
nity. The Japan OSS Promotion Forum has published an overview of the distri-
bution routes for FOSS from the develop-
ment community to users. This section al- FOSS and the FOSS
community
so explores the types of FOSS communities
FOSS Distribution: Community to Users

that exist and describes some of the major Japan FOSS promotion forum's working group made a
detailed comment on FOSS distribution from

FOSS communities. communities to users

Types of FOSS communities


How developers and users gather to form their
community?

User communities
Growth of mutual support culture due to a lack of
vendor support

The next issue is to make a good relationship between


user community and developer community

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

5.1.1 FOSS Distribution: Community to Users


The Japan OSS Promotion Forum has published a paper titled “An Overview of Dis-
tribution Routes For OSS From the Development Community to Users.” The docu-
ment, published on February 10, 2005, was
authored by the Japan OSS Promotion Fo- FOSS Distribution: Development
Community to Users
rum’s Support Infrastructure Working Group,
Report prepared by WG of Japan FOSS Forum

whose members include over ten leading Findings of Support Infrastructure Working Group

Describes mechanism for FOSS distribution from

FOSS companies in Japan. The document development community to users

Published: February 10, 2005

Contents of report
describes GNU/Linux distributions and the GNU/Linux distributions: Main FOSS distribution route to
users

various organizations involved in the GNU/Linux Organizations central to GNU/Linux distributions

Development community; user support options and range of


support

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

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. 123
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

opment community as well as distributors,


independent software vendors (ISV), plat-
form vendors and system integrators, etc. FOSS distribution routes and support
responsibilities are also examined.
The document contains two major points to consider for FOSS deployment:

· names of core developers and their activities are published online

· users should deploy FOSS by choosing one of two levels of support:

1. support from vendors outside the development community, or

2. support from the development community assuming that the community will
act out of its own responsibility.

100
FOSS Development and FOSS Community

5.1.2 Types of FOSS Communities


The two major types of FOSS communities are developer communities and user
communities. Numerous local Linux User Groups (LUGs) have been formed for the
Linux user community.
Types of Communities

Developer communities
Communities formed around developer groups

Major FOSS projects form large-scale communities

Members take on various roles

User communities
User communities formed for each application

Cooperative role to address lack of information

Use mailing lists and message boards

Local Linux User Groups (LUGs)


Scores of LUGs across Japan

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.

5.1.2.1 Developer Communities


A developer community forms around a group of developers. Major FOSS projects
form large--scale communities that often involve a solid operating structure based
on the size of the community. Under this arrangement, members are responsible for
various roles including project management, documentation and PR, in addition to
developers that write actual source code.

5.1.2.2 User Communities (Local LUGs)


In contrast to developer communities that revolve around developers, user communi-
ties are often formed through the initiative of application users. The developer side
of a FOSS project typically does not release a lot of information. However, many
users will still want to use an excellent application, driving users to form cooperative
communities resembling mutual aid societies.
User communities make extensive use of mailing lists and message board systems.
Some hold regular meetings. Many Linux User Groups (LUGs) have been formed
with roots at the local level. Japan has scores of local LUGs that are active through-
out the country.

101
Development Structure

5.1.3 User Communities


Japan has a prolific number of user communities, due to a tendency to use in-
dependently localized versions of projects originally developed in English. User
communities in Japan are called User--kai
(User Groups), preceded by the name of User Communities
the FOSS. Prolific number of user groups, preceded by

A Google search conducted in June 2005 name of FOSS


e. g. Top 10 results of Google search using Japanese

using the keyword “User--kai” (rendered in keyword User-kai (June 2005):

Japan PHP User Group

Japan MySQL Users Group

Japanese) produced a list of top 10 results Samba Users Group Japan

Japan PostgreSQL Users Group

dominated by major FOSS user groups. ja: Japan: OpenOffice.org Japan Users Group

Japan Apache Users Group

The rest of the search reveals numerous Japan Zope User Group

Japan GNOME Users Group

links to FOSS user groups, giving an indi- Japan UNIX Society

Python Japan User's Group

Following results: User groups for KDE, Mathematica,

cation of the prolific nature of FOSS user Analog, Snort, SELinux, Firebird, etc.

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. 125
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

communities in Japan and their active lev-


el of involvement.

5.2 Development Structure


FOSS development is characterized by a style of development called bazaar--style de-
velopment. This section describes bazaar--style development and the roles of project
members involved in this style of develop-
ment. Other subjects explored include de- Development Structure
velopment resources and getting involved
Cathedral and Bazaar-style development

in projects. We also explore management Comparison between two types of development


method

of FOSS projects. Bazaar-style development was spotlighted starting


with great success of Linux

Roles of project members


Understanding the roles of various project members

Development resources
Services and businesses that support FOSS
development

Examples of the service

Project repositories

Getting involved in projects

Management of FOSS projects

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

5.2.1 Cathedral-- and Bazaar--Style Development


The comparison of cathedral--building development and bazaar--style development
was first examined in Eric Raymond’s 1997 essay, “The Cathedral and the Bazaar”.
Raymond used the term cathedral--build-
ing development to describe the develop- Cathedral and Bazaar-Style
Development
ment style used by GNU, which predates Eric Raymond’s 1997 essay The Cathedral and the Bazaar

the development of Linux. http://www.catb.org/~esr/writings/cathedral-bazaar/

Cathedral model
GNU described as example of cathedral development, predating
Linux

Note: Cathedral model is not synonymous with development style


of proprietary software

Only specific participants involved in development

No releases until specific results are achieved

Bazaar model
Linux development used as example of bazaar-style development

Open group of participants; respect for individuality; talented


coordinator manages flow of project

Releases any time in mid-development; basic notion of “fast


and frequent releases”

Bazaar-style development since used extensively for FOSS


development projects
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. 127
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

5.2.1.1 Cathedral Model


The cathedral model is a style of development in which only specific participants are
involved in development. The cathedral model is based on centralized, hierarchical
development, with no releases occurring until specific results are achieved. Raymond
used some GNU software as examples of the cathedral model of development. The
cathedral model should not be used as synonymous term for the development style
of proprietary software.

5.2.1.2 Bazaar Model


In the bazaar model, a large and open group of participants contributes to develop-
ment. Releases occur frequently in mid--development. Early Linux development is
a representative example of this development style. The bazaar--style development
process used for Linux made full use of the talents of Linus Torvalds as a coordinator.
Numerous FOSS projects have since been implemented using the bazaar model.

103
Development Structure

5.2.2 Roles of Project Members


In a large--scale FOSS project, members take on a variety of roles. The project lead-
er has the authority to make decisions about the direction of the project. A project
leader is in turn assisted by core members
who play a central role in development and Roles of Project Members
have the authority to change source code.
Project leader: Authority to direct project

The number of core members often ranges Core members: Authority to change source code

from a few individuals to several tens of Project participants


Regular developers: Provide feedback about new features,
enhancements and bug fixes

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

Regular developers also play important roles Other roles:


Resource development (non-programming)

as project members. Regular developers Evangelism, PR (mailing list and/or Web site management)

Financial supporters and providers of development resources

are often FOSS users who provide feedback Supporters for offline activities

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. 128
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

regarding new features as well as refine-


ments and bug fixes. Advanced users are
sometimes given the role of testers involved in testing software and providing bug
reports for each release. Document authors also play a critical role in development,
due to strong demand for documentation aimed at both users and developers.
In addition to programming and documentation, other important project members
include resource developers, PR members, financial supporters and sponsors of com-
munity activities.

5.2.3 Development Resources


Various companies and organizations provide project hosting services as resources for
FOSS development. These services can be actively and effectively used for devel-
opment. Project repositories include ser-
vices such as SourceForge.net, Savannah, Development Resources
BerliOS and the FSF/UNESCO Free Soft-
Project hosting services

ware Directory. Freshmeat.net is a popular Free/Open-source project repositories

SourceForge.net

directory site for new FOSS releases. BerliOS

FSF/UNESCO Free Software Directory

Programs are also available that provide savannah.gnu.org

Software directory sites, software search engines

public funding of FOSS development. In FreshMeat.net

Rpmfind.net, others

Japan, the Information--Technology Pro- Other development resources

motion Agency, Japan (IPA) operates the www.koders.com

Infrastructure Building Program for Open 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. 129
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

Source Software to support FOSS develop-


ment.

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,

hosts more than 100,000 Free/Open--Source Inc. (Open Source


Technology Group)

projects, making it the largest repository http://sourceforge.net

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

Web site hosting, CVS repository, a bug Others services

tracking system and communication tools Japanese version


SourceForge.jp

such as message boards. 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. 130
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

Open Source Development Network (OS-


DN) Japan operates a Japanese version called
SourceForge.jp. OSDN Japan is a unit of VA Linux Systems Japan.

5.2.5 BerliOS, FSF/UNESCO Free Software Directory, Savannah


BerliOS is a FOSS repository run mainly by a group of researchers from Germany’s
Fraunhofer Institute for Open Communication Systems, also called FOKUS. The
repository offers various services including
the DevCounter tool to promote interac- BerliOS, Free Software Directory

tion between developers, and the DocsWell


and SourceWell repositories for documents
and source code. Other services include
the SourceAgency information exchange for
FOSS project sponsors and developers.
The FSF/UNESCO Free Software Direc-
tory offers a catalog of Free Software. The
http://www.berlios.de/ http://directory.fsf.org/
directory is operated by the Free Software 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. 131
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

Foundation and UNESCO.


Savannah (http://savannah.gnu.org) is
the software repository for official GNU software.

105
Development Structure

5.2.6 Freshmeat.net, Rpmfind.net


Freshmeat.net is a directory site operated by OSTG, the operator of SourceForge.net.
The site features daily news updates about new FOSS projects. A listing on Fresh-
meat.net is a good way for developers to
advertise their FOSS project. The site is FreshMeat.net, Rpmfind.net
also highly effective for getting word out
about frequent releases that result from
the bazaar model of development.
Rpmfind.net is an effective search engine
for finding software distributed in the RPM
format. The search engine covers all RPM
packages available for GNU/Linux distri-
http://freshmeat.net/ http://rpmfind.net/
butions that utilize the RPM package man- 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. 132
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

agement tool. FOSS deployment can be


simplified by using Rpmfind.net to locate
an RPM that is suitable for your computer environment.

5.2.7 Getting Involved in Projects


This section describes the typical way that a user might get involved in a FOSS
project. The process is initiated by examining the deployment of FOSS that imple-
ments certain functions. Numerous FOSS
programs can be found online, making it Getting Involved in Projects
easy to obtain software that implements
Find software that implements functions you want

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 doesn’t work or is missing

or there may be defects in the software. Take full advantage of released source code

From feeding back your results to joining a

Since the source code is available, you can development team


Get involved to advance software science and the FOSS

take full advantage of FOSS by modifying community

Find existing projects through a project repository


the software through debugging or extend- Make active use of development resources

ing the functionality of the software. 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. 133
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

If your modifications turn out to be use-


ful, you should send the feedback to the
developer. Fixes for defects should be sent to the development project as soon as
they are found. Over the course of repeated feedback, users are frequently asked to
join a development team. Users are encouraged to get actively involved in FOSS
development, which also contributes to the advancement of software science and the
FOSS developer community.

106
FOSS Development and FOSS Community

5.2.8 Tips for Getting Involved


There are certain courtesies that need to
be observed when getting involved in an Tips for Getting Involved
existing community or development project.
Honest and factual reporting

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

Include error messages, logs

software runs or describing problems with Code you contribute is not just for you
Observe certain courtesies

software. It’s quite understandable that Adhere to coding rules

Include comments so others can read and understand your

you may be agitated, because of a flaw in code

Include a description
the software you want to use, but if you Never send just your code (worst thing you can do)

Use simple and concise sentences to describe your code

let this out on the development communi- 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. 134
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

ty, they will be less willing to help. If you


have a bug report, you need to provide de-
tails how to reproduce the bug and the configuration under which it happened. You
should also describe what you were doing at the time and what happened. It is best
to include error messages and log information from the software.
There are many precautions that you should take when sending in a patch or code
that extend the functionality of a program. The code you contribute to a develop-
ment project is not just for you, and should be written according to the project’s
coding rules. You should include comments for important sections of code, so that
others can read the code and understand why you are coding it in this specific way.
You also need to include a detailed description when submitting code. If you fail to
provide any description, the person on the receiving end will have no idea what to
do with your code. Use simple and concise sentences to describe the code you are
submitting.

107
Topics Related to FOSS Development

5.2.9 Project Management


Project management is fundamentally the same for FOSS as it is for general develop-
ment projects. Personal relationships among project members are critical to project
management. It is also important to treat
the activities of each project member with Project Management
respect.
Personal relationships are critical

Participation in FOSS development is open Worldwide development

Enables round-the-clock development: requires use of

to a worldwide developer base over the In- various communication tools

Progress of project accelerated by contributions from others

Requires communication skills

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

tion. Communication skills and flexibility projects

Accelerate development through frequent releases and quick


revisions

are required to ensure the smooth running Does not ensure quick completion

Ensure high quality and strong security through “eyes of

of a project. Advancement of a project many”

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. 135
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

also hinges on proper assignment of roles


based on each member’s contributions to
development.
Projects should be run with a focus on sharing source code over the Internet and
advancing development through frequent releases and quick revisions. Running a
project in this way enables you to capitalize on the features of FOSS development,
in which the “eyes of many” perform checks to enable high quality, secure software.

5.3 Topics Related to FOSS Development


This section examines several topics that relate to FOSS development, such as the
similarity of FOSS development methodologies and the agile development process
which is spotlighted recently. The system
of stable and development releases and the Topics Related to FOSS Development

problem of project forks are also examined,


Agile development and similar methodologies

as well as the pros and cons of FOSS de- Some similarities are there between agile
development and FOSS development

velopment. Stable versions and development versions


Two versions are simultaneously released: stable
version for average users and development version for
developer and progressive users

Project forks
There might be cases that project is divided by two
opposing points of view about its direction

Source code tree is branched at some point

Advantages and Downsides of FOSS

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

5.3.1 Agile Development and Similar Methodologies


Agile development is a software development methodology that emphasizes flex-
ibility in the software development process. As its name suggests, agile devel-
opment stresses realistic development that
is responsive to changes that arise during Agile Development and Similar
Methodologies
software development.
Twelve core practices of Extreme Programming (XP):

The Extreme Programming (XP) method 1. Planning Game

2. Small Releases
Continually plan in small units

Short release cycles

is a leading example of agile development. 3. Metaphor

4. Simple Design

5. Testing
Use metaphors for ease of understanding

Keep the design simple

Prioritize testing in program development

The development method of XP is expressed 6. Design Improvement (originally: Refactoring)

7. Pair Programming
Actively review code

Programmers write code in pairs

8. Collective Code Ownership Make all codes accessible to every programmer

in the following 12 practices: 9. Continuous Integration

10.Sustainable Pace (originally: 40-hour Week)


Continually test and keep the software running

Overwork leads to lower productivity

11.Whole Customer (originally: On-site Customer) Incorporate users into the team

12.Coding Standards Program out of respect for coding conventions

1. Planning Game 2, 8, 9, 12 are also important in FOSS development


However, No. 1, 3, 7 and 10 are difficult to implement under
FOSS development

2. Small Releases 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.
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.
137

3. Metaphor

4. Simple Design

5. Testing

6. Design Improvement (originally: Refactoring)

7. Pair Programming

8. Collective Code Ownership

9. Continuous Integration

10. Sustainable Pace (originally: 40--hour Week)

11. Whole Customer (originally: On--site Customer)

12. Coding Standards

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).

5.3.2 Stable Versions and Development Versions


The bazaar model of development is based
on a policy of fast and frequent releases. Stable Versions and Development
Versions
Many projects separate their releases into Bazaar model

stable versions and development versions, Policy of fast and frequent releases

Conservative users inconvenienced by trial-and-error

since a trial--and--error approach to new approach to new features

Releases separated into stable versions and


development versions
features can be inconvenient to conserva- Development versions: Source code heavily modified

For developers and cutting-edge users

tive users. Under this system, bazaar mod- Addition of new features

Odd version numbers: 1.1->1.3->1.5…

el development focuses on the release of Stable versions: Changes kept to minimum

For general users

development versions. Incorporates bug fixes, security patches, etc.

Well-received features sometimes back-ported from


development versions without waiting for major update

Development versions are aimed at devel- Even version numbers: 1.0->1.2->1.4…

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. 138
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

opers and advanced users. These releases


incorporate new features at an early stage.
Sometimes the source code is heavily modified and unstable. In contrast, stable
versions are released for general users and incorporate minimal changes. Stable ver-
sions often focus on refinements that mainly consist of bug fixes and security patches.
Features that are well received in development versions are sometimes incorporated
into stable versions, pending stabilization of the feature.
Stable versions and development versions are sometimes distinguished by the version
number used. FOSS projects frequently use odd version numbers for development
versions and even numbers for stable versions, or the opposite. Linux, for example,
uses even numbers (2.0, 2.2, 2.4) for stable versions and odd numbers (2.1, 2.3, 2.5)
for development versions.

110
FOSS Development and FOSS Community

5.3.3 Project Forks


On rare occasions, a FOSS development project will branch off for various reasons,
resulting in a project fork. Examples of major project forks include X.org, which
branched off from the XFree86 project, and
Xemacs that branched off from Emacs. Project Forks
Sometimes a project will branch and gain
On rare occasions, projects can branch off

new features, before merging again with Examples of project forks

XFree86 -> X.Org

the original project to continue develop- Emacs -> XEmacs

Sometimes projects fork and merge again

ment of the software. This happened with Emacs -> Mule -> Emacs

GCC -> EGCS (Experimental/Enhanced GNU Compiler


System) -> GCC

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

separate development. Another example 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. 139
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

is gcc, which was branched off by Cygnus


Solutions into a separate development project
called EGCS (Experimental/Enhanced GNU Compiler System) around the time of
gcc 2.8. EGCS was later reborn as gcc 2.95.
Project forks are an unavoidable aspect of FOSS development projects, to the ex-
tent that FOSS projects are managed by a collective of developers. A fork should be
regarded as a means of last resort as it will typically weaken the projects consider-
ably. The sustainability of FOSS development is assured through the fundamental
FOSS principles of freedom of modification and redistribution, but a lively project
needs contributors. There is no way to prohibit a project fork. FOSS helps to main-
tain the sustainability of development even if different opinions within the project’s
development community lead to forks.

111
Topics Related to FOSS Development

5.3.4 Advantages of Free/Open--Source Development


The fundamental advantages of conducting software development on a FOSS plat-
form are the low cost and the inclusion of source code. One advantage of a plat-
form like GNU/Linux is its high scalabil-
ity to support everything from embedded Advantages of Free/Open-Source
Development
to mainframe platforms. Many FOSS pro-
Fundamental advantages of program

grams run on Unix--like platforms for IBM development on FOSS platforms


Low cost (although Free Software does not mean free of

PC--compatible machines, which is a ma- charge)

Comes with source code

High scalability (everything from embedded to mainframe)


jor advantage in terms of using existing Use existing Unix technology
Ability to use Unix technology and existing software assets

Unix technology without modification. The on low cost hardware (PC-compatible machines)

Increasing availability of development tools for

extensive catalog of GNU software and oth- various applications


Mission critical fields

er software assets can also be used. Image processing, multimedia, science and technology
computing, etc.

Development tools are increasingly avail- Embedded applications

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. 140
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

able today for applications ranging from


mission critical fields and business appli-
cations to image processing, multimedia, science and technology computing, and
embedded applications. An environment that enables developers to take advantage
of the benefits of FOSS for all types of applications is starting to emerge.

5.3.5 Risks of Free/Open--Source Development


In addition to its advantages, there are certain downsides of FOSS development.
The major downsides are as follows:

· Shortage of FOSS engineers Risks of Free/Open-Source


Development

· Lack of guarantees and support Shortage of FOSS engineers


Demand outstripping supply (both for user enterprises and system
integrators)

Urgent need for human resources development programs, training

· Lack of development experience environments, training materials and university education

Retraining of Unix engineers offers shortcut

Lack of guarantees and support


Shift needed from volunteer development to enterprise support

The shortage of FOSS engineers is an indi- Support issue highly dependent on technical capabilities of user
company

cation that demand is outstripping supply Lack of experience


Newness of FOSS development model

both among user enterprises and for devel- Knowledge of how to collaborate with development community
still to come

Challenge of finding balance for securing intellectual property

opment. Human resources development, rights


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. 141
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

training environments, training materials


and university education are urgently needed to address the shortage of FOSS en-
gineers. As a shortcut, existing Unix engineers can be retrained to address the
shortage of GNU/Linux engineers.
The support issue indicates that there is currently room for the emergence of compa-
nies that can provide support services. Presently, there is an urgent need to examine

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?

The importance of offline communication Communication is critically important

is also explored, including the benefits of Communication tools


On-line communication utilizing various tools

getting actively involved in conferences. What kind of tools are used?

Pros and cons of on-line communication tools


Evaluating the pros-and-cons of each tools

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

5.4.1 Communication Tools


Online communication for FOSS development is frequently conducted through e--
mail, mailing lists and message boards, as well as IRC (Internet Relay Chat) and
other chat systems. Wikis and blogs are
also used. E--mail tends to be most widely Communication Tools
used. Separate mailing lists are sometimes
Methods of online communication

provided for developers and users, and can E-mail exchange between developers

Mailing lists administered by project

be supplemented with additional mailing Developer mailing list: xxx-devel@hoge.fuga.org

User mailing list: yyy-uers@foo.bar.baz

lists devoted to discussion of specific top- Message board on project Web site

IRC (Internet Relay Chat) and other chat systems

ics. Conventional telephone and fax com- Wiki, developer blogs

Conventional tools to supplement online

munication is also used to supplement on- communication


Telephone, fax, etc.

line communication. English is the universal language of communication


Overall communication skills more important than English

Except for communication taking place lo- ability

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. 143
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

cally (in non--English speaking countries),


English is the main language for global com-
munication. Advanced English skills are not required, due to a stronger emphasis
on overall communication skills.

5.4.2 Pros and Cons of Online Communication Tools


The chart at right shows the respective pros and cons of using e--mail, mailing lists,
message boards, IRC and other chat systems, Wikis and blogs. E--mail and mail-
ing lists are relatively conservative meth-
ods of communication and are familiar to Online Communication Methods: Pros
and Cons
everyone. Message boards and chat sys-
Pros Cons
tems are accessible tools for carrying out Familiar user interface Not suited to discussion
E-mail
between multiple persons
discussions in real time, but there is a ten- Familiar user interface Redundancy from copies
Mailing list

dency for discussions to become derailed. Message Accessible, shows flow of


of all messages

Discussion tends to
board
This makes them unsuitable for in--depth IRC and other
discussion

Allows for instantaneous


become derailed

Not suited to in-depth


chat systems discussion discussions
discussion. Wiki
Emphasis on Comparatively static
documentation medium
Wikis and blogs are relatively static medi- Blog
Blogger can assert own Not designed for
opinions discussion
ums for communication, with an empha- 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. 144
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

sis on documentation. It is important to


choose the appropriate method of commu-
nication for each situation, for the sake of effective development and project man-
agement. The choice of communication method should take into account the level
of discussion, views of participants and the style of project management.

114
FOSS Development and FOSS Community

5.4.3 Offline Communication


The wide availability of tools for online
communication means that it is important Offline Communication
to select the best tool for each situation.
Power of offline communication

There are also limits to online communi- Significance of face-to-face communication

Non-verbal communication

cation. Body and hand language

Expression, tone of voice, general mood, etc

Sometimes accelerates development through kinship


Online communication can often result in and understanding personalities of others

Limits of online communication felt during:


problems such as flame wars or netiquette Eruption of flame wars

Observance or non-observance of netiquette

issues. Online communication involves many Difference between written and spoken words

Difficult to convey subtle nuances through writing

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.

of writing to convey ideas. These elements


make it extremely difficult to convey sub-
tle nuance to another person through online communication. The short history of
online communication and its shifting culture are additional factors that make it
difficult to communicate solely through online communication.
Occasionally meeting face--to--face and communicating offline can hold great signif-
icance. Non--verbal communication expressed through body and hand language, as
well as through facial expressions and general mood, can be powerful assets in terms
of understanding the views of developers. Non--verbal communication also conveys
information about the background of each individual. Offline communication often
helps development to proceed more smoothly.

5.4.4 Participating in Conferences


Participation in international FOSS conferences provides a good opportunity for de-
velopers located around the globe to participate in offline communication. Numerous
conferences are held throughout the year.
Major FOSS conferences include the Libre Participating in Conferences
Software Meeting in France, LinuxTag in
FOSS-related global conferences

Germany, and the Ottawa Linux Sympo- Libre Software Meeting/ Rencontres Mondiales du
Logiciel Libre (France)

sium in Canada. There are many other LinuxTag (Germany)

Ottawa Linux Symposium (Canada)

FOSS conferences such as Debian confer- Many others such as DebConf, BSDCon, etc.

Actively interact with others

ences and scientific conferences sponsored Advantages

Get word out about own project

by IT associations. Get advice about software design and implementation

Could lead to cooperation with developer teams

Mutual exchange between developers and users

Participating in conferences and actively Build personal network, exchange information, etc.

meeting other people involved in FOSS of- 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. 146
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

fers many advantages. In addition to get-


ting word out about your project, it pro-
vides an opportunity to get advice about software design and implementation. Con-

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.

5.5 FOSS Developers


This section examines the profile of engineers involved in the FOSS development
community. The Free/Libre/Open--Source Software Japanese Developers Online
Survey or FLOSS--JP Survey was conduct-
ed in 2003 and provides insight into the FOSS Developers
profile of FOSS developers in Japan, as FLOSS Surveys

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?

plores the type of contributions made by Reason for getting/staying involved


What is the reason to participate in FOSS activities?

developers, their level of involvement and Type of involvement


What is their involvement in FOSS projects?

whether they receive income from FOSS Global involvement

development activities. Realities that global communications on FOSS activities

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.

5.5.1 FLOSS Surveys


A FLOSS survey is an online survey designed to provide insight into the conditions
of FOSS developers. The original Free/Libre and Open Source Software: Survey and
Study or FLOSS Survey was conducted in Europe in 2002. The survey was carried
out by the Maastricht Economic Research Institute on Innovation and Technology
(MERIT).
The European survey was followed by the FLOSS--US Survey implemented in the
first half of 2003. The US survey was conducted by the Stanford Institute for
Economic Policy Research (SIEPR). The FLOSS--JP and FLOSS--ASIA studies were
implemented in Japan and other parts of Asia from 2003 to 2004. Both studies were
commissioned by the Japanese Ministry of Economy, Trade and Industry (METI)
and carried out by Mitsubishi Research Institute, Inc. or MRI.

116
FOSS Development and FOSS Community

5.5.2 Free/Libre/Open--Source Software Japanese Developers Online


Survey
The FLOSS--JP Survey was created due to extremely low levels of Japanese partic-
ipation in earlier FLOSS and FLOSS--US Surveys. Lack of Japanese participation
in the European and US surveys is blamed
on the language barrier, since both surveys FLOSS Surveys
were conducted in English. The FLOSS--
What is a FLOSS survey?

JP Survey was carried out using question- Provides insight into conditions of FOSS developers

Analysis-based online survey

naires prepared in Japanese. The FLOSS-- Free/Libre/Open Source Software online survey

ASIA Survey that followed was implement- FLOSS Survey (2002)

Conducted by Maastricht Economic Research Institute on


Innovation and Technology (MERIT)

ed using paper questionnaires prepared in FLOSS-US Survey (2003)

Conducted by Stanford Institute for Economic Policy

four languages: Chinese, Korean, Thai and Research (SIEPR)

FLOSS-JP Survey, FLOSS-ASIA Survey (2003-2004)

English. Conducted by Mitsubishi Research Institute, Inc. (MRI)

Commissioned by Japanese Ministry of Economy, Trade and


Industry (METI)

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

Online survey and questionnaires distributed at conferences

Valid responses: 547

OSS and Free Software, and whether they Survey content

receive compensation or sponsorship for their FOSS/FS experience, level of involvement, personal profile

Initial impetus for getting involved in FOSS/FS development,


reasons for staying involved, personal views

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:

enable comparison with data from the FLOSS http://FOSS.mri.co.jp/floss-jp/

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. 149
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

and FLOSS--US Surveys, but are not iden-


tical and have been altered to fit circum-
stances in Japan.

117
FOSS Developers

5.5.3 Developer Background and Involvement


This section explores the personal profiles of developers, as observed in the FLOSS--
JP Survey. Nearly all respondents are males with the median age in the early thir-
ties, which is several years higher than in
the FLOSS and FLOSS--US surveys. Re- Developer Background and
Involvement
spondents tend to be highly educated, with
Personal background

a majority possessing an undergraduate or Late 20s/early 30s, mostly male

Majority possess undergraduate or master’s degree

master’s degree. Many of the respondents Many software engineers, programmers, students and
university instructors

are software engineers, programmers, stu- Position on FOSS or Free Software


Identify with FOSS: 43.7%

dents or university instructors. Identify with Free Software: 26.7%

Do not care: 29.6%

When asked about their position on Open Time spent on development


(per week)
Source and Free Software, respondents tend Two-thirds spend 5 hours or less

to identify with OSS, unlike the European 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. 150
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

FLOSS Survey where many respondents


identify with Free Software. About two--
thirds of respondents in the FLOSS--JP Survey spend five hours or less on develop-
ment each week.

118
FOSS Development and FOSS Community

5.5.4 Reason for Getting Involved


More than one--third of respondents in the FLOSS--JP Survey indicate that they
got involved in a project as a result of releasing their own software program. The
next most popular reasons are, in descend-
ing order: sending in a patch, exchanging Reason for Getting Involved
e--mail with the author, replying to a user’s
Initial reason for getting involved in project

question on a mailing list, and reporting a Released program I wrote myself: 36.5%

Sent in patch: 16.2%

bug. Those who cite releasing their own Exchanged e-mail with author: 10.7%

Replied to user’s question on mailing list: 10.5%

program or writing their own patch ac- Reported bug: 10.5%

count for more than half of all respondents.


This data indicates that respondents to the
FLOSS--JP Survey are primarily made up
of program developers. 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. 151
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

5.5.5 Reasons for Staying Involved


Nearly two--thirds of respondents indicate that their motivation for staying involved
in development is to learn new skills, while nearly half the respondents cite a desire
to share their own knowledge and skills.
This data clearly indicates that developers Reasons for Staying Involved
possess an attitude of sharing FOSS infor-
Own motivation for continued development

mation. (multiple responses allowed)


Learn new skills: 64.9%

The reasons for staying involved was posed Share knowledge and skills: 48.9%

Solve problems not possible with proprietary software:

as a two--part question, inquiring about 29.2%

Improve FOSS/FS from other developers: 24.9%

the respondent’s own reasons and his or Realize new idea for software: 22.5%

Two-part question

her opinion of why others are involved. The Own motivation

Opinion on motivation of others

two sets of data are similar. However, the


desire to learn new skills is the leading rea- 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. 152
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

son for personally staying involved, but is


cited less frequently for the motivation of
others. Responses that are more often cited as a motivation for others include
solving problems not possible with proprietary software and the view that software
should not be a proprietary product. Interestingly, the data suggests a trend for
developers to feel that others are motivated for idealistic reasons.

119
FOSS Developers

5.5.6 Type of Involvement


More than half of all respondents in the FLOSS--JP Survey indicate that they are
involved in developing main functions. One--third of respondents are involved in
writing bug fixes and patches. The next
most common activities are testing, doc- Type of Involvement
ument translation and document prepara-
Main types of involvement (multiple responses

tion. Packaging, localization, project man- allowed)


Develop main functions: 52.1%

agement and user support are each cited Write bug fixes: 36.0%

Write patches: 33.6%

by about 10% of respondents. The data Testing: 20.9%

Document translation: 14.3%

indicates that respondents are involved in Document preparation: 14.0%

Packaging: 12.5%

many aspects of software development. Localization: 10.8%

Project management: 10.2%

User support: 9.8%

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.

5.5.7 Global Involvement


Interest in FOSS development tends to focus on the global nature of FOSS devel-
opment over the Internet. However, the FLOSS--JP Survey finds that 62.3% of
Japanese developers are mainly active in
the Japanese development community. Al- Global Involvement
though the remaining 37.7% of developers
37.7% involved in global development

indicate some involvement at the interna- community


Mainly active in Japanese community: 62.3%

tional level, only 16.1% indicate that they Mainly active in global community: 16.1%

Involved in both: 21.6%

are primarily involved in the global devel- English ability


68.3% feel own ability is limited
opment community. English ability and level of activity

Not necessarily related

Almost 70% of developers feel that their Depends on enthusiasm and patience

English communication skills are limited.


However, the survey shows no relationship 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. 154
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

between the level of FOSS involvement and


English ability. This indicates that En-
glish ability is not a prerequisite for involvement, and is dependent on the enthusiasm
and patience of the developer.

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

their FOSS development experience. This from FOSS activities


41.2% have profited indirectly from FOSS activities

data indicates that social recognition of Hired or found new job due to FOSS development
experience: 9.6%

FOSS development experience is starting Data indicating social recognition as technical


experience

Awareness of involvement in FOSS


to grow. development
School/employer not aware of own involvement in

Just over 40% of developers indicate that FOSS: 40.8%

Preference: Desire to be involved in FOSS

their school or employer is unaware of their development as part of work

involvement of FOSS development. Many 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. 155
Copyright © 2008, University of Puerto Rico at Mayaguez. All Rights Reserved.

developers indicate that they wish to be


involved in FOSS development as part of
their work, which suggests that the situation could be improved.

5.6 Chapter Review


· What are the characteristics of user comunities? What are the characteristics of
developer communities?

· What are the characteristics of cathedral--style development? What are the char-
acteristics of bazaar--style development?

· Discuss the relation between proprietary software, FOSS, cathedral--style devel-


opment, and 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?

· What are the characteristics of sourceforge.net, berlios.de, and freshmeat.net?

· 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?

· Discuss key aspects to project management in FOSS projects.

· What are the characteristics of agile development?

121
Chapter Review

· Which 12 practices make up extreme programming?

· Which of these can easily be practiced in the context of FOSS development?

· Which of these tend to be less suitable for FOSS development?

· Explain the motivation of separating the development of a FOSS project into


stable and development versions.

· What is a project fork ? Why should it be avoided if at all possible?

· 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 relevant is offline communication to FOSS development?

· How did FOSS developers typically get involved in FOSS development in the
past?

· What were typical reasons for staying involved in FOSS development?

· How many developers directly earned an income from FOSS?

122

Você também pode gostar