SlideShare a Scribd company logo
1 of 30
Download to read offline
Donating a Mature
                         Project to Eclipse
                                         Glyn Normington




                          Copyright VMware Inc. 2011. Licensed under the Eclipse Public License
Tuesday, 22 March 2011
Agenda
                   •     Code
                   • Intellectual property
                   • Infrastructure
                   • Community


Tuesday, 22 March 2011
Code



Tuesday, 22 March 2011
Origins

   •      Spring Engine
   • SpringSource Application Platform
   • SpringSource dm Server
   • Eclipse Virgo

Tuesday, 22 March 2011
Origins

   •      Spring Engine
   • SpringSource Application Platform
   • SpringSource dm Server
   • Eclipse Virgo

Tuesday, 22 March 2011
Interlude



Tuesday, 22 March 2011
Was dm Server Mature?
                   • Users in production on v1 & v2
                   • Principled design
                   • Clean code
                   • Extensive test suite (with CI)
                   • Based on, and influencing, standards

Tuesday, 22 March 2011
Why donate it?
                   • Remove adoption inhibitors
                    • GPL
                    • Single vendor
                   • Collaborate on usability
                    • Build
                    • Application development tooling
Tuesday, 22 March 2011
Why Eclipse.org?
        • Permissive license
        • Governance & IP process
        • Built on Equinox & Eclipse
        • EclipseRT needed a runtime


Tuesday, 22 March 2011
End of Interlude.
                         Back to the Code


Tuesday, 22 March 2011
Moving the Project
       2007              2008        2009     2010    2011      2012   2013

    1.0



    2.0


    2.1 (Virgo)


    3.0

                                ß/milestone   GA     SR   EOL

Tuesday, 22 March 2011
Version Control
            • git
             • 22 repositories
            • GPL history was pruned
             • Back link for archaeology
            • External collaboration
             • github
Tuesday, 22 March 2011
Intellectual Property



Tuesday, 22 March 2011
Licensing
         • SpringSource
                 dm Server               • Eclipse Virgo
               • GPL +                    • EPL
                         commercial

         • OSGi Web                      • Gemini Web
                 Container
               • Apache                   • EPL + Apache
Tuesday, 22 March 2011
Eclipse IP Process
                   • Scrutiny
                    • Source code
                    • License
                    • Pedigree
                   • Contribution & dependencies

Tuesday, 22 March 2011
IP Process Costs
                   • Raised 200 CQs
                   • Deleted 2 dependencies
                   • Tweaked 3rd party licensing

Tuesday, 22 March 2011
IP Process Benefits
                   • Assured license/pedigree
                   • Recorded dependencies
                   • Improved licensing, e.g.
                     • JWebUnit LGPL
                     • mime.types file in Spring

Tuesday, 22 March 2011
IP Process Improvements
                   • Clarify:
                    • Downstream distribution
                    • “Works with” dependencies
                    • Policy for build/test dependencies
                   • Automate release checks (WIP)


Tuesday, 22 March 2011
Infrastructure



Tuesday, 22 March 2011
Build/Test Infrastructure
      • Moved CI to hudson.eclipse.org
      • Tool issues
      • False positives
      • Sharing vs stability
       • Virtualisation?
Tuesday, 22 March 2011
Search Infrastructure
              • Private OpenGrok
               • Too much code to remember
               • 22 git repos
              • No search at eclipse.org
              • Public OpenGrok
                http://virgo-opengrok.springsource.org/


Tuesday, 22 March 2011
Community



Tuesday, 22 March 2011
Moving the Community
     • Generally willing
     • Incompatibilities
      • Package names
      • Dropped function
     • Migration to Virgo 2.1
      • Minimised
      • Migration notes
Tuesday, 22 March 2011
Effect on Committers
   • JIRA replaced by bugzilla + Acunote
   • Distributed sprint planning
   • Concurrent sprints



Tuesday, 22 March 2011
Summary
                         Was it worth it?


Tuesday, 22 March 2011
Benefits of Donating
              ✓Increase adoption
               ✓  Permissive license
               ✓Multi-vendor
              • Improve usability
               • Build
                   ✓ Application development tooling

Tuesday, 22 March 2011
Benefits of Eclipse.org
                    ✓    Code
                    ✓ Intellectual property
                    • Infrastructure
                    ✓ Community


Tuesday, 22 March 2011
And Finally...



Tuesday, 22 March 2011
Thanks to...
       • Project histories - wikipedia
       • HP Garage - http://www.hp.com
       • Road signs - Alexander Baxevanis
       • OOXML demo - Martin Bekkelund
       • Rugby scrum - Clumsy Jim

Tuesday, 22 March 2011
Related Sessions
        • Building web apps with EclipseRT
         • Yesterday, but come to the Virgo BoF
        • Snaps, modular & dynamic web apps with Virgo
         • Tomorrow 10:40-11:00, Ballroom D
        • Virgo and RT playing together
         • Tomorrow 11:10-11:30, Ballroom BC
        • Virgo BoF
         • Shooting for tomorrow 7:30-8:30pm
        • Hands on with Gemini & Virgo
         • Thursday 10:30-12:30, Ballroom D
Tuesday, 22 March 2011

More Related Content

Similar to Donating a mature project to Eclipse

Pitfalls of Continuous Deployment
Pitfalls of Continuous DeploymentPitfalls of Continuous Deployment
Pitfalls of Continuous Deploymentzeeg
 
Spotify: Horizontal Scalability for Great Success
Spotify: Horizontal Scalability for Great SuccessSpotify: Horizontal Scalability for Great Success
Spotify: Horizontal Scalability for Great SuccessNick Barkas
 
Android 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journeyAndroid 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journeyEmanuele Di Saverio
 
Nuxeo World Session: Mobile ECM Apps with Nuxeo EP
Nuxeo World Session: Mobile ECM Apps with Nuxeo EPNuxeo World Session: Mobile ECM Apps with Nuxeo EP
Nuxeo World Session: Mobile ECM Apps with Nuxeo EPNuxeo
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forwardeug3n_cojocaru
 
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps_Fest
 
Web micro-framework BATTLE!
Web micro-framework BATTLE!Web micro-framework BATTLE!
Web micro-framework BATTLE!Richard Jones
 
The OSS Forge Ecosystem: Today and Tomorrow
The OSS Forge Ecosystem: Today and TomorrowThe OSS Forge Ecosystem: Today and Tomorrow
The OSS Forge Ecosystem: Today and Tomorrowoostendo
 
Discover eZ Publish: why you have to know this product
Discover eZ Publish: why you have to know this productDiscover eZ Publish: why you have to know this product
Discover eZ Publish: why you have to know this productBertrand Dunogier
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Hannes Lowette
 
Creating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareCreating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareBrian Huff
 
Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)
Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)
Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)Ingo Renner
 
State of jQuery June 2013 - Portland
State of jQuery June 2013 - PortlandState of jQuery June 2013 - Portland
State of jQuery June 2013 - Portlanddmethvin
 
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing ElixirWeverton Timoteo
 
OSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixOSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixMarcel Offermans
 

Similar to Donating a mature project to Eclipse (20)

Pitfalls of Continuous Deployment
Pitfalls of Continuous DeploymentPitfalls of Continuous Deployment
Pitfalls of Continuous Deployment
 
Spotify: Horizontal Scalability for Great Success
Spotify: Horizontal Scalability for Great SuccessSpotify: Horizontal Scalability for Great Success
Spotify: Horizontal Scalability for Great Success
 
Hudson
HudsonHudson
Hudson
 
clrh58
clrh58clrh58
clrh58
 
Android 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journeyAndroid 1.5 to 3.0: a compatibility journey
Android 1.5 to 3.0: a compatibility journey
 
Nuxeo World Session: Mobile ECM Apps with Nuxeo EP
Nuxeo World Session: Mobile ECM Apps with Nuxeo EPNuxeo World Session: Mobile ECM Apps with Nuxeo EP
Nuxeo World Session: Mobile ECM Apps with Nuxeo EP
 
JavaSE - The road forward
JavaSE - The road forwardJavaSE - The road forward
JavaSE - The road forward
 
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
 
Web micro-framework BATTLE!
Web micro-framework BATTLE!Web micro-framework BATTLE!
Web micro-framework BATTLE!
 
The OSS Forge Ecosystem: Today and Tomorrow
The OSS Forge Ecosystem: Today and TomorrowThe OSS Forge Ecosystem: Today and Tomorrow
The OSS Forge Ecosystem: Today and Tomorrow
 
Discover eZ Publish: why you have to know this product
Discover eZ Publish: why you have to know this productDiscover eZ Publish: why you have to know this product
Discover eZ Publish: why you have to know this product
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®
 
Creating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion MiddlewareCreating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
Creating a Global E-Commerce Website With E-Business Suite and Fusion Middleware
 
Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)
Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)
Apache Solr for TYPO3 (@ T3CON10 Dallas, TX)
 
Mobile HTML5
Mobile HTML5Mobile HTML5
Mobile HTML5
 
State of jQuery June 2013 - Portland
State of jQuery June 2013 - PortlandState of jQuery June 2013 - Portland
State of jQuery June 2013 - Portland
 
QCON SP 2012
QCON SP 2012QCON SP 2012
QCON SP 2012
 
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
 
Yocto Project - OSCON 7-17-2012
Yocto Project - OSCON 7-17-2012Yocto Project - OSCON 7-17-2012
Yocto Project - OSCON 7-17-2012
 
OSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixOSGi on Google Android using Apache Felix
OSGi on Google Android using Apache Felix
 

Donating a mature project to Eclipse

  • 1. Donating a Mature Project to Eclipse Glyn Normington Copyright VMware Inc. 2011. Licensed under the Eclipse Public License Tuesday, 22 March 2011
  • 2. Agenda • Code • Intellectual property • Infrastructure • Community Tuesday, 22 March 2011
  • 4. Origins • Spring Engine • SpringSource Application Platform • SpringSource dm Server • Eclipse Virgo Tuesday, 22 March 2011
  • 5. Origins • Spring Engine • SpringSource Application Platform • SpringSource dm Server • Eclipse Virgo Tuesday, 22 March 2011
  • 7. Was dm Server Mature? • Users in production on v1 & v2 • Principled design • Clean code • Extensive test suite (with CI) • Based on, and influencing, standards Tuesday, 22 March 2011
  • 8. Why donate it? • Remove adoption inhibitors • GPL • Single vendor • Collaborate on usability • Build • Application development tooling Tuesday, 22 March 2011
  • 9. Why Eclipse.org? • Permissive license • Governance & IP process • Built on Equinox & Eclipse • EclipseRT needed a runtime Tuesday, 22 March 2011
  • 10. End of Interlude. Back to the Code Tuesday, 22 March 2011
  • 11. Moving the Project 2007 2008 2009 2010 2011 2012 2013 1.0 2.0 2.1 (Virgo) 3.0 ß/milestone GA SR EOL Tuesday, 22 March 2011
  • 12. Version Control • git • 22 repositories • GPL history was pruned • Back link for archaeology • External collaboration • github Tuesday, 22 March 2011
  • 14. Licensing • SpringSource dm Server • Eclipse Virgo • GPL + • EPL commercial • OSGi Web • Gemini Web Container • Apache • EPL + Apache Tuesday, 22 March 2011
  • 15. Eclipse IP Process • Scrutiny • Source code • License • Pedigree • Contribution & dependencies Tuesday, 22 March 2011
  • 16. IP Process Costs • Raised 200 CQs • Deleted 2 dependencies • Tweaked 3rd party licensing Tuesday, 22 March 2011
  • 17. IP Process Benefits • Assured license/pedigree • Recorded dependencies • Improved licensing, e.g. • JWebUnit LGPL • mime.types file in Spring Tuesday, 22 March 2011
  • 18. IP Process Improvements • Clarify: • Downstream distribution • “Works with” dependencies • Policy for build/test dependencies • Automate release checks (WIP) Tuesday, 22 March 2011
  • 20. Build/Test Infrastructure • Moved CI to hudson.eclipse.org • Tool issues • False positives • Sharing vs stability • Virtualisation? Tuesday, 22 March 2011
  • 21. Search Infrastructure • Private OpenGrok • Too much code to remember • 22 git repos • No search at eclipse.org • Public OpenGrok http://virgo-opengrok.springsource.org/ Tuesday, 22 March 2011
  • 23. Moving the Community • Generally willing • Incompatibilities • Package names • Dropped function • Migration to Virgo 2.1 • Minimised • Migration notes Tuesday, 22 March 2011
  • 24. Effect on Committers • JIRA replaced by bugzilla + Acunote • Distributed sprint planning • Concurrent sprints Tuesday, 22 March 2011
  • 25. Summary Was it worth it? Tuesday, 22 March 2011
  • 26. Benefits of Donating ✓Increase adoption ✓ Permissive license ✓Multi-vendor • Improve usability • Build ✓ Application development tooling Tuesday, 22 March 2011
  • 27. Benefits of Eclipse.org ✓ Code ✓ Intellectual property • Infrastructure ✓ Community Tuesday, 22 March 2011
  • 29. Thanks to... • Project histories - wikipedia • HP Garage - http://www.hp.com • Road signs - Alexander Baxevanis • OOXML demo - Martin Bekkelund • Rugby scrum - Clumsy Jim Tuesday, 22 March 2011
  • 30. Related Sessions • Building web apps with EclipseRT • Yesterday, but come to the Virgo BoF • Snaps, modular & dynamic web apps with Virgo • Tomorrow 10:40-11:00, Ballroom D • Virgo and RT playing together • Tomorrow 11:10-11:30, Ballroom BC • Virgo BoF • Shooting for tomorrow 7:30-8:30pm • Hands on with Gemini & Virgo • Thursday 10:30-12:30, Ballroom D Tuesday, 22 March 2011