SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
Kirill Grouchnikov
PARTY OF ONE
SURVIVING A HOBBY OPEN SOURCE PROJECT
SOURCEFORGE.NET


        Indexed projects          146.147

                Have files        75.050                   51%
Marked as released (*)            22.502             15%



* - status one of “production”, “stable”, “mature”
Develop   Maintain   Promote
DEVELOP
DEVELOP

 Tenets
 Features

 Release schedule
Buzzword vision

“[…] IS A HIGH PERFORMANCE, VASTLY
SCALABLE, EMBEDDABLE, INTERNET-CENTRIC
CLIENT / SERVER COMPUTING PLATFORM WITH
A BREAKTHROUGH ADAPTIVE RUNTIME
TECHNOLOGY.”
“IT MAKES SIMPLE THINGS EASY AND THE
HARD STUFF POSSIBLE, THE GOOD DESIGN
EASY AND THE BAD DIFFICULT”

         ─ FormLayout project by Karsten Lentzsch
FEATURES




      Let’s talk about it later
RELEASE SCHEDULE ANTI-PATTERN
    Release             Date
    0.7.0 Alpha 1   Jan 2007
    0.6.5 Beta      Sep 2005   11-14 months
    0.6.0 Beta      Oct 2004
    0.5.5 Beta      Jun 2004   4-6 months
    0.5.0 Beta      Jan 2004
    0.4.5 Beta      Nov 2003
    0.4.0 Beta      Sep 2003
    0.3.0 Alpha     Jul 2003
                               2-3 months
    0.2.6 Alpha     Apr 2003
    0.2.4 Alpha     Jan 2003
    0.2.2 Alpha     Oct 2002
RELEASE SCHEDULE

       3.0
             10 weeks – usual schedule
       3.1
             10 weeks – usual schedule
       3.2
             12 weeks – extra two weeks for code health
       3.3
             20 weeks – extra ten weeks for code health,
       4.0   removing deprecated functionality and allowing
             users to adapt
RELEASE SCHEDULE

       3.0
             10 weeks
       3.1
                        52 weeks. 52*7 is 364 days.
             10 weeks
       3.2
             12 weeks   Take one day off to enjoy the life.
       3.3              Get extra day off every four years!
             20 weeks
       4.0
RELEASE SCHEDULE

       3.0
             10 weeks
       3.1                         One major
             10 weeks
       3.2              52 weeks   release per
             12 weeks              year
       3.3
             20 weeks
       4.0
MAINTAIN
MAINTAIN

 Bugs
 Code health

 Task schedule
“THE USERS WHO CARE ENOUGH TO GIVE YOU
FEEDBACK DESERVE YOUR ATTENTION AND
RESPECT.”
           ─ Jeff Atwood, CodingHorror.com
PRIORITIES
This is what you usually see:
  90% new features
  10% bug fixes
PRIORITIES – IF YOU’RE LUCKY
 new features
 bug fixes
 code health
 documentation
PRIORITIES – WHAT IT SHOULD REALLY BE
 bug fixes
 code health
 documentation
 new features
NEW FEATURES OVER THE TIME


                                      A new feature needs
                                      to interact with every
                                      existing one
     internal
 implementation
   complexity




        release   release   release   release
          1.0        1.1      1.2       1.3
WOULD BE NICE IF…


                                         how do you do this?




     release   release   release   release    release
       1.0        1.1      1.2       1.3        2.0
CODE HEALTH

 Internal refactoring
 Deprecation

 External refactoring
“WITHOUT PEOPLE PUSHING AGAINST YOUR
QUEST TO DO SOMETHING WORTH TALKING
ABOUT, IT'S UNLIKELY IT WOULD BE WORTH
THE JOURNEY.”

           ─ Seth Godin, sethgodin.typepad.com
CODE HEALTH
 How much
stability you             Sources of instability:
    can risk                 •New features
                             •Internal rewrites
                             •Bug fixes




          Start of   RC         Version
          version               release
TASK SCHEDULE



     version 1.1

                   version 1.2

                                 version 1.3
TASK SCHEDULE BREAKDOWN


              Time Stage
           0 weeks Development starts
           2 weeks More realistic for dev start
           6 weeks Core feature freeze
           8 weeks User feature freeze
          10 weeks Release candidate
          12 weeks Release
          13 weeks Stop backporting bug fixes
TASK SCHEDULE

          rc   rel

                        rc   rel

          0    2 3

                        0    2 3



        Every bug fix
        needs to be
        done on two
         branches
RESPECT THE USER FEEDBACK


               Time Stage
            0 weeks Development starts
            2 weeks More realistic for dev start
            6 weeks Core feature freeze
            8 weeks User feature freeze
           10 weeks Release candidate
           12 weeks Release
           13 weeks Stop backporting bug fixes
PROMOTE
PROMOTE

 Documentation
 Test applications

 Blog
DOCUMENTATION

            Time Stage
         0 weeks Development starts
         2 weeks More realistic for dev start
         6 weeks Core feature freeze
         8 weeks User feature freeze
                   time to start release notes
        10 weeks Release candidate
                   release notes in perfect shape
        12 weeks Release
        13 weeks Stop backporting bug fixes
“RATHER THAN HATING WASHING THE DISHES,
YOU JUST WASH THE DISHES.”

          ─ Garr Reynolds, Presentation Zen
BLOG




       Do it
“THE RELEASE IS NOT OUT UNTIL YOU BLOG
ABOUT IT.”

           ─ Harald Fernengel, TrollTech
Develop   Maintain   Promote
MAKING MISTAKES




Is being the best a goal in itself?
ALL THAT'S NEEDED IS THE DESIRE TO BE
HEARD. THE WILL TO LEARN. AND THE
ABILITY TO SEE.
        ─ Scott McCloud, Understanding Comics
PICTURE CREDITS

           Attribution-NonCommercial License

    Bridge – user “diebmx” on flickr.com
    Pavement growth – user “diebmx” on flickr.com
    Broken sign – user “diebmx” on flickr.com
    Teeming ladybugs – user “Thomas Hawk” on flickr.com
    Leaping dog – user “i am brad” on flickr.com
    Meerkats – user “814 carthage” on flickr.com

           Attribution License
    Ants on a rope – user “wwarby” on flickr.com

Contenu connexe

Similaire à Party of One

Spring Tooling Update - New & Noteworty (at SpringOne 2011)
Spring Tooling Update - New & Noteworty (at SpringOne 2011)Spring Tooling Update - New & Noteworty (at SpringOne 2011)
Spring Tooling Update - New & Noteworty (at SpringOne 2011)
martinlippert
 
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software FactoryIBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM France Lab
 

Similaire à Party of One (20)

A Tale of Two Workflows - ChefConf 2014
A Tale of Two Workflows - ChefConf 2014A Tale of Two Workflows - ChefConf 2014
A Tale of Two Workflows - ChefConf 2014
 
[113] lessons from realm
[113] lessons from realm[113] lessons from realm
[113] lessons from realm
 
Quality of Bug Reports in Open Source
Quality of Bug Reports in Open SourceQuality of Bug Reports in Open Source
Quality of Bug Reports in Open Source
 
Integreation
IntegreationIntegreation
Integreation
 
Spring Tooling Update - New & Noteworty (at SpringOne 2011)
Spring Tooling Update - New & Noteworty (at SpringOne 2011)Spring Tooling Update - New & Noteworty (at SpringOne 2011)
Spring Tooling Update - New & Noteworty (at SpringOne 2011)
 
Iz Pack
Iz PackIz Pack
Iz Pack
 
Front-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites fasterFront-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites faster
 
Boycott Docker
Boycott DockerBoycott Docker
Boycott Docker
 
Docker all the way
Docker all the wayDocker all the way
Docker all the way
 
Into The Box 2020 Keynote Day 1
Into The Box 2020 Keynote Day 1Into The Box 2020 Keynote Day 1
Into The Box 2020 Keynote Day 1
 
What's new in CQ 5.3? Top 10 features.
What's new in CQ 5.3? Top 10 features.What's new in CQ 5.3? Top 10 features.
What's new in CQ 5.3? Top 10 features.
 
Zero downtime-java-deployments-with-docker-and-kubernetes
Zero downtime-java-deployments-with-docker-and-kubernetesZero downtime-java-deployments-with-docker-and-kubernetes
Zero downtime-java-deployments-with-docker-and-kubernetes
 
Developing in production
Developing in productionDeveloping in production
Developing in production
 
Atlaskickin' the Plugin SDK, AtlasCamp US 2012
Atlaskickin' the Plugin SDK, AtlasCamp US 2012Atlaskickin' the Plugin SDK, AtlasCamp US 2012
Atlaskickin' the Plugin SDK, AtlasCamp US 2012
 
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software FactoryIBM Cloud Bordeaux Meetup - 20190325 - Software Factory
IBM Cloud Bordeaux Meetup - 20190325 - Software Factory
 
Denodo Solution Manager: Best Practices for Promotion
Denodo Solution Manager: Best Practices for PromotionDenodo Solution Manager: Best Practices for Promotion
Denodo Solution Manager: Best Practices for Promotion
 
Test Driven Development on Android (Kotlin Kenya)
Test Driven Development on Android (Kotlin Kenya)Test Driven Development on Android (Kotlin Kenya)
Test Driven Development on Android (Kotlin Kenya)
 
7 (+/- 2) Steps to Agility
7 (+/- 2) Steps to Agility7 (+/- 2) Steps to Agility
7 (+/- 2) Steps to Agility
 
Openstack Summit Container Day Keynote
Openstack Summit Container Day KeynoteOpenstack Summit Container Day Keynote
Openstack Summit Container Day Keynote
 
Feedback Loops
Feedback LoopsFeedback Loops
Feedback Loops
 

Dernier

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Dernier (20)

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...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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
 
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
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
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
 

Party of One

  • 1. Kirill Grouchnikov PARTY OF ONE SURVIVING A HOBBY OPEN SOURCE PROJECT
  • 2. SOURCEFORGE.NET Indexed projects 146.147 Have files 75.050 51% Marked as released (*) 22.502 15% * - status one of “production”, “stable”, “mature”
  • 3.
  • 4. Develop Maintain Promote
  • 6.
  • 8. Buzzword vision “[…] IS A HIGH PERFORMANCE, VASTLY SCALABLE, EMBEDDABLE, INTERNET-CENTRIC CLIENT / SERVER COMPUTING PLATFORM WITH A BREAKTHROUGH ADAPTIVE RUNTIME TECHNOLOGY.”
  • 9. “IT MAKES SIMPLE THINGS EASY AND THE HARD STUFF POSSIBLE, THE GOOD DESIGN EASY AND THE BAD DIFFICULT” ─ FormLayout project by Karsten Lentzsch
  • 10. FEATURES Let’s talk about it later
  • 11. RELEASE SCHEDULE ANTI-PATTERN Release Date 0.7.0 Alpha 1 Jan 2007 0.6.5 Beta Sep 2005 11-14 months 0.6.0 Beta Oct 2004 0.5.5 Beta Jun 2004 4-6 months 0.5.0 Beta Jan 2004 0.4.5 Beta Nov 2003 0.4.0 Beta Sep 2003 0.3.0 Alpha Jul 2003 2-3 months 0.2.6 Alpha Apr 2003 0.2.4 Alpha Jan 2003 0.2.2 Alpha Oct 2002
  • 12. RELEASE SCHEDULE 3.0 10 weeks – usual schedule 3.1 10 weeks – usual schedule 3.2 12 weeks – extra two weeks for code health 3.3 20 weeks – extra ten weeks for code health, 4.0 removing deprecated functionality and allowing users to adapt
  • 13. RELEASE SCHEDULE 3.0 10 weeks 3.1 52 weeks. 52*7 is 364 days. 10 weeks 3.2 12 weeks Take one day off to enjoy the life. 3.3 Get extra day off every four years! 20 weeks 4.0
  • 14. RELEASE SCHEDULE 3.0 10 weeks 3.1 One major 10 weeks 3.2 52 weeks release per 12 weeks year 3.3 20 weeks 4.0
  • 16.
  • 17. MAINTAIN  Bugs  Code health  Task schedule
  • 18. “THE USERS WHO CARE ENOUGH TO GIVE YOU FEEDBACK DESERVE YOUR ATTENTION AND RESPECT.” ─ Jeff Atwood, CodingHorror.com
  • 19. PRIORITIES This is what you usually see: 90% new features 10% bug fixes
  • 20. PRIORITIES – IF YOU’RE LUCKY new features bug fixes code health documentation
  • 21. PRIORITIES – WHAT IT SHOULD REALLY BE bug fixes code health documentation new features
  • 22. NEW FEATURES OVER THE TIME A new feature needs to interact with every existing one internal implementation complexity release release release release 1.0 1.1 1.2 1.3
  • 23. WOULD BE NICE IF… how do you do this? release release release release release 1.0 1.1 1.2 1.3 2.0
  • 24. CODE HEALTH  Internal refactoring  Deprecation  External refactoring
  • 25. “WITHOUT PEOPLE PUSHING AGAINST YOUR QUEST TO DO SOMETHING WORTH TALKING ABOUT, IT'S UNLIKELY IT WOULD BE WORTH THE JOURNEY.” ─ Seth Godin, sethgodin.typepad.com
  • 26. CODE HEALTH How much stability you Sources of instability: can risk •New features •Internal rewrites •Bug fixes Start of RC Version version release
  • 27. TASK SCHEDULE version 1.1 version 1.2 version 1.3
  • 28. TASK SCHEDULE BREAKDOWN Time Stage 0 weeks Development starts 2 weeks More realistic for dev start 6 weeks Core feature freeze 8 weeks User feature freeze 10 weeks Release candidate 12 weeks Release 13 weeks Stop backporting bug fixes
  • 29. TASK SCHEDULE rc rel rc rel 0 2 3 0 2 3 Every bug fix needs to be done on two branches
  • 30. RESPECT THE USER FEEDBACK Time Stage 0 weeks Development starts 2 weeks More realistic for dev start 6 weeks Core feature freeze 8 weeks User feature freeze 10 weeks Release candidate 12 weeks Release 13 weeks Stop backporting bug fixes
  • 32.
  • 33. PROMOTE  Documentation  Test applications  Blog
  • 34. DOCUMENTATION Time Stage 0 weeks Development starts 2 weeks More realistic for dev start 6 weeks Core feature freeze 8 weeks User feature freeze time to start release notes 10 weeks Release candidate release notes in perfect shape 12 weeks Release 13 weeks Stop backporting bug fixes
  • 35. “RATHER THAN HATING WASHING THE DISHES, YOU JUST WASH THE DISHES.” ─ Garr Reynolds, Presentation Zen
  • 36. BLOG Do it
  • 37. “THE RELEASE IS NOT OUT UNTIL YOU BLOG ABOUT IT.” ─ Harald Fernengel, TrollTech
  • 38. Develop Maintain Promote
  • 39. MAKING MISTAKES Is being the best a goal in itself?
  • 40. ALL THAT'S NEEDED IS THE DESIRE TO BE HEARD. THE WILL TO LEARN. AND THE ABILITY TO SEE. ─ Scott McCloud, Understanding Comics
  • 41. PICTURE CREDITS Attribution-NonCommercial License  Bridge – user “diebmx” on flickr.com  Pavement growth – user “diebmx” on flickr.com  Broken sign – user “diebmx” on flickr.com  Teeming ladybugs – user “Thomas Hawk” on flickr.com  Leaping dog – user “i am brad” on flickr.com  Meerkats – user “814 carthage” on flickr.com Attribution License  Ants on a rope – user “wwarby” on flickr.com