I will be a developer for another 37 years; and by that time I might have created or maintained
500 to 1000 open source projects. In the last 3 years it is already a become maintenance challenge
and in another 37 years I may be begging to retire. That is, unless we can solve the problem today:
how to go from 1 to 1000 open source projects and still enjoy yourself.
This talk will challenge much of the dogma of open source and will make you rethink what is open source? And how the hell do you live with it once its written?
13. Jamis vs Dr Nic
Proof of Jamis’s awesomeness
Downloads
500000
375000
250000
125000
0
Capistrano Composite Keys NewGem RubiGen
source: http://gems.rubyforge.org/stats.html
14. Jamis vs Dr Nic
Proof of Jamis’s awesomeness
Downloads
500000
375000
250000
125000
0
Capistrano Composite Keys NewGem RubiGen
source: http://gems.rubyforge.org/stats.html
15. Jamis vs Dr Nic
Proof of Jamis’s awesomeness
Downloads
500000
375000
250000
125000
0
Capistrano Composite Keys NewGem RubiGen
source: http://gems.rubyforge.org/stats.html
16. Jamis vs Dr Nic
Proof of Jamis’s awesomeness
Downloads
500000
375000
250000
125000
0
Capistrano Composite Keys NewGem RubiGen
source: http://gems.rubyforge.org/stats.html
17. Jamis vs Dr Nic
Proof of Jamis’s awesomeness
Downloads
500000
375000
250000
125000
0
Capistrano Composite Keys NewGem RubiGen
source: http://gems.rubyforge.org/stats.html
18. !
Disclaimer
My projects aren’t wildly popular
19. 80
60
40
20
0
mid-2007 mid-2008 mid-2009
I just have heaps of them
20. Some formulas…
X projects/yr x 40 years = ?
5 projects/yr x 40 years = 200
25 projects/yr x 40 years = 1000
1000 projects x ½hr/wk = 500hr/wk
There are only 168 hrs in a week
39. • Test frameworks: ...............
• Reuse processes: rake
• Create tools: newgem
• Promote your process: blog
Aim: zero process cost
40. 5 mins to run tests
30 mins looking at bug reports
Aim: zero defects
41. 5 mins to run tests
0 7.5 15 22.5 30
30 mins looking at bug reports
Aim: zero defects
42. $ cucumber features/development.feature
Scenario: Generate RubyGem
Given this project is active project folder
And "pkg" folder is deleted
When I invoke task "rake gem"
Then folder "pkg" is created
And file with name matching "pkg/*.gem" is created
1 scenario (1 passed)
6 steps (6 passed)
QA test packaging
43. Aim for zero
• Don’t use it? Don’t maintain it
• Manage expectations
• Community self-sufficiency
• Zero process cost
• Zero defects
44. Use your spare time
• Find a hobby
• Talk to your spouse
• Create more projects
45. Create a new project
newgem my_project
cd my_project
git init
git add .
git commit -m "initial"
github create-from-local