+ All Categories
Home > Technology > Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Date post: 06-Dec-2014
Category:
Upload: better-software
View: 2,088 times
Download: 1 times
Share this document with a friend
Description:
Creare un software open source è molto di più che rendere scaricabile del codice sorgente. E' creare e alimentare una comunità fatta di utenti prima che di sviluppatori, che assieme contribuiscono a far progredire il prodotto innescando un circolo virtuoso tra le esigenze della comunità e quelle di un'azienda commerciale.
33
Funambol & Open Source: creare e far crescere un progetto e una community Better Software Firenze 6-7 Maggio 2009 Stefano Fornari, Funambol CTO
Transcript
Page 1: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Funambol & Open Source:creare e far crescere un progetto e una community

Better SoftwareFirenze 6-7 Maggio 2009Stefano Fornari, Funambol CTO

Page 2: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Summary

Today (the project, the company, the team)Funambol I – genesis of an open source project

Funambol II – the project, the tools, the community

Funambol III – the ecosystem

Page 3: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The company

#1 cross-platform mobile open source companyHeadquartered in the US (Silicon Valley)Engineering team in ItalySales presence in the US, Germany, Dubai, Beijinghttp://www.funambol.comA product company

i.e. No consulting

Page 4: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Commercial deployment

Page 5: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Industry recognition

Page 6: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The product/1

“MobileMe” for the massesClient and server componentsCarrier grade serverMany componentsSynchronization serverPush serverInbox listenerPIM listener

Page 7: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The product/2

Page 8: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The product/3

Multi platform clientsWindowsMobile (smartphone & pocket PC)Win32/fat clientsSymbianJ2MEJ2SEBlackBerryiPhoneAndroidMobile/Desktop linux

An online portal (my.funambol.com)

Page 9: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The product/4

LicensingDual licenseAGPL 3.0/commercial

Page 10: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The engineering team

Based in PaviaDevelopment teamPavia, Portugal

QA teamPavia, Palermo, Portugal

Product teamchief architect, scrum master, technical writer, release eng, office managerPavia

Page 11: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Funambol I

Page 12: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The Genesis - Sync4j

Late 2002-early 2003Motivations

Do not reinvent the wheelSpeed-up developmentSpeed-up visibilitySpeed-up adoptionLeading the space

Think big, start small!Finding if there was any existing projectSharing idea with the ownerContributing code (patches, new code)Gaining trust and recognitionGaining write access to the repositoryTaking over project ownership and management

Page 13: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

<250

250 – 2,5002,500 – 10,000

10,000 – 25,00025,000 – 50,000

>50,000

Page 14: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Funambol 2.0

Page 15: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Leading the project, starting a community

Early 2004More solid project

Attracting interest in SyncML spaceMany implementations based on

Project moved to the ObjectWeb consortiumMore visibilityBecome a player in encouraging open source adoption in business

organizations

Changed the name from Sync4j to FunambolDual-licenceFunambol Open Source Project Social ContractMaking stronger and better use of community tools

CVS, mailing lists, issue trackers, communication

Page 16: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Funambol 3.0

Page 17: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Users

Coredevelopers

3rd partydevelopers

Mobile users System admins

Funambol developers External developers

Visible Stealth

Page 18: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Hired a community manager

Stefano Maffulli

Page 19: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Hired a community managerFunambol Forge

http://forge.funambol.org

Page 20: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Forge: the place where the ecosystem meets

Lifecycle and Software

Development

StructuredCollaboration

Architecture ofParticipation

Subversion ,Task/Issue Tracking, Project Reporting

Mailing lists, Discussion Forums, Announcements, Documents & Files

Community Portal, Wikis, Content Management, User Roles, Project Workspaces

Page 21: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Hired a community managerFunambol Forge

http://forge.funambol.org

Code sniper

Page 22: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Hired a community managerFunambol Forge

http://forge.funambol.org

Code sniperPhone sniper

Page 23: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Community managerFunambol Forge

http://forge.funambol.org

Conversationshttp://identi.ca/group/funambolIrc.freenode.net #funambol

Code sniperDevice sniperLion sniper

Page 24: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The ecosystem

Community managerFunambol Forge

http://forge.funambol.org

Code sniperDevice sniperLion sniperTransparency

RoadmapBacklog sharingDevelopment plans sharingPublic design discussionsPublic software metrics

Page 25: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The challenge

Commercial vs Open Source development

Commercial vs Open Source features Openness Shared Roadmap Development process integration

Page 26: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Questions?

Page 27: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

The following slides are for further discussions

Page 28: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Open source development

Coreproject

Contributions

Page 29: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Funambol development community

Contributors

Externaldevelopers

Funamboldevelopers

Page 30: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Funambol development community

Contributors

Externaldevelopers

Funamboldevelopers core projects

community projects connectors

plug ins OEMs

Page 31: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Developers community

core Funambol developersfull time Funambol employees

core developerscommitted developersowners of a modulealone players or other companies' employees

contributors3rd party developers

Page 32: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

Contributors and contributions

contributors do not have write access to the code repositoryfreely offered from developers to the communitytracked in the bug tracking systemreviewed by core developersaccepted and integrated in the main trunk by core developers

Page 33: Stefano Fornari - Come creare e far crescere un progetto ed una community open source

core/3rd party development

Funambol provides the framework and API3rd parties develop independentlyFunambol offers the possibility to host the project on the Funambol forgeforge.funambol.org

community supportcore developers take care of the module they are owner


Recommended