SlideShare a Scribd company logo
Open Source
How to Join the Community
Nathan L Smith
Engineering Lead – User interface
Chef
“Open source as a development
model promotes:
Universal access via free license to a
product’s design or or blueprint
Universal redistribution of that design
or blueprint, including subsequent
improvements by anyone”
What is Open Source?
Source?
- Wikipedia
Why Should I Care?
Why Should I Care?
Open source software lets you use other peoples’ code for free
Why Should I Care?
Open source software lets you use other peoples’ code for free
modern civilization exist
Why Contribute?
You’re benefiting from the work of others
├─┬ chai@1.8.1
│ ├── assertion-error@1.0.0
│ └─┬ deep-eql@0.1.3
│ └── type-detect@0.1.1
├─┬ karma@0.10.10 peer invalid
│ ├─┬ chokidar@0.8.2
│ │ ├─┬ fsevents@0.2.0
│ │ │ └── nan@0.8.0
│ │ └── recursive-readdir@0.0.2
│ ├── coffee-script@1.6.3
│ ├── colors@0.6.0-1
│ ├─┬ connect@2.8.8
│ │ ├── buffer-crc32@0.2.1
│ │ ├── bytes@0.2.0
│ │ ├── cookie@0.1.0
│ │ ├── cookie-signature@1.0.1
│ │ ├─┬ debug@1.0.2
│ │ │ └── ms@0.6.2
│ │ ├── formidable@1.0.14
│ │ ├── fresh@0.2.0
│ │ ├── methods@0.0.1
│ │ ├── pause@0.0.1
│ │ ├── qs@0.6.5
│ │ ├─┬ send@0.1.4
│ │ │ └── range-parser@0.0.4
│ │ └── uid2@0.0.2
analytics-ruby
and_feathers (>= 1.0.0.pre)
and_feathers-gzipped_tarball (>= 1.0.0.pre)
aws-sdk
byebug
capybara
chef
chef-legacy!
compass-rails
coveralls
database_cleaner
dotenv
factory_girl
faker
foreman
jbuilder
kaminari
launchy
license_finder
magiconf
mail_view
mixlib-authentication
newrelic_rpm
nokogiri
octokit!
omniauth
(Gemfile.lock and npm ls from Chef Supermarket)
Why Contribute?
Help people like yourself
No matter what your level of experience, there will always be somebody who knows less than you do.
Why Contribute?
Help people like yourself
No matter what your level of experience, there will always be somebody who knows less than you do.
Become a better engineer
Reading and writing code is what makes you learn coding. The best way to learn is to teach.
Why Contribute?
Help people like yourself
No matter what your level of experience, there will always be somebody who knows less than you do.
Become a better engineer
Reading and writing code is what makes you learn coding. The best way to learn is to teach.
Make friends
Code is communication. The open source community is people. Many of them are nice and will help you and
have beers with you.
Ways to Contribute
Stack Overflow
Ask questions. Read questions and answers. Answer questions.
Ways to Contribute
Stack Overflow
Ask questions. Read questions and answers. Answer questions.
IRC
Many projects have IRC channels filled with lost souls. Try answering at least one question for each one you
ask. (freenode.net is a good place to start.)
Ways to Contribute
Stack Overflow
Ask questions. Read questions and answers. Answer questions.
IRC
Many projects have IRC channels filled with lost souls. Try answering at least one question for each one you
ask. (freenode.net is a good place to start.)
GitHub
Chances are most open source software you’re using is on there. Found a bug in it? Fix it! Found a typo in a
README? Fix it! Want to share your pet project with the world? Somebody might like it, and maybe they will
fix that typo in your README.
Starting With GitHub*
Learn Git
Git Real from Code School is a great place to learn the basics. The Pro Git book is open source and free to
read online. GitHub Help is helpful.
* Bitbucket and CodePlex are nice too.
Starting With GitHub*
Learn Git
Git Real from Code School is a great place to learn the basics. The Pro Git book is open source and free to
read online. GitHub Help is helpful.
Scratch an itch
Fix a bug (you will find one) or implement a feature on a project you use. Many projects are short on
documentation. Go read the code and write some. Or just look through open issues on projects that interest
you.
* Bitbucket and CodePlex are nice too.
Starting With GitHub*
Learn Git
Git Real from Code School is a great place to learn the basics. The Pro Git book is open source and free to
read online. GitHub Help is helpful.
Scratch an itch
Fix a bug (you will find one) or implement a feature on a project you use. Many projects are short on
documentation. Go read the code and write some. Or just look through open issues on projects that interest
you.
Open source your stuff
Got a really dumb game you wrote for the heck of it? A class project? Something you wrote to make life
easier? You can share it.
* Bitbucket and CodePlex are nice too.
Open Sourcing your Stuff
…can be a life-long commitment. If you stop using your own project or don’t have time to care, try and find
someone who is using who would be willing to maintain it.
If you don’t want to maintain it anymore, at least say so in the README.
It’s ok. Most people will understand.
If you are maintaining your project, try to be prompt in responding, but don’t be pressured to fix everybody’s
problems right away.
When you enthusiastically accept peoples’ input, and help them fix the problem themselves, you’ll build them
up and take pressure off of yourself.
People might not always be nice. Don’t be discouraged. The internet is full of complainers and assholes. Try to
be as nice to them as you are to the nice people.
Non-Tech Stuff You Should Know About
Licenses
You probably aren’t a lawyer and don’t want to spend money on one to figure out what license you should use.
MIT and Apache are common ones and a good bet. choosealicense.com has some useful basic information
but should not be considered legal advice.
Non-Tech Stuff You Should Know About
Licenses
You probably aren’t a lawyer and don’t want to spend money on one to figure out what license you should use.
MIT and Apache are common ones and a good bet. choosealicense.com has some useful basic information
but should not be considered legal advice.
CLAs
Some projects require you to sign a Contributor License Agreement in order to protect you and the project
maintainers from patent-related legal action. Many corporations won’t use software unless it has one. These
are ok to sign, but as with any document, read it first.
* US Law required at least 1 meme per slide deck
*
Thank You
smith@getchef.com
https://github.com/smith
https://twitter.com/nlsmith
Open source

More Related Content

Similar to Open source (20)

PPTX
Open source and then some: An Introduction
Akash Tandon
 
PDF
Introduction to OpenSource
Gaurish Sharma
 
PDF
How to contribute back to Open Source
Wojciech Koszek
 
PDF
Open Source Craft at Twitter
Chris Aniszczyk
 
PDF
What every successful open source project needs
Steven Francia
 
PDF
Let's talk FOSS!
AditiSaxena72
 
PDF
How to Teach Yourself to Code
Mattan Griffel
 
PPTX
How to get started in Open Source!
Pradeep Singh
 
PPTX
Howtostopsucking
Hugo Pinto
 
PPTX
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
Hugo Pinto
 
PPTX
How to stop sucking and be awesome instead
codinghorror
 
PDF
Hitchhikers Guide to Participating in Open Source - Long Version
Elena Williams
 
PPTX
Introduction To Open Source
Uchechukwu Obimma
 
PDF
The Junior Developer Survival Guide - GDI Ann Arbor 2/10/15
James York
 
PPTX
Hacktoberfest'24 _ GDG on Campus BU.pptx
nilaygupta3003
 
KEY
What is open source?
Ahmet Bulut
 
DOC
Ethical Consideration of Open Source Software
Larry Jennings
 
PPTX
Building Social Software for the Anti-Social: Part I
codinghorror
 
KEY
Open Source Compliance at Twitter
Chris Aniszczyk
 
KEY
Community and Github: 7/27/2011
Andy Lester
 
Open source and then some: An Introduction
Akash Tandon
 
Introduction to OpenSource
Gaurish Sharma
 
How to contribute back to Open Source
Wojciech Koszek
 
Open Source Craft at Twitter
Chris Aniszczyk
 
What every successful open source project needs
Steven Francia
 
Let's talk FOSS!
AditiSaxena72
 
How to Teach Yourself to Code
Mattan Griffel
 
How to get started in Open Source!
Pradeep Singh
 
Howtostopsucking
Hugo Pinto
 
Howtostopsuckingandbeawesomeinstead 120601013410-phpapp01
Hugo Pinto
 
How to stop sucking and be awesome instead
codinghorror
 
Hitchhikers Guide to Participating in Open Source - Long Version
Elena Williams
 
Introduction To Open Source
Uchechukwu Obimma
 
The Junior Developer Survival Guide - GDI Ann Arbor 2/10/15
James York
 
Hacktoberfest'24 _ GDG on Campus BU.pptx
nilaygupta3003
 
What is open source?
Ahmet Bulut
 
Ethical Consideration of Open Source Software
Larry Jennings
 
Building Social Software for the Anti-Social: Part I
codinghorror
 
Open Source Compliance at Twitter
Chris Aniszczyk
 
Community and Github: 7/27/2011
Andy Lester
 

Recently uploaded (20)

PPTX
PCU Keynote at IEEE World Congress on Services 250710.pptx
Ramesh Jain
 
PDF
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
PDF
visibel.ai Company Profile – Real-Time AI Solution for CCTV
visibelaiproject
 
PDF
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
PDF
Alpha Altcoin Setup : TIA - 19th July 2025
CIFDAQ
 
PPTX
The Yotta x CloudStack Advantage: Scalable, India-First Cloud
ShapeBlue
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
The Past, Present & Future of Kenya's Digital Transformation
Moses Kemibaro
 
PPTX
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PDF
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
PDF
How Current Advanced Cyber Threats Transform Business Operation
Eryk Budi Pratama
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PDF
Market Wrap for 18th July 2025 by CIFDAQ
CIFDAQ
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PDF
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
PPTX
Machine Learning Benefits Across Industries
SynapseIndia
 
PDF
Market Insight : ETH Dominance Returns
CIFDAQ
 
PCU Keynote at IEEE World Congress on Services 250710.pptx
Ramesh Jain
 
Peak of Data & AI Encore - Real-Time Insights & Scalable Editing with ArcGIS
Safe Software
 
visibel.ai Company Profile – Real-Time AI Solution for CCTV
visibelaiproject
 
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
Alpha Altcoin Setup : TIA - 19th July 2025
CIFDAQ
 
The Yotta x CloudStack Advantage: Scalable, India-First Cloud
ShapeBlue
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
The Past, Present & Future of Kenya's Digital Transformation
Moses Kemibaro
 
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
TrustArc Webinar - Navigating Data Privacy in LATAM: Laws, Trends, and Compli...
TrustArc
 
How Current Advanced Cyber Threats Transform Business Operation
Eryk Budi Pratama
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
Market Wrap for 18th July 2025 by CIFDAQ
CIFDAQ
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
Economic Impact of Data Centres to the Malaysian Economy
flintglobalapac
 
Machine Learning Benefits Across Industries
SynapseIndia
 
Market Insight : ETH Dominance Returns
CIFDAQ
 
Ad

Open source

  • 1. Open Source How to Join the Community Nathan L Smith Engineering Lead – User interface Chef
  • 2. “Open source as a development model promotes: Universal access via free license to a product’s design or or blueprint Universal redistribution of that design or blueprint, including subsequent improvements by anyone” What is Open Source? Source? - Wikipedia
  • 3. Why Should I Care?
  • 4. Why Should I Care? Open source software lets you use other peoples’ code for free
  • 5. Why Should I Care? Open source software lets you use other peoples’ code for free modern civilization exist
  • 6. Why Contribute? You’re benefiting from the work of others ├─┬ [email protected] │ ├── [email protected] │ └─┬ [email protected] │ └── [email protected] ├─┬ [email protected] peer invalid │ ├─┬ [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ └── [email protected] analytics-ruby and_feathers (>= 1.0.0.pre) and_feathers-gzipped_tarball (>= 1.0.0.pre) aws-sdk byebug capybara chef chef-legacy! compass-rails coveralls database_cleaner dotenv factory_girl faker foreman jbuilder kaminari launchy license_finder magiconf mail_view mixlib-authentication newrelic_rpm nokogiri octokit! omniauth (Gemfile.lock and npm ls from Chef Supermarket)
  • 7. Why Contribute? Help people like yourself No matter what your level of experience, there will always be somebody who knows less than you do.
  • 8. Why Contribute? Help people like yourself No matter what your level of experience, there will always be somebody who knows less than you do. Become a better engineer Reading and writing code is what makes you learn coding. The best way to learn is to teach.
  • 9. Why Contribute? Help people like yourself No matter what your level of experience, there will always be somebody who knows less than you do. Become a better engineer Reading and writing code is what makes you learn coding. The best way to learn is to teach. Make friends Code is communication. The open source community is people. Many of them are nice and will help you and have beers with you.
  • 10. Ways to Contribute Stack Overflow Ask questions. Read questions and answers. Answer questions.
  • 11. Ways to Contribute Stack Overflow Ask questions. Read questions and answers. Answer questions. IRC Many projects have IRC channels filled with lost souls. Try answering at least one question for each one you ask. (freenode.net is a good place to start.)
  • 12. Ways to Contribute Stack Overflow Ask questions. Read questions and answers. Answer questions. IRC Many projects have IRC channels filled with lost souls. Try answering at least one question for each one you ask. (freenode.net is a good place to start.) GitHub Chances are most open source software you’re using is on there. Found a bug in it? Fix it! Found a typo in a README? Fix it! Want to share your pet project with the world? Somebody might like it, and maybe they will fix that typo in your README.
  • 13. Starting With GitHub* Learn Git Git Real from Code School is a great place to learn the basics. The Pro Git book is open source and free to read online. GitHub Help is helpful. * Bitbucket and CodePlex are nice too.
  • 14. Starting With GitHub* Learn Git Git Real from Code School is a great place to learn the basics. The Pro Git book is open source and free to read online. GitHub Help is helpful. Scratch an itch Fix a bug (you will find one) or implement a feature on a project you use. Many projects are short on documentation. Go read the code and write some. Or just look through open issues on projects that interest you. * Bitbucket and CodePlex are nice too.
  • 15. Starting With GitHub* Learn Git Git Real from Code School is a great place to learn the basics. The Pro Git book is open source and free to read online. GitHub Help is helpful. Scratch an itch Fix a bug (you will find one) or implement a feature on a project you use. Many projects are short on documentation. Go read the code and write some. Or just look through open issues on projects that interest you. Open source your stuff Got a really dumb game you wrote for the heck of it? A class project? Something you wrote to make life easier? You can share it. * Bitbucket and CodePlex are nice too.
  • 16. Open Sourcing your Stuff …can be a life-long commitment. If you stop using your own project or don’t have time to care, try and find someone who is using who would be willing to maintain it. If you don’t want to maintain it anymore, at least say so in the README. It’s ok. Most people will understand. If you are maintaining your project, try to be prompt in responding, but don’t be pressured to fix everybody’s problems right away. When you enthusiastically accept peoples’ input, and help them fix the problem themselves, you’ll build them up and take pressure off of yourself. People might not always be nice. Don’t be discouraged. The internet is full of complainers and assholes. Try to be as nice to them as you are to the nice people.
  • 17. Non-Tech Stuff You Should Know About Licenses You probably aren’t a lawyer and don’t want to spend money on one to figure out what license you should use. MIT and Apache are common ones and a good bet. choosealicense.com has some useful basic information but should not be considered legal advice.
  • 18. Non-Tech Stuff You Should Know About Licenses You probably aren’t a lawyer and don’t want to spend money on one to figure out what license you should use. MIT and Apache are common ones and a good bet. choosealicense.com has some useful basic information but should not be considered legal advice. CLAs Some projects require you to sign a Contributor License Agreement in order to protect you and the project maintainers from patent-related legal action. Many corporations won’t use software unless it has one. These are ok to sign, but as with any document, read it first.
  • 19. * US Law required at least 1 meme per slide deck *