Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Contributing to Open Source: from beginning to ...
Search
Carlos Antonio
March 07, 2015
Technology
5
450
Contributing to Open Source: from beginning to lessons learned @ Tropical Ruby 2015
Carlos Antonio
March 07, 2015
Tweet
Share
More Decks by Carlos Antonio
See All by Carlos Antonio
Contribuindo para Open Source @ 1º Tech Day GURU- PR
carlosantoniodasilva
2
230
Os truques que o Rails não te contou @ RubyConf Brasil 2014
carlosantoniodasilva
20
830
Os truques que o Rails não te contou @ TDC Floripa 2014
carlosantoniodasilva
18
950
Tricks that Rails didn't tell you about @ RailsConf 2014
carlosantoniodasilva
76
11k
Integração de gems com o Rails @ RS on Rails
carlosantoniodasilva
2
160
Escrevendo Aplicações Melhores @ RubyConf Brasil
carlosantoniodasilva
3
150
Railties @ WyeWorks
carlosantoniodasilva
1
99
Plataformatec's Hacking Evenings @ RubyConf Uruguay
carlosantoniodasilva
1
93
1,2,3 Live! Frontend Optimizations @ GuruSC
carlosantoniodasilva
1
88
Other Decks in Technology
See All in Technology
2025advance01
minamizaki
0
130
人とAIとの共創を夢見た2か月 #共創AIミートアップ / Co-Creation with Keito-chan
kondoyuko
1
680
技術書典18結果報告
mutsumix
2
180
S3 Tables を図解でやさしくおさらい~基本から QuickSight 連携まで/s3-tables-illustrated-basics-quicksight
emiki
1
330
Introduction to Bill One Development Engineer
sansan33
PRO
0
240
令和トラベルQAのAI活用
seigaitakahiro
0
510
データ戦略部門 紹介資料
sansan33
PRO
1
3.1k
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
360k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
8
65k
Swiftは最高だよの話
yuukiw00w
2
280
金融システムをモダナイズするためのAmazon Elastic Kubernetes Service(EKS)ノウハウ大全
daitak
0
120
令和最新版TypeScriptでのnpmパッケージ開発
lycorptech_jp
PRO
0
110
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
The Cost Of JavaScript in 2023
addyosmani
49
8k
Done Done
chrislema
184
16k
Building Applications with DynamoDB
mza
95
6.4k
Producing Creativity
orderedlist
PRO
346
40k
Code Review Best Practice
trishagee
68
18k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
750
Embracing the Ebb and Flow
colly
85
4.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
How STYLIGHT went responsive
nonsquared
100
5.6k
For a Future-Friendly Web
brad_frost
178
9.7k
Side Projects
sachag
454
42k
Transcript
Contribu)ng+to+Open%Source from%beginning%to%lessons%learned
Many%people%have%difficul1es%to%do% their%first%open%source%contribu1on,% while%others%struggle%to%keep% ac1vely%contribu1ng. —"Carlos"Antonio
Carlos'Antonio @cantoniodasilva
Marley
None
None
None
None
None
None
None
Timeline:(<=#2008
None
None
None
None
Timeline:(2009
None
Timeline 2010!=>!maintaining!Plataformatec!OSS! projects,!ocasional!contribu9ons!to!Rails!and! other!projects.
Timeline 2011!=>!maintaining!Plataformatec!OSS! projects,!ocasional!contribu9ons!to!Rails!and! other!projects.
Timeline 2012!=>!Rafael!and!I!started!working! frequently!on!Rails. Life%got%in%the%way%=>%Burnout.
Timeline 2013!=>!Contribu,ng!again,!without!changing! the!way!I!worked.
I"got"married. <3#<3#<3
Timeline 2013!=>!Contribu,ng!again,!without!changing! the!way!I!worked. Life%got%in%the%way%=>%Burnout.
Timeline 2014!=>!Contribu,ng!again,!but!trying!new! ways!to!remain!ac,ve.
Timeline Today!=>!Par'cipate!while!balancing!my!'me! between!life,!work,!and!OSS. No#burnout.
None
Timeline Future!=>!Trailblazer! Core!Team?!?
Where%do%I%start? Contribu)ng+starts+with+using.
Where%do%I%start? Find%something%fun%(or%painful).
Where%do%I%start? Help%yourself.
How$do$I$start? Look$for$how/what$others$are$doing.
Rely%on%maintainers They%are%there%to%help%and%guide.
How$do$I$start? Use$some$of$your$free$%me$(and$a$bit$of$your$ work$%me$too).
Virtually)no#company)will)give)you) specific#-me)for)Open)Source. —#Carlos#Antonio
It#is#up#to#you!
How$do$I$start? Don't&be&afraid&to&share&your&work. ques%ons,)thoughts,)bug)reports,)small)patches,)typo)or)doc)fixes,) anything!
27.43%!of!all!pull!requests!get! rejected. —(Made(up(number
Who$cares? !\_()_/!
It#is#OK#to#be#wrong.
It#is#all#about learning!/!improving.
Celebrate!when!it!is!accepted.
Remember! Limit!your!&me.!Create!a!workflow.
Remember! Mo#va#on!vs!discipline. h"p:/ /www.wisdomina/on.com/screw3mo/va/on3what3you3need3is3discipline/
Be#nice. Saying'thank&you'doesn't'hurt'<3.
Ge#ng&prac%cal
Asking'ques%ons Avoid!the!issues!tracker. Try$Mailing$Lists,$Stack$Overflow,$IRC,$etc.
Repor&ng)issues Search'for'similar'issues!first.
Repor&ng)issues Try$to$give$as#much#informa-on$as$possible.
Repor&ng)issues Try$to$explain$how$to$reproduce$the$problem.
Sending'comments Add#something!to!the!discussion.
Sending'comments Don't&just&send&a&+1,&please.
None
None
Sending'patches Follow%the%project's*code*conven.ons.
Rails&indent&code&conven.on
Sending'patches Review!what!you've!done!before!submi4ng.
Sending'patches Try$to$give$as#much#context$as$possible.
Sending'patches Add/update)the)docs)and)the)changelog.
Sending'patches Tests?!?
TDD is#dead
Sending'patches Include(tests(when(possible.
Sending'patches Incomplete*patches!are!OK.
Sending'security)patches Never%send%them%to%the%issues%tracker.
Never%send%a%security%patch to#the#issues%tracker
Sending'security)patches Look$for$specific'emails,$or$no-fy'the' maintainers$directly.
RTFC Read%The%F*cking%Contribu)ng.md.
None
None
None
Maintaining!a!project
Split!the!work:!build!a!team Trust&people!to!do!the&right&thing™.
Ask!for!contribu+ons Help%them%help%you.
Turn%no#fica#ons(off%(some+mes) They%might%get%overwhelming.
Respond(to(issues!frequently Create&a&workflow&to&avoid&them&piling&up.
Tips%for%keeping%your%Open%Source% So2ware%issues%tracker%6dy —"José"Valim","Plataformatec
Can$I$contribute$to$Rails$right&now? Help%reviewing%open%issues%and%PRs%❤.
None
Using&the&merge&bu.on&is&easy,& ensuring&that&a&reported&bug&is&really& an&issue&and&that&the&code&in&a&PR&is& ready&to&be&merged&is&way&harder& and&(me*consuming. —*The*Rails*Team
RTFC Read%The%F*cking%Contribu)ng.md.
h"p:/ /guides.rubyonrails.org/
homework
Giving&back:&A&prac/cal&guide&to& OSS&contribu/ons —"Aaron"Pa)erson","Red"Hat
How$to$Contribute$to$Open$Source:$ Extensibility$from$Simplicity —"Ryan"Davis"+"AT&T"Interac4ve
Don't&feel&guilty&about¬& contribu2ng&to&open&source —"Julia"Evans","Stripe
I"some'mes"hear"people"say"“you% should%write%open%source%so2ware!”" like"it’s"a"universal"good."Don’t."Do"it" if"it"makes"sense"for"you,"if"it’s"worth" your"'me! —%Julia%Evans
Contribu)ng+to+Big+Bad+Open+ Source —"Sean"Doyle"+"Thoughtbot
Start%small
Stay%mo#vated
And$keep$patching!
Let$me$know$if$I$can$help$:)
Carlos'Antonio @cantoniodasilva
[email protected]
about.me/carlosantoniodasilva !"❤$%