@michellesanver
Starting Open Source
How to make your first
contribution
Slide 2
Slide 2 text
@michellesanver
Slide 3
Slide 3 text
@michellesanver
WIIIIIIIE \o/
“Learn the most by
sharing your knowledge
with others” - @coderabbi
Slide 4
Slide 4 text
@michellesanver
Why Open Source?
“The promise of open source is better quality, higher
reliability, more flexibility, lower cost, and an end to
predatory vendor lock-in.” - opensource.org
Slide 5
Slide 5 text
@michellesanver
Better Quality
Slide 6
Slide 6 text
@michellesanver
Higher Reliability
Slide 7
Slide 7 text
@michellesanver
More Flexibility
Slide 8
Slide 8 text
@michellesanver
Lower Cost
Slide 9
Slide 9 text
@michellesanver
End to predatory
vendor lock-in
Slide 10
Slide 10 text
@michellesanver
Convinced Yet?
Slide 11
Slide 11 text
@michellesanver
How many of you saw
the keynote this
morning?
Slide 12
Slide 12 text
@michellesanver
To keep you entertained
Count the song
references.
Slide 13
Slide 13 text
@michellesanver
Contributing to Open Source
In 10 steps
Slide 14
Slide 14 text
@michellesanver
Step 1: Choose
The Project
Slide 15
Slide 15 text
@michellesanver
Be passionate about it
Step 1: Choose the project
Slide 16
Slide 16 text
@michellesanver
What are your ‘friends’ doing?
Step 1: Choose the project
Slide 17
Slide 17 text
@michellesanver
Slide 18
Slide 18 text
@michellesanver
Activity
Step 1: Choose the project
Slide 19
Slide 19 text
@michellesanver
Your Skills
Step 1: Choose the project
Slide 20
Slide 20 text
@michellesanver
Step 1: Choose the project
Slide 21
Slide 21 text
@michellesanver
Step 1: Choose the project
Ready to change the world?
https://www.codemontage.com
{code} montage empowers coders to
improve their impact on the world.
Slide 22
Slide 22 text
@michellesanver
Erm.. License?
Step 1: Choose the project
Slide 23
Slide 23 text
@michellesanver
Step 2: Install
The Project
Slide 24
Slide 24 text
@michellesanver
Step 2: Install The Project
Body Text
Slide 25
Slide 25 text
Do you like
vagrant now?
@michellesanver
Slide 26
Slide 26 text
@michellesanver
Step 3:
Investigation
Slide 27
Slide 27 text
@michellesanver
Step 4: Hiiiii! :)
Slide 28
Slide 28 text
@michellesanver
Step 4: Hiiiii! :)
Observe the responses
(Should I stay, or should I go?)
Slide 29
Slide 29 text
@michellesanver
Step 5: What can I do?
Slide 30
Slide 30 text
@michellesanver
Step 5: What can I do?
It’s not your project.
(But nothing stops you from branching...)
Slide 31
Slide 31 text
@michellesanver
Communicate!
In open source - Communication is key
Slide 32
Slide 32 text
@michellesanver
Step 6: How...?
Slide 33
Slide 33 text
@michellesanver
Step 6: How…?
Read The Guidelines
Slide 34
Slide 34 text
@michellesanver
Step 6: How…?
It’s “just” code.
Slide 35
Slide 35 text
@michellesanver
Step 6: How…?
If that scares you...
Slide 36
Slide 36 text
@michellesanver
Step 6: How…?
It’s private, for now.
(If you want it to be)
Slide 37
Slide 37 text
@michellesanver
Step 7: Just do it
Slide 38
Slide 38 text
@michellesanver
Step 7: Just do it
Commit often
$ git commit -m 'Michelle will be pleased <3'
Slide 39
Slide 39 text
@michellesanver
Step 7: Just do it
Possibly squash your commits afterwards
Slide 40
Slide 40 text
@michellesanver
Step 7: Just do it
Learn Git
http://try.github.io
http://gitimmersion.com
http://book.git-scm.com
Slide 41
Slide 41 text
@michellesanver
Step 8: Push it
(Just push it push it)
Slide 42
Slide 42 text
@michellesanver
Step 8: Push it (push it real good)
$ git push
Slide 43
Slide 43 text
@michellesanver
Step 9: The pull
request
Slide 44
Slide 44 text
@michellesanver
Step 9: The pull request
Time to show the world
(Except those poor sods without Internet)
Slide 45
Slide 45 text
@michellesanver
Step 9: The pull request
Don’t worry
(Be happy)
Slide 46
Slide 46 text
@michellesanver
Step 9: The pull request
It’s just a button
(And a form...)
@michellesanver
Made websites under a nickname…
Who I was
Slide 64
Slide 64 text
@michellesanver
No portfolio: Unemployable
Who I was
Slide 65
Slide 65 text
@michellesanver
So… I started my own company!
(Unsuccessfully)
Who I was
Slide 66
Slide 66 text
@michellesanver
I had *NO* code confidence
Who I was
Slide 67
Slide 67 text
@michellesanver
Why I wanted to
contribute
Slide 68
Slide 68 text
@michellesanver
I felt ashamed for
*not* doing it
Slide 69
Slide 69 text
@michellesanver
I found a cool project, I
wanted to help them improve.
Slide 70
Slide 70 text
@michellesanver
Obstacles
Slide 71
Slide 71 text
@michellesanver
- Davey Shafik
“I feared that I really had no clue
what I was doing and people were
going to make fun of me, and I also
didn’t know what to do!”
Slide 72
Slide 72 text
@michellesanver
- Lorna Mitchell
“Honestly, I just didn't realise my
efforts would be useful or
welcome.“
Slide 73
Slide 73 text
@michellesanver
- Eli White
“I was trying to convince NASA,
who I worked for. To allow me to
open source some projects I'd
created there. And failed.”
Slide 74
Slide 74 text
@michellesanver
My Obstacles
Technology & Fear of public ridicule
Slide 75
Slide 75 text
@michellesanver
Slide 76
Slide 76 text
@michellesanver
Conferences
Obstacles: The fear
http://joind.in
http://callingallpapers.com
http://php.net/conferences
Slide 77
Slide 77 text
@michellesanver
Usergroups
Obstacles: The fear
https://www.meetup.com/Zurich-Drupal-Meetup
Slide 78
Slide 78 text
@michellesanver
Obstacles: The fear
IRC & Slack
#phpc
#phpmentoring
http://freenode.net
https://phpwomen.signup.team
Slide 79
Slide 79 text
@michellesanver
Body Text
Mentoring
http://phpmentoring.org
Matthew Turland @elazar
Slide 80
Slide 80 text
@michellesanver
Body Text
Mentoring
Rafael Dohms @rdohms & Davey Shafik @dshafik
Slide 81
Slide 81 text
@michellesanver
Body Text
Mentoring
Igor Wiedler
Slide 82
Slide 82 text
@michellesanver
Mentoring
http://phpmentoring.org
Get a mentor… Or 5
Slide 83
Slide 83 text
@michellesanver
Slide 84
Slide 84 text
@michellesanver
Who I am now
Still code passionate
Slide 85
Slide 85 text
@michellesanver
Slide 86
Slide 86 text
@michellesanver
Who I am now
A conference addict and speaker
Slide 87
Slide 87 text
@michellesanver
Who I am now
Still afraid to contribute
Slide 88
Slide 88 text
@michellesanver
Who I am now
Ran a *successful* company