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
460
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
240
Os truques que o Rails não te contou @ RubyConf Brasil 2014
carlosantoniodasilva
20
840
Os truques que o Rails não te contou @ TDC Floripa 2014
carlosantoniodasilva
18
960
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
96
1,2,3 Live! Frontend Optimizations @ GuruSC
carlosantoniodasilva
1
89
Other Decks in Technology
See All in Technology
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
310
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
450
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
2
260
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
1
820
Android Audio: Beyond Winning On It
atsushieno
0
2.4k
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
730
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
270
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.6k
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
490
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
190
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
95
14k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Statistics for Hackers
jakevdp
799
220k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
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 !"❤$%