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
Tending Your Open Source Garden
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Brandon Keepers
PRO
June 26, 2014
Technology
1.1k
2
Share
Tending Your Open Source Garden
Brandon Keepers
PRO
June 26, 2014
More Decks by Brandon Keepers
See All by Brandon Keepers
Automating Software Development
bkeepers
PRO
3
580
Building the GitHub workspace app
bkeepers
PRO
1
460
Contributing to Your Career
bkeepers
PRO
4
820
A Maturity Model for Embracing Open Source Software
bkeepers
PRO
3
990
Open Source Principles for Internal Engineering Teams
bkeepers
PRO
8
1.5k
Carbon, Automobiles, Bebop & Fashion
bkeepers
PRO
1
650
Tending Your Open Source Garden, v2
bkeepers
PRO
1
710
The Loyal Renegade
bkeepers
PRO
3
1k
A Chronicle of the Nebulous HTML5
bkeepers
PRO
11
1.2k
Other Decks in Technology
See All in Technology
AIのための特別なアーキテクチャはいらない 0→1開発で実践した設計原則とガードレール
kaminashi
0
120
freeeで運用しているAIQAについて
qatonchan
1
590
フロントエンドの相手が変わった - AIが加わったWebの新しいインターフェース設計
azukiazusa1
33
11k
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
500
Sociotechnical Architecture Reviews: Understanding Teams, not just Artefacts
ewolff
1
170
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
720
古今東西SRE
okaru
2
190
ワールドカフェ再び、そしてゴール・ルール・ロール・ツール / World Café Revisited, and the Goals-Rules-Roles-Tools
ks91
PRO
0
160
拝啓、あの夏の僕へ〜あなたも知っているApp Runnerの世界〜
news_it_enj
0
240
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
200
マンション備え付けのネットワークとLTE回線を組み合わせた ネットワークの安定化の考案
harutiro
1
130
iOS・Androidの文字サイズ設定をWebViewに!モバイルUIのアクセシビリティTips
shincarpediem
2
100
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
698
190k
Utilizing Notion as your number one productivity tool
mfonobong
4
300
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
The SEO Collaboration Effect
kristinabergwall1
1
440
What's in a price? How to price your products and services
michaelherold
247
13k
Evolving SEO for Evolving Search Engines
ryanjones
0
190
Practical Orchestrator
shlominoach
191
11k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
300
Accessibility Awareness
sabderemane
1
110
Producing Creativity
orderedlist
PRO
348
40k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Exploring anti-patterns in Rails
aemeredith
3
350
Transcript
http://commons.wikimedia.org/wiki/File:Cress_keyboard-3_sprouting_other_side.jpg Garden @BKEEPERS TENDING YOUR OPEN SOURCE !
http://en.wikipedia.org/wiki/Garden_gnome_liberationists "bkeepers
I ♥ ⚘
I like writing software because I like gardening. https://www.flickr.com/photos/91663396@N00/7080354723/
Open Source is like community gardening. https://www.flickr.com/photos/antoinettevanderieth/8753016923
P L A N C U L T I V
A T E S O W W A T E R M U L C H P R U N E H A R V E S T
M Y G A R D E N S
M Y G A R D E N S dotenv
M Y G A R D E N S dotenv
delayed_job
M Y G A R D E N S dotenv
delayed_job qu
M Y G A R D E N S dotenv
delayed_job qu tinder
M Y G A R D E N S dotenv
delayed_job qu tinder rosie
M Y G A R D E N S dotenv
delayed_job qu tinder rosie github-notifications
Large open source projects are like farming… https://www.flickr.com/photos/messycupcakes/7722551044/
…or land management. https://www.flickr.com/photos/47096398@N08/7462466876
Steve Klabnik http://words.steveklabnik.com/how-to-be-an-open-source-gardener
I’m talking about gardening
Plan https://www.flickr.com/photos/btobin/4456582998
What are your motivations?
The ultimate goal is to produce a harvest.
How much time can you dedicate? https://www.flickr.com/photos/ugardener/3553160869
Open source is hard work, but it often leads to
better software. https://www.flickr.com/photos/ugardener/3553160869
Cultivate https://www.flickr.com/photos/librariesrock/3760104913
Pick a good name.
What makes a name “good”? 1. Searchable 2. Memorable 3.
Suggestive 4. Not too boring 5. Not too weird 6. Not too trendy
None
Q U
Q U OMG, a Better Background Queue!
O M G B B Q OMG, a Better Background
Queue!
Write documentation.
one-line description longer explanation What makes a good README?
one-line description longer explanation how to install it
one-line description longer explanation how to install it how to
use it
how to contribute
See github.com/trending for examples
Choose a license. https://www.flickr.com/photos/andrewprickett/6649056779/
ChooseALicense.com
Follow conventions. https://www.flickr.com/photos/cccpxokkeu/8580600558/
Sow https://www.flickr.com/photos/nateswartphoto/5623220460
This is the easiest part.
Tell the world about it.
Blog about it.
!
Now, ready to work?
Water http://en.wikipedia.org/?title=Talk:Rainbow/Archive_1#mediaviewer/File:Self_Made_Rainbow.JPG
Consistency and diligence are crucial.
Follow your own contribution guidelines.
Invite people in.
Always be hospitable.
Give it time. https://www.flickr.com/photos/onegiantleap/4124211492
Mulch https://www.flickr.com/photos/chiotsrun/3247946933
Only add features that you want to maintain. https://www.flickr.com/photos/ajbatac/7179488176
Tests guard against erosion.
Continuous integration gives contributors confidence.
D O N ’ T F E E D T
H E T R O L L S https://www.flickr.com/photos/eldave/3332622539
Prune https://www.flickr.com/photos/jeremyhiebert/5454990146
Remove features that you don’t want to maintain.
Split them into separate repositories.
dotenv-deployment
Use semantic versioning https://www.flickr.com/photos/jimfischer/8384524415 1.2.6 minor patch major semver.org
Use semantic versioning https://www.flickr.com/photos/jimfischer/8384524415 1.2.6 minor patch major } backwards-compatibile
bug fixes semver.org
Use semantic versioning https://www.flickr.com/photos/jimfischer/8384524415 1.2.6 minor patch major } backwards-compatible
functionality semver.org
Use semantic versioning https://www.flickr.com/photos/jimfischer/8384524415 1.2.6 minor patch major } incompatible
API changes semver.org
Deprecate features in minor versions, remove them in major versions
https://www.flickr.com/photos/jimfischer/8384524415
1.x.x https://www.flickr.com/photos/jimfischer/8384524415 if using_deprecated_feature? warn "[DEPRECATION] This feature has been
" + "deprecated and will be removed in 2.0.", caller[0] # deprecated functionality here end
Keep a changelog. http://bit.ly/1mfVB3d
Changelog.md http://bit.ly/1mfVB3d
Harvest
Give it away when it stops being fun.
…unless you still depend on it.
Clearly state the project’s status.
G R I T
None
None
None
Learn from your mistakes.
“For the record, I am a terrible open source maintainer.
— @bkeepers - 7 Jan 2014
Thank You " bkeepers