how to run an open source project
Post on 27-May-2015
2.923 Views
Preview:
TRANSCRIPT
How to Run an Open Source Project
by Sebastiaan Deckers
Who am I?
• Founder of Pandion instant messenger– XMPP client for Windows– Open source, soon GPL v3– 2-4 million users
• Working at Directi on Chat.pw– Based on Pandion– Open source, GPL v3– Launching soon!
Goals of this Talk
• Starting a project• Useful tools• Mistakes to avoid• Division of labour• Gaining and handling users• ???• Profit!
Getting Started
• Choose a name– Remember Phoenix, Firebird, Firefox?– Choose something that is available, easy to
remember, pronounceable over the phone, …– Acronyms are good, recursion better
• eg: GNU = Gnu’s Not Unix
• Choose a logo– Humans remember visually
Code and Content License
• Source Code– Copyleft: GPL, LGPL– Copyright: BSD, MIT/X11, Apache
• Content– Logos, documentation, artwork, presentations,
media, mailing lists, blog posts, …– Creative Commons Licenses– GNU Free Documentation License
• Contributions– Transfer IP or scattered ownership
Project Hosting
• Do-It-Yourself (DIY)– Pro: Product demo, commercial projects– Con: Productivity drain, attack/spam vector
• All-In-One– Pro: No hassle, integrated suite– Con: No flexibility, poor usability
• Loosely Coupled Mashup– Pro: No hassle, specialised– Con: Content islands
Releases and PR
• Synchronised Releases– Major releases follow fixed cycle with others– Minor releases when needed by users– Nightly builds for developers and testers
• PR 2.0– Wikipedia– Blog– Twitter– Ohloh– Community!
Team Management
Perceived Weakness Actual StrengthDistributed location & time zone
Melting pot of experience and development styles
Ad-hoc productivity High motivation and passion
Easy come, easy go Specialist contributors, resilient manpower
Code quality Co-developers fix bugs and improve architecture
Team Management
• Lessons learned– Document everything, publically log decisions
• Lower barriers to join the project or it gets forked
– Decentralised decisions• Core leadership team• Listen to your users
– Follow up, track progress, deadlines• Have a project manager who cracks the whip
– If you build it, they will come• Don’t wait for people to join. Just go for it.
User Community
• Problem:The better the product, the more users.The more users, the less time spent improving the product.
• Solutions:– Self Service: documentation, wiki, discussion groups,
chat rooms, etc.– Empowerment: Expert users assist novice users.– Filter and rank feedback so developers can
concentrate on what matters.
Is there Money in Free Software?
• Ways to monetise projects as a developer:– Sell related service or product– Advertising– Get better job offers– Consulting & paid support– Beg for donations
Project Foundations
• Single entity owns the project• Why?
– Fixed representation of ever changing team– Survival assurance to users– Accountability– Legal protection– Hiring employees– Receiving income
EOF
Questions?
Contact Me
cbas@pandion.be
http://twitter.com/pandion
http://blog.pandion.be/
Shameless Plugs
http://www.pandion.be/
http://www.directi.com/
http://start.pw/
Thank you for your time!
top related