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
95
1,2,3 Live! Frontend Optimizations @ GuruSC
carlosantoniodasilva
1
89
Other Decks in Technology
See All in Technology
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
29
10k
7月のガバクラ利用料が高かったので調べてみた
techniczna
3
750
制約理論(ToC)入門
recruitengineers
PRO
8
3.3k
生成AI時代のデータ基盤
shibuiwilliam
0
130
プロダクトの成長に合わせたアーキテクチャの段階的進化と成長痛、そして、ユニットエコノミクスの最適化
kakehashi
PRO
1
110
LLMエージェント時代に適応した開発フロー
hiragram
1
460
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.6k
認知戦の理解と、市民としての対抗策
hogehuga
0
410
エキサイトブログの トップページを 段階的にリプレイスする
zsp2088dev
0
120
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
18
5.9k
Evolution on AI Agent and Beyond - AGI への道のりと、シンギュラリティの3つのシナリオ
masayamoriofficial
0
270
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
How STYLIGHT went responsive
nonsquared
100
5.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
900
Producing Creativity
orderedlist
PRO
347
40k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
BBQ
matthewcrist
89
9.8k
Navigating Team Friction
lara
189
15k
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 !"❤$%