Upgrade to Pro — share decks privately, control downloads, hide ads and more …

'ProTalking' Your Way Into Open Source

'ProTalking' Your Way Into Open Source

If you want to get involved in open source but keep talking yourself out of it, let me show you how to take that first step. I'll cover the mechanics of contributing, from saying hello and installing the project to selecting a bug, your first pull request and code review. If you're already a contributor, contribute to my talk and share your valuable ideas.

Michelle Sanver

February 21, 2014
Tweet

More Decks by Michelle Sanver

Other Decks in Programming

Transcript

  1. “The promise of open source is better quality, higher reliability,

    more flexibility, lower cost, and an end to predatory vendor lock-in.” - opensource.org @michellesanver #CommunityWorks
  2. If I got enough nutritional value from code… ! I

    would eat that and nothing else. @michellesanver #CommunityWorks Who I was
  3. @michellesanver #CommunityWorks I found a cool project, I wanted to

    help them improve. Why I wanted to contribute
  4. Videos about PHP!! In fact.... If you want to see

    an earlier version of this talk @michellesanver #CommunityWorks End to predatory vendor lock-in
  5. Ready to change the world? https://www.codemontage.com {code} montage empowers coders

    to improve their impact on the world. @michellesanver #CommunityWorks Choosing a project
  6. Obstacles It was a tie. ! 1) Fear, that I

    really had no clue what I was doing and people were going to make fun of me.
 
 2) Finding something to do! 
 And the first one never really went away… I still worry when I contribute to things in say, python, or javascript, or something other than PHP where people know me. @michellesanver #CommunityWorks Obstacles Davey Shafik
  7. Obstacles Honestly, I just didn't realise my efforts would be

    useful or welcome. ! It was only because I was deeply into a tool (joind.in of course!) that I eventually got told to fix some things myself, as a speaker and a conference organiser, I was just nagging Chris far too much. I was a project lead I think before I contributed at all to any other project, so I was a pretty slow starter! ! Now I just assume everyone appreciates the effort even if I'm doing it wrong, and I get in! @michellesanver #CommunityWorks Lorna Mitchell
  8. I'm not 100% sure when my first (open source) contribution

    took place.I think it was around 1997-1998, and it probably was either some small things inside the Linux kernel. ! The biggest issue for (starting) contributors I think is they are overwhelmed by the code and current userbase. It's hard to find a place in such a group, and even though most of them would be perfectly capable of contributing, they won't because of fear of rejection, mockery etc. @michellesanver #CommunityWorks Obstacles Joshua Thijssen
  9. My FIRST hurdle was having too many hobbies and not

    wanting to just do it. As a hobby. ! SECOND hurdle. Was trying to convince NASA, who I worked for. To allow me to open source some projects I'd created there. And failed. ! THIRD hurdle, was trying to contribute to OSS projects. While already now a senior programmer with a decade+ of experience. Yet because I had no OSS-karma. No one wanted my code, or to trust me. " @michellesanver #CommunityWorks Obstacles Eli White
  10. When I contributed to an open source project for the

    first time, the biggest obstacle for me was getting over my fear of doing something wrong and being publicly shamed. " ! Actually, that's not true. That was the biggest obstacle when I wanted to contribute to an open source project for the second time. When I first tried to contribute to an open source project, I was full of excitement and jumped right in. My submission was not accepted, which I fully expected because I was new to the project. ! What I did not expect was that instead of constructive criticism or a "thanks anyway, but no", the response I received was rude and insulting. I did not contribute to another project for a year and a half after that for fear of being ridiculed again. Thanks to a very supportive network of friends in the PHP community, though, I was able to overcome my fear and am back to contributing where I can." @michellesanver #CommunityWorks Obstacles Beth Tucker Long
  11. @michellesanver #CommunityWorks $ git remote add upstream https://github.com/protalk/protalk $ git

    fetch upstream $ git merge upstream/master Keep yourself updated Git
  12. git help, config, and init.! remote, fetch, pull, let’s edit.!

    diff, add, status, commit. you’re doin’ git.! ! log, branch, checkout, that’s it!! checkout, merge, rebase, don’t quit.! clean, reset, tag, push those bits! you’re doin’ git!! ! fork and clone all the repos you know,! patches and pull requests, you’ll steal the git show.! you’re doin’ git. you’re doing it!! check git blame and see your username.! hope you ran the tests before your commit,! or other devs will think you’re an idiot.! you’re doin’ git. (x4)! ! Exit. @michellesanver #CommunityWorks You're Doin' Git" (c) 2013 Jeremy C. Lindblom <[email protected]>
  13. @michellesanver #CommunityWorks You know how to code, right!?! If not

    learn it, it’s not that hard ;) Make Your Changes
  14. @michellesanver #CommunityWorks $ git push (Or just commit it in

    the GitHub gui client) Push it! (Push it real good)
  15. @michellesanver #CommunityWorks Linking to the issuetracker! #1337 ! close, closes,

    closed, fix, fixes, fixed, resolve, resolves, resolved The Pull Request
  16. @michellesanver #CommunityWorks PLZ RATE MY TALK!! ;-)" (Or contribute to

    joind.in …) ! https://joind.in/10700 Thank you!