SlideShare a Scribd company logo
1 of 46
Living with
1000 Open Source
Projects
Dr Nic Williams, tallest person at Mocra
@drnic · http://drnicwilliams.com · http://mocra.com
Pacific Ocean Trips
Pacific Ocean Trips
RubyConf 2007:
9am Sunday 50% Awake
Pacific Ocean Trips
RubyConf 2007:
9am Sunday 50% Awake
FutureRuby 2009:
10am Sunday 50% Canadian
Pacific Ocean Trips
RubyConf 2007:
9am Sunday 50% Awake
FutureRuby 2009:
10am Sunday 50% Canadian
Two types
(OSS project)
founders…
A. Nurture and converse

 
 “Do you care?”
B. Previously A
  “Do it yourself”
Life as an A-type is awesome…
Life as an A-type is awesome…
                  until it is not
“Saying Goodbye”
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
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
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
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
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
!
           Disclaimer


My projects aren’t wildly popular
80


60


40


20


 0
     mid-2007   mid-2008   mid-2009




I just have heaps of them
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
OSS projects don’t scale
but neither does raising
   pets nor children
A dog trainer




having a pet dog vs maintaining many dogs
A teacher




having a pet child vs maintaining many children
An OSS owner




having a pet project vs maintaining many projects
What to maintain?




pet projects and libraries you need each day
and abandon the rest




               http://www.flickr.com/photos/robbyrussell/243693247/
Maintenance Goal:
  Zero Effort
Aim: Manage expectations
•   Publish project status

            •   Facilitate group
                therapy

            •   Forward emails to
                mailing list




Aim: Reduce bad karma
Aim: Community self-sufficiency
Centralised patches
Centralised patches
$ gem install defunkt-github

#   super lazy
$   cd your/project
$   gh pull username --merge
$   rake test
$   git push

# update History.txt for next release




     Use: Command line tools
Add: Admins/contributors
Aim: Zero maintenance cost
require 'rubygems'
gem 'hoe', '>= 2.1.0'
require 'hoe'

Hoe.plugin :newgem
Hoe.plugin :cucumberfeatures

Hoe.spec 'looksee' do
  developer 'George Ogata', 'george.ogata@gmail.com'
end




  Packaging: Hoe/Echoe for Gems
ChocTop.new do   |s|
  s.host     =   'commitchat.com'
  s.base_url =   'http://commitchat.com/dl'
  s.remote_dir   = '/opt/apps/commitchat/dl'

  s.background_file = "dmgbg.png"
  s.volume_icon = 'VolumeIcon.icns'
  s.app_icon_position = [106, 83]
  s.applications_icon_position = [422, 83]
  s.applications_icon = "dmgappico.png"
end




   Packaging: ChocTop for DMGs
Packaging: ChocTop for DMGs
•   Test frameworks: ...............
•   Reuse processes: rake
•   Create tools: newgem
•   Promote your process: blog




Aim: zero process cost
5 mins to run tests




30 mins looking at bug reports

     Aim: zero defects
5 mins to run tests




0       7.5     15     22.5      30



30 mins looking at bug reports

     Aim: zero defects
$ 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
Aim for zero
•   Don’t use it? Don’t maintain it
•   Manage expectations
•   Community self-sufficiency
•   Zero process cost
•   Zero defects
Use your spare time
•   Find a hobby
•   Talk to your spouse
•   Create more projects
Create a new project
newgem my_project
cd my_project
git init
git add .
git commit -m "initial"
github create-from-local
Thank you Canada




            Dr Nic Williams
          drnicwilliams.com · @drnic

More Related Content

Similar to Living With 1000 Open Source Projects

DevOps and the Importance of Single Source Code Repos 
DevOps and the Importance of Single Source Code Repos DevOps and the Importance of Single Source Code Repos 
DevOps and the Importance of Single Source Code Repos Perforce
 
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileEngineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileKenAtIndeed
 
Testing Storage Systems: Methodology and Common Pitfalls
Testing Storage Systems: Methodology and Common PitfallsTesting Storage Systems: Methodology and Common Pitfalls
Testing Storage Systems: Methodology and Common PitfallsJohn Constable
 
2019 Top Lessons Learned Since the Phoenix Project Was Released
2019 Top Lessons Learned Since the Phoenix Project Was Released2019 Top Lessons Learned Since the Phoenix Project Was Released
2019 Top Lessons Learned Since the Phoenix Project Was ReleasedGene Kim
 
What can Bioinformaticians learn from YouTube?
What can Bioinformaticians learn from YouTube?What can Bioinformaticians learn from YouTube?
What can Bioinformaticians learn from YouTube?Matt Wood
 
Achievement Unlocked: Drive development, increase velocity, and write blissfu...
Achievement Unlocked: Drive development, increase velocity, and write blissfu...Achievement Unlocked: Drive development, increase velocity, and write blissfu...
Achievement Unlocked: Drive development, increase velocity, and write blissfu...All Things Open
 
BeaconsAI engr 245 lean launchpad stanford 2019
BeaconsAI engr 245 lean launchpad stanford 2019BeaconsAI engr 245 lean launchpad stanford 2019
BeaconsAI engr 245 lean launchpad stanford 2019Stanford University
 
MonoRails - GoGaRuCo 2012
MonoRails - GoGaRuCo 2012MonoRails - GoGaRuCo 2012
MonoRails - GoGaRuCo 2012jackdanger
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable productJulian Simpson
 
Seaside - Why should you care? (OSDC.fr 2010)
Seaside - Why should you care? (OSDC.fr 2010)Seaside - Why should you care? (OSDC.fr 2010)
Seaside - Why should you care? (OSDC.fr 2010)jfitzell
 
Cheapass.in — presented at JSFoo 2016
Cheapass.in — presented at JSFoo 2016Cheapass.in — presented at JSFoo 2016
Cheapass.in — presented at JSFoo 2016Aakash Goel
 
The Unicorn Project and the Five Ideals.pdf
The Unicorn Project and the Five Ideals.pdfThe Unicorn Project and the Five Ideals.pdf
The Unicorn Project and the Five Ideals.pdfVMware Tanzu
 
The Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentThe Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentMatt Stine
 
My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015
My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015
My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015gdusbabek
 
Leading A DevOps Transformation: Lessons Learned
Leading A DevOps Transformation: Lessons LearnedLeading A DevOps Transformation: Lessons Learned
Leading A DevOps Transformation: Lessons LearnedGene Kim
 
Splunk September 2023 User Group PDX.pdf
Splunk September 2023 User Group PDX.pdfSplunk September 2023 User Group PDX.pdf
Splunk September 2023 User Group PDX.pdfAmanda Richardson
 
Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them Optimizely
 
Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them Optimizely
 

Similar to Living With 1000 Open Source Projects (20)

Ignite Zurich Newsweek
Ignite Zurich   NewsweekIgnite Zurich   Newsweek
Ignite Zurich Newsweek
 
DevOps and the Importance of Single Source Code Repos 
DevOps and the Importance of Single Source Code Repos DevOps and the Importance of Single Source Code Repos 
DevOps and the Importance of Single Source Code Repos 
 
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileEngineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
 
Testing Storage Systems: Methodology and Common Pitfalls
Testing Storage Systems: Methodology and Common PitfallsTesting Storage Systems: Methodology and Common Pitfalls
Testing Storage Systems: Methodology and Common Pitfalls
 
2019 Top Lessons Learned Since the Phoenix Project Was Released
2019 Top Lessons Learned Since the Phoenix Project Was Released2019 Top Lessons Learned Since the Phoenix Project Was Released
2019 Top Lessons Learned Since the Phoenix Project Was Released
 
What can Bioinformaticians learn from YouTube?
What can Bioinformaticians learn from YouTube?What can Bioinformaticians learn from YouTube?
What can Bioinformaticians learn from YouTube?
 
Achievement Unlocked: Drive development, increase velocity, and write blissfu...
Achievement Unlocked: Drive development, increase velocity, and write blissfu...Achievement Unlocked: Drive development, increase velocity, and write blissfu...
Achievement Unlocked: Drive development, increase velocity, and write blissfu...
 
MVP Defined
MVP DefinedMVP Defined
MVP Defined
 
BeaconsAI engr 245 lean launchpad stanford 2019
BeaconsAI engr 245 lean launchpad stanford 2019BeaconsAI engr 245 lean launchpad stanford 2019
BeaconsAI engr 245 lean launchpad stanford 2019
 
MonoRails - GoGaRuCo 2012
MonoRails - GoGaRuCo 2012MonoRails - GoGaRuCo 2012
MonoRails - GoGaRuCo 2012
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable product
 
Seaside - Why should you care? (OSDC.fr 2010)
Seaside - Why should you care? (OSDC.fr 2010)Seaside - Why should you care? (OSDC.fr 2010)
Seaside - Why should you care? (OSDC.fr 2010)
 
Cheapass.in — presented at JSFoo 2016
Cheapass.in — presented at JSFoo 2016Cheapass.in — presented at JSFoo 2016
Cheapass.in — presented at JSFoo 2016
 
The Unicorn Project and the Five Ideals.pdf
The Unicorn Project and the Five Ideals.pdfThe Unicorn Project and the Five Ideals.pdf
The Unicorn Project and the Five Ideals.pdf
 
The Seven Wastes of Software Development
The Seven Wastes of Software DevelopmentThe Seven Wastes of Software Development
The Seven Wastes of Software Development
 
My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015
My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015
My Futuristic Vision of the Future of Cassandra's Future - NGCC 2015
 
Leading A DevOps Transformation: Lessons Learned
Leading A DevOps Transformation: Lessons LearnedLeading A DevOps Transformation: Lessons Learned
Leading A DevOps Transformation: Lessons Learned
 
Splunk September 2023 User Group PDX.pdf
Splunk September 2023 User Group PDX.pdfSplunk September 2023 User Group PDX.pdf
Splunk September 2023 User Group PDX.pdf
 
Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them
 
Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them Product Experimentation Pitfalls & How to Avoid Them
Product Experimentation Pitfalls & How to Avoid Them
 

More from Dr Nic Williams

RailsConf Keynote - History of Ruby
RailsConf Keynote - History of RubyRailsConf Keynote - History of Ruby
RailsConf Keynote - History of RubyDr Nic Williams
 
What is your job at your ruby club?
What is your job at your ruby club?What is your job at your ruby club?
What is your job at your ruby club?Dr Nic Williams
 
Integration Testing With Cucumber How To Test Anything J A O O 2009
Integration Testing With  Cucumber    How To Test Anything    J A O O 2009Integration Testing With  Cucumber    How To Test Anything    J A O O 2009
Integration Testing With Cucumber How To Test Anything J A O O 2009Dr Nic Williams
 
Rubygem Dev And Workflow
Rubygem Dev And WorkflowRubygem Dev And Workflow
Rubygem Dev And WorkflowDr Nic Williams
 
Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008
Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008
Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008Dr Nic Williams
 
Meta Meta Programming - EuRuKo2008
Meta Meta Programming -  EuRuKo2008Meta Meta Programming -  EuRuKo2008
Meta Meta Programming - EuRuKo2008Dr Nic Williams
 
RubyEnRails2007 - Dr Nic Williams - Keynote
RubyEnRails2007 - Dr Nic Williams - KeynoteRubyEnRails2007 - Dr Nic Williams - Keynote
RubyEnRails2007 - Dr Nic Williams - KeynoteDr Nic Williams
 
RubyEnRails2007 - Dr Nic Williams - DIY Syntax
RubyEnRails2007 - Dr Nic Williams - DIY SyntaxRubyEnRails2007 - Dr Nic Williams - DIY Syntax
RubyEnRails2007 - Dr Nic Williams - DIY SyntaxDr Nic Williams
 

More from Dr Nic Williams (9)

RailsConf Keynote - History of Ruby
RailsConf Keynote - History of RubyRailsConf Keynote - History of Ruby
RailsConf Keynote - History of Ruby
 
What is your job at your ruby club?
What is your job at your ruby club?What is your job at your ruby club?
What is your job at your ruby club?
 
Integration Testing With Cucumber How To Test Anything J A O O 2009
Integration Testing With  Cucumber    How To Test Anything    J A O O 2009Integration Testing With  Cucumber    How To Test Anything    J A O O 2009
Integration Testing With Cucumber How To Test Anything J A O O 2009
 
Rubygem Dev And Workflow
Rubygem Dev And WorkflowRubygem Dev And Workflow
Rubygem Dev And Workflow
 
Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008
Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008
Everyone Can Participate - Dr Nic Williams - Railssummit Brazil 2008
 
Meta Meta Programming - EuRuKo2008
Meta Meta Programming -  EuRuKo2008Meta Meta Programming -  EuRuKo2008
Meta Meta Programming - EuRuKo2008
 
Why Use Rails by Dr Nic
Why Use Rails by  Dr NicWhy Use Rails by  Dr Nic
Why Use Rails by Dr Nic
 
RubyEnRails2007 - Dr Nic Williams - Keynote
RubyEnRails2007 - Dr Nic Williams - KeynoteRubyEnRails2007 - Dr Nic Williams - Keynote
RubyEnRails2007 - Dr Nic Williams - Keynote
 
RubyEnRails2007 - Dr Nic Williams - DIY Syntax
RubyEnRails2007 - Dr Nic Williams - DIY SyntaxRubyEnRails2007 - Dr Nic Williams - DIY Syntax
RubyEnRails2007 - Dr Nic Williams - DIY Syntax
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Recently uploaded (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Living With 1000 Open Source Projects

  • 1. Living with 1000 Open Source Projects Dr Nic Williams, tallest person at Mocra @drnic · http://drnicwilliams.com · http://mocra.com
  • 3. Pacific Ocean Trips RubyConf 2007: 9am Sunday 50% Awake
  • 4. Pacific Ocean Trips RubyConf 2007: 9am Sunday 50% Awake FutureRuby 2009: 10am Sunday 50% Canadian
  • 5. Pacific Ocean Trips RubyConf 2007: 9am Sunday 50% Awake FutureRuby 2009: 10am Sunday 50% Canadian
  • 7. A. Nurture and converse “Do you care?”
  • 8. B. Previously A “Do it yourself”
  • 9. Life as an A-type is awesome…
  • 10. Life as an A-type is awesome… until it is not
  • 11.
  • 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
  • 21. OSS projects don’t scale but neither does raising pets nor children
  • 22. A dog trainer having a pet dog vs maintaining many dogs
  • 23. A teacher having a pet child vs maintaining many children
  • 24. An OSS owner having a pet project vs maintaining many projects
  • 25. What to maintain? pet projects and libraries you need each day
  • 26. and abandon the rest http://www.flickr.com/photos/robbyrussell/243693247/
  • 27. Maintenance Goal: Zero Effort
  • 29. Publish project status • Facilitate group therapy • Forward emails to mailing list Aim: Reduce bad karma
  • 33. $ gem install defunkt-github # super lazy $ cd your/project $ gh pull username --merge $ rake test $ git push # update History.txt for next release Use: Command line tools
  • 36. require 'rubygems' gem 'hoe', '>= 2.1.0' require 'hoe' Hoe.plugin :newgem Hoe.plugin :cucumberfeatures Hoe.spec 'looksee' do developer 'George Ogata', 'george.ogata@gmail.com' end Packaging: Hoe/Echoe for Gems
  • 37. ChocTop.new do |s| s.host = 'commitchat.com' s.base_url = 'http://commitchat.com/dl' s.remote_dir = '/opt/apps/commitchat/dl' s.background_file = "dmgbg.png" s.volume_icon = 'VolumeIcon.icns' s.app_icon_position = [106, 83] s.applications_icon_position = [422, 83] s.applications_icon = "dmgappico.png" end Packaging: ChocTop for DMGs
  • 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
  • 46. Thank you Canada Dr Nic Williams drnicwilliams.com · @drnic