Open Source Software Communities - Lessons Learnt
Transcript of Open Source Software Communities - Lessons Learnt
Open Source Software Communities -
Lessons Learnt
Imed Hammouda, adjunct professor
Alexander Lokhman, researcher
Tampere University of Technology
1
25.2.2011
Open Source vs. Free Software
�Free software (1983) is:� A philosophy
� A social movement
� FSF
� “Stallmanism”
�Open source (1998) is:� A business model
� A development methodology
� OSI
� “Raymondism”
�Both approaches share a common vision on access to source code
�Loads of ready-made systems available in the Internet for various purposes in source form
2
25.2.2011
Open Source – The Community
� Volunteer developers
� Non-profit organization
� Sponsors
� Commercial enterprises
� Different types of communities (members)
� Volunteer
• Ideology, freedom, sharing
� Company-based
• Business, funded developers
� Mixed
� Different types of communities (organization)
� Linux: Project centric
� MySQL: Business centric
� Eclipse: Foundation centric
Onion Structure of FLOSS Communities
LinusLieutenantsMaintainers
CodersJanitors
Testers
ReadersPassive user
Linux kernel
Project leaderCore member
Active developerPeripheral developer
Bug fixerBug reporter
ReaderPassive user
Onion structure
Becoming a Contributor - Eclipse
�New committers are voted in by the existing committers on a project.
�Based on meritocracy: Prove your abilities before you can become a committer.� Building a good reputation with the existing committers
� Demonstrating skills to the existing team
� Asking a current project committer to sponsor you as a committer
� Going through an election process, defined in each top-level project's charter
�Best way to start contributing to Eclipse:� Well-formed bug reports
� Feature requests
� Code enhancements
Community Building: Dimensions
�Community� Existing communities
� Community spirit
� Community support
�Process� Patch handling
� Governance model
� Release management
� Infrastructure� Version control
� Bug tracking
� Documentation
�Software� Code standards
� Best practices
� Quality attributes
�Marketing� Target communities
� Marketing models
� Viral marketing
�Legality� Licensing type and scheme
� Legal clearance
� Trademarks
Community Building: Intended Community
�Community type:
� Company based
� Volunteer
� Mixed
�Core group:
� Closed
� Open
�Structure:
� Independent community
� Part of an existing community
� An ecosystem of related smaller communities
Community Building: Stakeholders
Core
Open source communities &
developersFAO and pilot countries
Interested parties
25.2.2011
�Geo-related projects,
initiatives and foundations
� OSGeo (osgeo.org)
� gvSIG (gvsig.org)
� GeoCommunity
(geocomm.com)
� FOSSGIS e.V. (fossgis.de)
� GeoNetwork
(geonetwork-opensource.org)
� 52 North (52north.org)
� Quantum GIS Project
(qgis.org)
� OpenJump (openjump.org)
�Digital archiving and
document management
� DSpace (dspace.org)
� FEDORA
(fedora-commons.org)
� Eprints (eprints.org)
� Microsoft Zentity
(research.microsoft.com/en-
us/projects/zentity)
� Omeka (omeka.org)
� Greenstone (greenstone.org)
� Invenio (invenio-software.org)
� DPSP (dpsp.sourceforge.net)
Related Open Source Communities
�Geospatial components and
libraries
� PostGIS (postgis.org)
� GeoNode (geonode.org)
� MapServer (mapserver.org)
� OpenLayers (openlayers.org)
� GeoTools (geotools.org)
� GeoWebCache
(geowebcache.org)
� GeoServer (geoserver.org)
� FDO Data Access Technology
(fdo.osgeo.org)
� GeoExt (geoext.org)
Name Type Users Projects Resources Supporters Licensing
OSGeo
osgeo.org
Open Source
Geospatial
Foundation
350+ active
members
90+ charter
members
GDAL/OGR, OSSIM,
GeoTools, GRASS
GIS, Mapbender,
MapBuilder,
MapGuide, Open
SourceMapServer
Mailing lists, Wiki,
IRC, Blogs
Autodesk, INPE,
Ingres, 1Spatial,
GeoCat, LizardTech,
PCI Geomatics, IGN
MIT/X, BSD,
GPL and
LGPL
GeoCommunity
geocomm.com
Company
based
Web portal
41000+
subscribers
– Mailing lists,
Discussion
boards, Events
and trade shows
SuperGeo,
PennState, ITT,
Geographic
Technologies Group,
MapText
–
FOSSGIS e.V.
fossgis.de
Volunteer
based
Association
60+ active
members
OpenStreetMap,
FreeGIS, GISLive
Mailing lists, Wiki,
IRC
STRATO GNU GPL,
CC-BY-SA
OpenJump Project
openjump.org
Volunteer
based Project
– – Mailing lists,
Feature and bug
trackers, Wiki,
Forum
lat/lon, SurveyOS
Project, The
SkyJUMP Team,
Pirol, Intevation
GmbH
GPL 2
12
25.2.2011
Geo-related Projects and Foundations
Name Description How to Exploit
OSGeo
osgeo.org
• Created to support and build the highest-quality open source geospatial
software.
• Goal is to encourage the use and collaborative development of
community-led projects.
• Provides links to events, documentation, websites, and other information
of interest to the open source web mapping community.
• List of existing and incubating Open
Source geospatial projects
• Financial support
GeoCommunity
geocomm.com
• The place for the Geographic Information Systems (GIS), CAD, Mapping,
and Location-Based industry professionals, enthusiasts, and students to
gather.
• Offers a virtual marketplace for buyers, sellers, advertisers, students and
government officials to exchange information.
• Promoting the new FLOSS project
• Attracting community members
FOSSGIS e.V.
fossgis.de
• Promotion of Free Software and Free GIS spatial data in the German
speaking.
• Promote education, exchange of views and cooperation between users,
developers and researchers.
• Provision of free GIS software and data, and promote their availability.
• List of potential components and tools
to use
OpenJump Project
openjump.org
• Open source Geographic Information System written in the Java.
• The OpenJUMP network consists of english speaking Jump-Pilot Project,
the french Projet SIGLE, the german University of Osnabrück project
Pirol, the companies and a number of others, such as freelancers, people
from municipalities, reserach institutes and universities.
• Example of good organized
collaborative GIS project and community
• Thought-out software architecture
13
25.2.2011
Geo-related Projects and Foundations
Name Type Users Resources Supporters Licensing
DSpace
dspace.org
MIX 446 participants
(survey 2007)
Mailing lists, Forum,
Wiki, Newsletter, The Jira
Feature/Issue Tracking
System, Sandbox, IRC
@mire, CILEA, Enovation, Longsight,
Neki Technologies, Open Repository,
Wijiti, Abax Asesores S.A., Almathaki
IT, Cometa Technologies, Destin Inc.,
DRepository, Hewlett Packard Japan,
NITLE, Webinito Networks
BSD
Greenstone
greenstone.org
MIX – Mailing lists, Bug tracker,
Issue tracker, Blog, SVN,
Wiki,
DL Consulting, Opalle Innovation,
Prodigio Consultores, UNESCO
GNU GPL
Fedora
fedora-commons.org
MIX 40+ active
contributors
Mailing lists, Forum,
Wiki, Newsletter, The Jira
Feature/Issue Tracking
System, Sandbox, IRC
Moore Foundation, Cornell University,
University of Virginia, Sun
Microsystems, Arrow, DSpace,
eSciDoc, NSDL, MediaShelf, VTLS,
Mulgara, TOPAZ, OhioLINK
Apache 2.0
Digital Preservation
Software Platform
dpsp.sourceforge.net
VOL – Each component has Git
repository, Wiki, Bug
tracker and Feature
request tracker
National Archives of Australia GPL 3
14
25.2.2011
VOL – supported by volunteers
MIX – company and volunteer based
Digital Archiving and Document
Management
Name Description How to Exploit
DSpace
dspace.org
• DSpace is an out-of-the-box open source repository application for
delivering digital content to end-users.
• There are over 800 digital repositories using DSpace software. Globally
it is the most widely used open source repository software for
institutional repositories and open access repositories.
• Example of one of the most popular
community based Open Source digital
archiving software
• Software architecture and
customization
• Installation process
Greenstone
greenstone.org
• Greenstone is a suite of software for building and distributing digital
library collections. It provides a new way of organizing information and
publishing it on the Internet or on CD-ROM.
• Community architecture
• Localization
• UNESCO support ?
Fedora
fedora-commons.org
• Fedora is a robust, modular repository system for the management and
dissemination of digital content.
• It is especially suited for digital libraries and archives, both for access
and preservation.
• It is also used to provide specialized access to very large and complex
digital collections of historic and cultural materials as well as scientific
data.
• Software flexibility
• Good community architecture
Digital Preservation
Software Platform
dpsp.sourceforge.net
• The Digital Preservation Software Platform (DPSP) is free and open
source software developed by the National Archives of Australia.
• The DPSP is a collection of software applications which support the goal
of digital preservation..
• List of potential components (e.g. for
converting digital files to standart based
open formats, for checking the integrity
of the archive, etc.)
15
25.2.2011
Digital Archiving and Document
Management
16
25.2.2011
MIX – company and volunteer based project
Geospatial Components and Libraries
Name Type Users Resources Supporters Licensing
PostGIS
postgis.org
MIX – Mailing lists, Wiki, Bug
tracker, IRC
Refractions, Intevation GPL 2
GeoTools
geotools.org
MIX – Mailing lists, The Jira
Feature/Issue Tracking
System, Wiki, SVN
Open Source Geospatial Foundation,
Refractions
LGPL
GeoServer
geoserver.org
MIX 60+ contributors Mailing lists, Blog, IRC,
Issue tracker
OpenGeo, Refractions, FGDC,
OpenGIS Consortium, GeoInnovations,
GeoScience Australia, OSGIS, Google,
AuScope Ltd., Australian National Data
Service, Australian Research
Collaboration Service, Axios,
GeoSolutions, Social Change Online
GNU GPL
GeoExt
geoext.org
MIX 70+ members Mailing lists, Wiki, Blog,
Issue tracker, SVN, IRC
– GPL 3
GEOS
geos.refractions.net
MIX Mailing lists, Wiki, Bug
tracker and Feature
tracker, SVN
Open Source Geospatial Foundation,
Refractions
LGPL
Name Description How to Exploit
PostGIS
postgis.org
• PostGIS adds support for geographic objects to the PostgreSQL object-
relational database. In effect, PostGIS "spatially enables" the
PostgreSQL server, allowing it to be used as a backend spatial database
for Geographic Information Systems, much like ESRI's SDE or Oracle's
Spatial extension.
Can be used in project development for
implementing simple features and
providing some spatial functions for
accessiong and analyzing geographic
data.
GeoTools
geotools.org
• GeoTools is a Java code library which provides standards compliant
methods for the manipulation of geospatial data, for example to
implement Geographic Information Systems.
Can be used as a GeoAPI for creating
geospatial, Java interfaces.
GeoServer
geoserver.org
• GeoServer is an open source software server written in Java that allows
users to share and edit geospatial data. Designed for interoperability, it
publishes data from any major spatial data source using open standards.
Implementing the Web Map Service
standard, GeoServer can create, share
and edit maps in a variety of output
formats. Can be used in the project
development.
GeoExt
geoext.org
• GeoExt can help to build powerful desktop style GIS apps on the web
with JavaScript.
Can be included in the project for
improving user interface.
GEOS
geos.refractions.net
• GEOS (Geometry Engine - Open Source) is a C++ port of the Java
Topology Suite (JTS). It aims to contain the complete functionality of JTS
in C++. This includes all the OpenGIS Simple Features for SQL spatial
predicate functions and spatial operators, as well as specific JTS
enhanced topology functions.
In pair with JTS can be used for
performing geometric operations in
project development.
17
25.2.2011
Geospatial Components and Libraries
Migration from Cathedral to Bazaar
Project idea
Original stakeholders
Core developers
Peer reviews
Code contributions
Community
Distributed developmentStable modular version
Cathedral phase Bazaar phaseTransition phase
Idea Generic core Pilot versions Experiences
?