class: center, middle # Open Source like a Boss ## A guide to giving back ### Jon Johnson 
jrjohnson
jrjohnson_ --- class: center, middle # Start giving back you ingrate! ## Information wants to be beer, or something like that ### Jon Johnson 
jrjohnson
jrjohnson_ --- # Who am I? - Full stack web developer - Technical lead for the Ilios Project open source curriculum management system for health science education. (http://iliosproject.org) .center[] --- ## Justifying giving back (a work product reason) *"Always code as if the person who ends up maintaining your code will be a violent psychopath who knows where you live."* - "Cook on Day One" - Reading Code - Changing Focus --- ## Justifying giving back (so you're not an ass) |Project |Our Code|Their Code|Scale of difference | |:---------| ----: | --------: | ----: | |API | 37,879| 435,689| *11x*| |Frontend | 33,549| 1,936,824| *57x*| **For every hour of work I do, I get a week back from the community.** .center[] --- ## Evaluating a project When you are choosing what to include in your application take some steps to assess your ability to contribute. **Hint**: *Projects that prioritize contribution and feedback are nearly always better than those that do not.* - find the docs and how to change them - find the support and how to give it - find the code and how to fix it --- ## Everybody needs sombody (to help) .center[] --- ## Step 1: Let them know you care - Star - Follow - Comment --- ## Step 2: Help Out - Triage and test issues - Test beta releases - Report bugs --- ## Step 3: So, you want to submit a pull request huh? - Clear problem statement - Clean up your commits (git rebase -i) - WRITE TESTS! - Be open to feedback - It's ok to be moderately annoying --- ## Step 4: Profit! .center[] --- ## Attracting contributors for your project - Keep dependancies up to date - Testing - Code style formalized and part of testing - Use well known tools and processes - Treat all code the same (same process, same review) no matter the source - Ask, like all the time --- class: center, middle ### Questions? 
jrjohnson
jrjohnson_