SlideShare a Scribd company logo
Contributing to Open
Source
Chrissy Wainwright
About Me
@cdw9
Senior Python
Developer at Six Feet
Up, Inc in Indiana
(I work from home in NWA)
Plone Foundation
Board of Directors
What is Open Source?
Product code that is publicly available
Free as in speech, not as in beer
GPL, MIT, BSD Licensing
Repositories in GitHub, Bitbucket, etc
Communities - Python, Django, Plone, etc
Myths
You have to be a developer to contribute
You have to already be involved in the project
You have to speak fluent English
You have to be an expert to contribute code
Pre-requisites
Have a computer
Speak some English, at least in world-wide
communities
Git (in most cases)
Ways to Contribute
- Difficulty level
- may require Git
- requires writing code
Ways to Contribute
Verifying Bugs
Go through reported bugs in the issue tracker,
and check that you can reproduce them.
Ask questions to the requestor if they didn’t
leave enough information
• What operating system?
• What version of the software?
• Provide screenshots
• What was the full error message?
Ways to Contribute
Ticket Triage
• Add tags
• Assign tickets or tag a person to get their
attention
• Link to related issues
• Close if invalid, with a comment
Ways to Contribute
Answering Questions
Community forum, Stack Overflow, IRC
Ways to Contribute
Beta Testing
Try out the beta, release candidate, or soft
release version of the product to make sure
everything is still working
Ways to Contribute
Documentation
• end user documentation
• core and custom development documentation
• training material, tutorials
Ways to Contribute
Translations
• Adding new available languages
• Needed in-product, in documentation and
training/tutorials
• Upkeep on existing languages
Ways to Contribute
Editing, Fixing Typos
• Updating docs from ESL writer
• Glaring typos
• Incorrect or missing instructions
Ways to Contribute
Writing Code
• May need to sign a contributor agreement
• Beginner tasks
• Bug fixes
• New features
• Back-end, front-end
Ways to Contribute
Working at a conference
booth
Talk to people about the product you love!
Ways to Contribute
Board of Directors
Most people don’t like to attend meetings.
Does require some time spent in the community
first
Ways to Contribute
Various Teams
• Marketing
• Framework
• User Interface
• Membership
• Security
• Testing & Continuous Integration
• Installers
• Sysadmins
Ways to Contribute
Make your own project!
It’s a great way to help you understand the
process
How to Get Involved
How to Get Involved
Don’t be afraid
of failure!
How to Get Involved
Community Forum
• Introduce yourself!
• Ask some questions
• Answer some questions
• Get involved in discussions
Pull Requests
Fix some stuff, commit some code!
Not all features will be accepted.
How to Get Involved
How to Get Involved
Attend a Conference
Meet other people who work on and use the
product face-to-face
How to Get Involved
Find a Mentor
• Required on Improvement Proposals
• Hire a company to provide mentoring/training
• Just ask
How to Get Involved
Google Summer of Code,

Code-in
• Gets students involved in OS projects
• Plone has had many GSOC students continue to
stay involved and do great things
How to Get Involved
Finding Projects
• https://github.com/dashboard/discover
• https://www.codetriage.com
• https://github.com/collections/choosing-
projects
• https://dev.to
Where/When contributions

can be made
Home
Work
Sprints
How to act in an OS community
Be helpful
If you have something to complain about, do it
positively
submit issues
provide other options
start a discussion
How to act in an OS community
Remember that many OS maintainers are
working for free
Give credit where credit is due
Pay for Open Source with Kindness
Setting expectations for Open Source
participation:

https://youtu.be/tzFWz5fiVKU?t=49m25s
Demo
Questions?

More Related Content

PDF
Contributing to Open Source (Lightning Talk version)
PPTX
NEDCamp Base Theme Presentation
PDF
Assistance with Android: Tactical to Strategic
PDF
Use The Source Join The Force by Mark Steve Samson | DevCon Summit 2015 #GoO...
PPTX
Open source and then some: An Introduction
PDF
Let's talk FOSS!
PDF
Contributing to an Open Source Project 101
PDF
Open source 101 for students
Contributing to Open Source (Lightning Talk version)
NEDCamp Base Theme Presentation
Assistance with Android: Tactical to Strategic
Use The Source Join The Force by Mark Steve Samson | DevCon Summit 2015 #GoO...
Open source and then some: An Introduction
Let's talk FOSS!
Contributing to an Open Source Project 101
Open source 101 for students

Similar to Contributing to Open Source (20)

PDF
Contributing to open source
ODP
How to contribute to open source
PDF
How to contribute to large open source projects like Docker (LinuxCon 2015)
PDF
Contributing to Open Source
PDF
How to Contribute to Open Source
PDF
O'Leary - Using GitHub for Enterprise and Open Source Documentation
PPTX
Open source
ODP
Fundamentals of Open Source Development
PPTX
contributing to open source in just about any skill
PPTX
How to get started in Open Source!
PPTX
How to Build a Career in Open Source.pptx
PPTX
Zero to Merge Journey to OpenInfra by Sang Tran
ODP
Spread GHOP: Google Highly Open Participation Contest
PDF
Doing Open Source the Right Way
PDF
Contributing-to-Open-Source-Projects-as-an-Absolute-Beginner.pdf
PDF
Contributing to Open Source
PDF
Open Source projects with humanity and social impacts
PDF
The Open Source Way - @JBCNConf Closing Keynote 2016
PPTX
Hacktoberfest 2020 - Open source for beginners
PPTX
Basics of Open Source Contribution - WWCodeMobile
Contributing to open source
How to contribute to open source
How to contribute to large open source projects like Docker (LinuxCon 2015)
Contributing to Open Source
How to Contribute to Open Source
O'Leary - Using GitHub for Enterprise and Open Source Documentation
Open source
Fundamentals of Open Source Development
contributing to open source in just about any skill
How to get started in Open Source!
How to Build a Career in Open Source.pptx
Zero to Merge Journey to OpenInfra by Sang Tran
Spread GHOP: Google Highly Open Participation Contest
Doing Open Source the Right Way
Contributing-to-Open-Source-Projects-as-an-Absolute-Beginner.pdf
Contributing to Open Source
Open Source projects with humanity and social impacts
The Open Source Way - @JBCNConf Closing Keynote 2016
Hacktoberfest 2020 - Open source for beginners
Basics of Open Source Contribution - WWCodeMobile
Ad

More from cdw9 (10)

PDF
Debugging Your Plone Site
PDF
Crafting an Impactful Home Page That Your Editors Will Love
PDF
Debugging with PDB
PDF
Introduction to Transmogrifier
PDF
The Future of [Plone] Theming
PDF
Unknown plone
PDF
How to Get Started Theming Plone
PDF
Making CSS and Firebug Your New Friends
PDF
Intro to TAL
PDF
Plone Theming in a Nutshell
Debugging Your Plone Site
Crafting an Impactful Home Page That Your Editors Will Love
Debugging with PDB
Introduction to Transmogrifier
The Future of [Plone] Theming
Unknown plone
How to Get Started Theming Plone
Making CSS and Firebug Your New Friends
Intro to TAL
Plone Theming in a Nutshell
Ad

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
MYSQL Presentation for SQL database connectivity
A Presentation on Artificial Intelligence
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
sap open course for s4hana steps from ECC to s4
Mobile App Security Testing_ A Comprehensive Guide.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
The AUB Centre for AI in Media Proposal.docx
Encapsulation_ Review paper, used for researhc scholars
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Spectral efficient network and resource selection model in 5G networks
The Rise and Fall of 3GPP – Time for a Sabbatical?
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Per capita expenditure prediction using model stacking based on satellite ima...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Chapter 3 Spatial Domain Image Processing.pdf
Network Security Unit 5.pdf for BCA BBA.
Advanced methodologies resolving dimensionality complications for autism neur...
MYSQL Presentation for SQL database connectivity

Contributing to Open Source

  • 2. About Me @cdw9 Senior Python Developer at Six Feet Up, Inc in Indiana (I work from home in NWA) Plone Foundation Board of Directors
  • 3. What is Open Source? Product code that is publicly available Free as in speech, not as in beer GPL, MIT, BSD Licensing Repositories in GitHub, Bitbucket, etc Communities - Python, Django, Plone, etc
  • 4. Myths You have to be a developer to contribute You have to already be involved in the project You have to speak fluent English You have to be an expert to contribute code
  • 5. Pre-requisites Have a computer Speak some English, at least in world-wide communities Git (in most cases)
  • 6. Ways to Contribute - Difficulty level - may require Git - requires writing code
  • 7. Ways to Contribute Verifying Bugs Go through reported bugs in the issue tracker, and check that you can reproduce them. Ask questions to the requestor if they didn’t leave enough information • What operating system? • What version of the software? • Provide screenshots • What was the full error message?
  • 8. Ways to Contribute Ticket Triage • Add tags • Assign tickets or tag a person to get their attention • Link to related issues • Close if invalid, with a comment
  • 9. Ways to Contribute Answering Questions Community forum, Stack Overflow, IRC
  • 10. Ways to Contribute Beta Testing Try out the beta, release candidate, or soft release version of the product to make sure everything is still working
  • 11. Ways to Contribute Documentation • end user documentation • core and custom development documentation • training material, tutorials
  • 12. Ways to Contribute Translations • Adding new available languages • Needed in-product, in documentation and training/tutorials • Upkeep on existing languages
  • 13. Ways to Contribute Editing, Fixing Typos • Updating docs from ESL writer • Glaring typos • Incorrect or missing instructions
  • 14. Ways to Contribute Writing Code • May need to sign a contributor agreement • Beginner tasks • Bug fixes • New features • Back-end, front-end
  • 15. Ways to Contribute Working at a conference booth Talk to people about the product you love!
  • 16. Ways to Contribute Board of Directors Most people don’t like to attend meetings. Does require some time spent in the community first
  • 17. Ways to Contribute Various Teams • Marketing • Framework • User Interface • Membership • Security • Testing & Continuous Integration • Installers • Sysadmins
  • 18. Ways to Contribute Make your own project! It’s a great way to help you understand the process
  • 19. How to Get Involved
  • 20. How to Get Involved Don’t be afraid of failure!
  • 21. How to Get Involved Community Forum • Introduce yourself! • Ask some questions • Answer some questions • Get involved in discussions
  • 22. Pull Requests Fix some stuff, commit some code! Not all features will be accepted. How to Get Involved
  • 23. How to Get Involved Attend a Conference Meet other people who work on and use the product face-to-face
  • 24. How to Get Involved Find a Mentor • Required on Improvement Proposals • Hire a company to provide mentoring/training • Just ask
  • 25. How to Get Involved Google Summer of Code,
 Code-in • Gets students involved in OS projects • Plone has had many GSOC students continue to stay involved and do great things
  • 26. How to Get Involved Finding Projects • https://github.com/dashboard/discover • https://www.codetriage.com • https://github.com/collections/choosing- projects • https://dev.to
  • 27. Where/When contributions
 can be made Home Work Sprints
  • 28. How to act in an OS community Be helpful If you have something to complain about, do it positively submit issues provide other options start a discussion
  • 29. How to act in an OS community Remember that many OS maintainers are working for free Give credit where credit is due Pay for Open Source with Kindness Setting expectations for Open Source participation:
 https://youtu.be/tzFWz5fiVKU?t=49m25s
  • 30. Demo