Fundamentals of Open Source Development Leslie Hawthorn, Outreach Manager Jeff Sheltren, Operations Manager August 16, 2011 OSU Picture © Greg Keene.

Slides:



Advertisements
Similar presentations
Blogging Best Practices for the Department and Classroom Dan Wong.
Advertisements

Overview To Date. You Should have -- Awareness of “creativity” – Yours and others Experience critiquing creative work – Peer Reviews Insight into creative.
Newsletters Getting Started These training materials have been prepared by Aspiration.
Presentation By: Brian Mais. What Is It? Content Management Systems(CMS) describes software that manage content, workflow, and collaboration online and.
Newsletters Fundraising Best Practices These training materials have been prepared by Aspiration.
Open Source Workshop1 IBM Software Group Working with Apache Tuscany A Hands-On Workshop Luciano Resende Haleh.
Open Source Software An Introduction. The Creation of Software l As you know, programmers create the software that we use l What you may not understand.
Setting Up an RSS Feed 1 Project by iWEBbic.com 1.
Presented by Jan Williams.  “You see and hear it everywhere, "Web 2.0 This" and "Web 2.0 That" but what is Web 2.0? How do you define Web 2.0? Well,
DITA Info Introduction DITA Architecture Maps Specialization Business case Best practices FAQ & Fact Sheet References Reuse XSL Open Toolkit DITA RSS IRC.
ONLINE COMMUNICATION JAZ PATERNOSTER. SOCIAL NETWORKING A social network is a website which enables communication between friends and family through a.
JCI Website Tips For videos and tips on using the JCI website, go to: jciuk.org.uk/get-involved/website- training/ For help,
TechKnowlogy Conference August 2, 2011 Using GoogleDocs for Collaboration.
Creating hyperlinks to increase the visibility of your brand 7. Tagging on Facebook.
Gathering Information at the Library. Have a project? Don’t know where to start? HPL can help with that!
1 April 14, Starting New Open Source Software Projects William Cohen NCSU CSC 591W April 14, 2008.
Image by apaixonada: Talking people into creating patches.
1 Documentation Workflow Proposal By Michael Wheatland LibreOffice Documentation Team
How To Get Involved In Open Source Nick Burch Senior Developer, Alfresco Software VP ConCom, ASF Member.
Expanding Involvement of Women in F/OSS Presented by Elizabeth Krumbach Philadelphia area Linux Users Group September 2, 2009.
Cat Allman & Leslie Hawthorn Google Inc. May 8, 2009 Getting Started in Open Source.
Cat Allman Leslie Hawthorn Google Inc. July 22, 2009 Getting Started in Free and Open Source.
What is internet? The Internet is a global system of interconnected computer networks that use the standard Internet Protocol Suite (TCP/IP) to serve.
Real Writing for a Real Audience. Overview During this workshop we will focus on blogs and wikis. By the end of the session you will have: a clear understanding.
Databases vs the Internet Coconino Community College Revised August 2010.
Made by: Oprea Cristi Laurentiu Form: 11 th ‘B’ Teacher: Dragutan Constantin.
FOSS Community Collaboration By: Karlie Robinson For: RIT September 14, 2010.
Fedora Project Paul W. Frields Red Hat, Inc. Fedora Project Leader This presentation is licensed under a Creative Commons Attribution-ShareAlike (BY-SA)
Expanding Involvement in F/OSS Presented by Elizabeth Krumbach Philadelphia area Linux Users Group September 2, 2009.
Library and Archive Services
Overview To Date.
Databases vs the Internet
Development Environment
FREE Traffic from Video Sharing Sites
Welcome to the KDE Project
Improve yourself in real world
Version Control with Subversion
Presented by Elizabeth Krumbach
Databases vs the Internet
Section 3.1 Exploring Careers
KDE community guide (break into KDE) HOSC Amsterdam 2006
Using Social Bookmarking in the Classroom
How to use By Zainab Muman
A Module of the CYC Course Online Search and Information Literacy
A Short Course on Geant4 Simulation Toolkit How to learn more?
A Career in Open Source Software
Building a career with Ubuntu and FOSS
What Journalistic Writers Should Know About Social Media
Building a Career in FOSS
Open Source Software for individuals and companies
From Fan To Pro: Using Your Hobbies in Your Career
CONTENT CREATION Standard 3.
Electronic Communication
Electronic Communication
All About Account Michael Gilman Senior Business Systems Analyst.
Optimizing the Use of Your SCORE Volunteer Account
UNITY TEAM PROJECT TOPICS: [1]. Unity Collaborate
Electronic Communication
Louisiana: Our History.
Harness the Marketing Power of Blogs & Wikis
2018 Digital Survey: Feedback & Analysis
DITA.XML.ORG Home page Recent posts Upcoming events DITA Info
Ben Jones - S Rebecca Hunter - S
Tonga Institute of Higher Education IT 141: Information Systems
A Short Course on Geant4 Simulation Toolkit How to learn more?
A Short Course on Geant4 Simulation Toolkit How to learn more?
Git started with git: 2018 edition
Open Source Development Challenges
Electronic Communication
American Government Welcome to 6.06!
Presentation transcript:

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

● TiVo ● HD televisions ● MeeGo ● Android ● Mozilla

Who Uses Open Source ● In-flight entertainment ● Delta ● Continental ● United ● Virgin America

Internet – Powered by Open Source ● 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

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

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?

Basic Netiquette ● Choose a Reasonable “Handle” ● Don't Use Text Speak ● Be Formal in Your First Few Posts

Revision Control (a.k.a. source control, version control) ● Most code is stored in a revision control system ● Linux uses git, other popular options are Subversion, Bazaar & Mercurial ● Understand revisions, branches

Learn to Love IRC IRC = Internet Relay Chat ● Read Channel Topic ● Observe Traffic ● Don't Ask to Ask ● Wait for an Answer ● Lurking ++

Ways to Get Involved ● File Bugs ● Write Effective Bug Reports ● What you were doing ● What you thought should happen ● What happened instead ● Software & hardware specs

Ways to Get Involved ● Check the Issue Tracker for “Easy” or “Beginner” Bugs ● Submit a Patch

Ways to Get Involved ● Triage Bugs ● Answer Questions in IRC ● Point People in the Right Direction

Ways to Get Involved ● Offer to Document Information You Get ● Press Releases and Newsletters ● Testimonials & Developer / User Interviews

Ways to Get Involved ● Join or Start a Local User Group ● Offer to Staff a Booth or Table ● Volunteer to Help at the Next FOSS Conference

Ways to Get Involved ● Create Training Materials: How To's, Tutorials ● Bonus Points for Video or In Person Training ● Give a Talk about Your Project Anyone who can share knowledge well is a teacher.

Ways to Get Involved ● Improve FOSS ● Get Valuable Employment Experience ● Learn from an Experienced Mentor ● Become Part of a Vibrant Global Community ● Get Paid

Recap ● Getting Started Means Being a Good Citizen ● Jump in Where You Can Do Well ● Know You Will Make Mistakes ● Have Fun!

Thank You! Leslie Hawthorn, Outreach Manager Jeff Sheltren, Operations Manager @sheltren

Resources ● Producing Open Source Software: – This guide for starting a FOSS project provides a good overview for newbies, too. ● Guide to GSoC Mentoring: – Documentation for Google Summer of Code Mentors that will also be of general use to folks looking to add new contributors. ● Student Guide to GsoC: – Docs for GsoC students that will also be of general use for learning how to contribute to FOSS projects

Resources (cont'd.) ● Mentoring in Open Source Communities: What Works, What Doesn't – Excellent article interviewing several FOSS developers on their mentoring methodologies. ● How to Ask Questions the Smart Way – The often cited guide to asking questions effectively in the FOSS world. Not always gentle in tone – your mileage may vary.

Even More Resources ● The Free Software Definition – The document for understanding the concept of software being free as in uncensored speech rather than no cost ● The Cathedral and the Bazaar ● – Seminal piece on the early history and fundamental concepts of the Free Software movement

The Last Resources Page ● The Open Source Definition – Document used by the Open Source Initiative to determine whether or not a particular license can be considered Open Source. Useful for understanding the differences between Free Software and Open Source. ● Please suggest additional resources!