Skip to main content
Fundamentals of Open Source Development Leslie Hawthorn, Outreach Manager Jeff Sheltren, Operations Manager August 16, 2011 OSU Picture © Greg Keene
Introduction
What is Open Source? Software that can be freely downloaded, used, modified and redistributed. Generally: Licensed under an OSI-approved license
Who Uses Open Source
Who Uses Open Source TiVo
HD televisions MeeGo
Android
Mozilla
Who Uses Open Source In-flight entertainment Delta
Continental
United
Virgin America
Internet – Powered by Open Source http://news.netcraft.com/archives/2011/01/12/january-2011-web-server-survey-4.html Apache web server: 58,623,115 servers 57.57% of active servers surveyed
Of the top million busiest sites: Over 74% run on open source
Step One: Choosing a Project “Scratch your own itch”
Codes of Conduct Ubuntu's is widely referenced and remixed Be considerate, be respectful, be collaborative Unwritten “Codes of Conduct”
Does this project share  your  values?
Understanding Project Values “ We welcome people of any gender identity or expression, race, ethnicity, size, nationality, sexual orientation, ability level, neurotype, religion, culture, subculture, and political opinion. We welcome activists, artists, bloggers, crafters, dilettantes, musicians, photographers, readers, writers, ordinary people, extraordinary people, and everyone in between. We welcome people who want to change the world, people who want to keep in touch with friends, people who want to make great art, and people who just need a break after work. We welcome fans, geeks, nerds, and pixel-stained technopeasant wretches. We welcome Internet beginners who aren't sure what any of those terms refer to.”
Spend Some Time on the Project Website Start with the “About” Page
Find (or Ask For) Newbie Documentation
Developer Documentation Review Style/Coding Guidelines
Understand the project's workflow for submitting problem reports and fixes Mailing list vs. bug tracker http://www.flickr.com/photos/dance_photographer/4962451349/
What's a Patch? A code snippet to update a part of a larger piece of software
Typically created using the 'diff' tool, or equivalent tool from within a revision control system http://www.flickr.com/photos/dance_photographer/4962451349/
Mailing Lists Are Critical Browse the archives You can't read everything – search! Determine the key players
Asking Questions Write a useful subject line
Show you've done your research
Wait for an answer
What is Top Posting? I really want a pink and yellow pony!! >> What kind of pony would you like? http://www.flickr.com/photos/enigmatic/4037030223/
Basic Netiquette Choose a Reasonable “Handle”