SlideShare a Scribd company logo
1 of 26
This work and content is licensed under a
                                               Creative Commons Attribution-Non
                                               Commercial-Share Alike 3.0 Unported
                                               License




Politics, Positives,
Paperwork and Pain

Our year to date in the JCP


Martijn Verburg (@karianna)
Ben Evans (@kittylyst)

                                                                        1
          Slide Design by Kerry Kenneally www.kerrykenneally.com
The secret reason we are here.....




                                     2
How this talk is going to work

• This is a fact!

• This is an opinion

• We will not poke fun at large corporations




                                               3
Legal Disclaimer Slide


• For the lawyers: “Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem
  ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum,
  Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem
  ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum,
  Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem
  ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum,
  Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem
  ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum”




                                                        4
Acronym Soup

• One of the reasons why people shy away from the JCP

• JUG - Java User Group

• JSR - Java Specification Request

• JCP - Java Community Process

• RI - Reference Implementation

• TCK - Technology Compatibility Kit




                                                        5
How it all Started - I

• FOSDEM 2011
   – Inspired by the spirit shown in the Free Java room & too much beer


• The developer community needed more representation

• We’d been making noise for a while

• It was politely suggested we step up




                                                                 6
How it all Started - II

• ~March/April 2011 - We threw our hat in the ring

• “We have the best general purpose VM in the world, and its Open.
  We want to build on this, who wants to come with?”

• ~May 2011 - We won the open seat!

• We formed a deep committee to deal with JCP matters

• Change of beverage --> Red Wine




                                                           7
Immediately some Paperwork & Pain

• JSPAs are unfriendly to say the least

• Quite difficult to deal with as a JUG or individual

• PMO smoothed the path
    – But it’s still a barrier to entry for the uninitiated

• Developers do not understand legalese
    – Does anybody?




                                                              8
Our Openness and Transparency

• LJC as a JUG is in an unique position

• All our JCP decision making is in the open!
    –   Meeting minutes
    –   Our voting criteria
    –   Our votes and why we voted
    –   Thought processes on existing JSRs

• “Meritocracy of the Willing”
    – No barriers to joining the LJC JCP Committee




                                                     9
First order of Business - Vote on JSR 348

• Openness and Transparency of JSRs and the JCP itself
   – Started by the Oracle before we joined

• Exciting meetings about minute details

• Endless phone conferences

• Good to have deep roots with your JCP Reps
   – No one should go through that alone




                                                         10
JSR-348 - A Massive success

• JSR-348 was a hit

• It didn’t cover everything the community wanted

• It did get the full EC’s collaborating again

• Some of the most vocal voices for openness were large vendors!
    – JSR itself was lead by Oracle

• JSRs are now accessible to the technical community




                                                          11
A General move towards openness

• JCP EC members are pushing the FOSS agenda

• The OpenJDK is now the RI for Java!
    – This includes the Mac


• Oracle has promised all of its older JSRs will be run under 348
    – They’re almost there


• Small trademark and licensing issues have been cleaned up

• There’s still obviously some important work left to do




                                                             12
Adopt a JSR

• With JSR-348 coming into being, developers could now act

• JSRs were ripe for adoption by the wider Java community

• So we launched ‘Adopt a JSR’ on Oct 31st 2011

• LJC working with JCP to guide spec leads
   – With JSR-348 compliance
   – Making JSR-348 a positive FOSS experience




                                                             13
What is the Adopt a JSR program?

• See http://adoptajsr.org for full details

• A JUG lead initiative to improve standards in the Java ecosystem

• Groups of JUG members work on JSRs
Why the JUGs get involved

• To be involved in “Moving Java forward”
    – Sorry, we couldn’t resist


• To ensure that ivory tower standards do not occur

• To make sure the useful libraries and APIs get built

• To boost the careers of JUG members
    – Gain new technical and community skills and much more!

• It’s fun!
How does it help the Standards?

• Standards get earlier feedback
   – Leading to more developer friendly APIs


• Standards get 'end user/developer' expert input

• Standards get developed more quickly

• JUGs can also help with management of the JSR




                                                    16
Who’s involved already?

• See http://adoptajsr.org for up to date details
    –   The London Java Community (UK)
    –   SouJava (Brazil)
    –   GoJava (Brazil)
    –   Houston JUG (USA)
    –   Chennai JUG (India)


• + Several more starting out




                                                    17
What difference have they really made?

• The LJC is helping make sure JSR-310 gets through
    – Date and Time for Java 8
    – Focussed on building the TCK, ~50% by Dec 2011

• Houston JUG and Chennai JUG is working on JSR-347
    – Data Grids API for Java EE
    – Helps avoid vendor lock in

• Large increase in ‘passive participation’
    – More downloads, mailing list subscribers etc




                                                       18
Adopt the OpenJDK

• A JUG lead program for working on the OpenJDK

• Aim to to lower barriers to working with the OpenJDK
    – Potential to dramatically increase # of OpenJDK hackers

• Currently working on a variety of issues
    – Website, Wiki, Build, JIRA Triage, Small bug clean ups & more

• http://java.net/projects/jugs/pages/AdoptOpenJDK




                                                                  19
Realisations about the OpenJDK

• Huge leaps made recently
    – It’s the RI for Java
    – Mac port is now in mainstream


• Infrastructure problems need to be dealt with
    – Community wide problem, not just Oracle’s!


• JEPs are a good idea in principle...
    – Their relationship with JSRs have a perception problem

• Still large barriers to entry
    – Clouds of fog and mystery for the developer on the street




                                                                  20
A General move towards community

• Adopt a JSR has been widely supported

• Most JSRs need a massive Ux overhaul

• OpenJDK hacking is being actively encouraged

• OpenJDK needs a massive Ux overhaul




                                                 21
The next bit of reform, JSR-355

• JCP.next (the 2nd)

• Long overdue merging of the SE/EE and ME EC’s

• Several EC members not turning up/voting
   – This made us quietly furious

• A smaller, more focussed group will do a better job

• Some political and bureaucratic wheeling and dealing




                                                         22
The next bit of interesting reform...

• The almighty JCP.next (the 3rd)

• Will look at the JSPA

• Will look at TCKs and licensing

• Lots of other small issues that require legal eagles

• Many old arguments will come to the surface

• We think it will be important to take a step back
    – Look at the TCK problem from different angles
    – Existing arguments are well documented


                                                         23
Realisations about the JCP EC

• The EC members do not discuss JSRs enough

• There needs to be more technical balance
    – This is improving

• EC members are not open enough about why they voted
    – Need to have meaningful commit messages!

• There is a great deal of willingness to change
    – This is not reported enough




                                                        24
Extra Lessons we’ve learned

• It’s still easy to miss a vote
    – There’s no excuse for this we simply must all do better

• Enthusiasm and optimism grinds down barriers

• We recognised that when organisations throw their toys in public....
    – It’s counter productive
    – Time is wasted


• Companies like Oracle are not one giant machine with a single will
    – Patience is a virtue
    – Large companies have large turning circles




                                                                25
Thanks for listening!

• The acronyms become familiar, we promise!

• We’re looking forward to working towards more Java freedom in
  2012
    – Shameless Plug: Re-elect us!


• Need to get in touch?
    – Ben Evans (@kittylyst)
    – Martijn Verburg (@karianna)


• http://adoptajsr.org

• http://java.net/projects/jugs/pages/AdoptOpenJDK


                                                          26

More Related Content

What's hot

The Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's SuccessesThe Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's SuccessesPiergiorgio Lucidi
 
Join the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUGJoin the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUGHeather VanCura
 
Importance of Developers to HE in the UK
Importance of Developers to HE in the UKImportance of Developers to HE in the UK
Importance of Developers to HE in the UKPaul Walk
 
Java, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexusJava, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexusHeather VanCura
 
DSpace RoadMap 2011
DSpace RoadMap 2011DSpace RoadMap 2011
DSpace RoadMap 2011Tim Donohue
 
Supersize me: Making Drupal go large
Supersize me: Making Drupal go largeSupersize me: Making Drupal go large
Supersize me: Making Drupal go largeTom Phethean
 
JavaEvolutionTalkUtahJUG
JavaEvolutionTalkUtahJUGJavaEvolutionTalkUtahJUG
JavaEvolutionTalkUtahJUGHeather VanCura
 
How to Participate Devoxx 2013 Quickie
How to Participate Devoxx 2013 QuickieHow to Participate Devoxx 2013 Quickie
How to Participate Devoxx 2013 QuickieHeather VanCura
 
JCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeConJCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeConHeather VanCura
 
DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016
DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016
DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016Ritchie Grijaldo
 
Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...
Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...
Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...mfrancis
 
JCPParticipationOverviewJCertif
JCPParticipationOverviewJCertifJCPParticipationOverviewJCertif
JCPParticipationOverviewJCertifHeather VanCura
 
Adopt-a-JSR for Bucharest JUG
Adopt-a-JSR for Bucharest JUGAdopt-a-JSR for Bucharest JUG
Adopt-a-JSR for Bucharest JUGHeather VanCura
 

What's hot (20)

The Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's SuccessesThe Journey of Apache ManifoldCF: Learning from ASF's Successes
The Journey of Apache ManifoldCF: Learning from ASF's Successes
 
Join the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUGJoin the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUG
 
JCPAfricaJUG
JCPAfricaJUGJCPAfricaJUG
JCPAfricaJUG
 
The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
Importance of Developers to HE in the UK
Importance of Developers to HE in the UKImportance of Developers to HE in the UK
Importance of Developers to HE in the UK
 
Java, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexusJava, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexus
 
DSpace RoadMap 2011
DSpace RoadMap 2011DSpace RoadMap 2011
DSpace RoadMap 2011
 
JCP15Years
JCP15YearsJCP15Years
JCP15Years
 
Devoxx Java Social and Agorava
Devoxx Java Social and AgoravaDevoxx Java Social and Agorava
Devoxx Java Social and Agorava
 
Supersize me: Making Drupal go large
Supersize me: Making Drupal go largeSupersize me: Making Drupal go large
Supersize me: Making Drupal go large
 
Zabbix in 2012
Zabbix in 2012Zabbix in 2012
Zabbix in 2012
 
JavaEvolutionTalkUtahJUG
JavaEvolutionTalkUtahJUGJavaEvolutionTalkUtahJUG
JavaEvolutionTalkUtahJUG
 
How to Participate Devoxx 2013 Quickie
How to Participate Devoxx 2013 QuickieHow to Participate Devoxx 2013 Quickie
How to Participate Devoxx 2013 Quickie
 
JCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeConJCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeCon
 
DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016
DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016
DevOps, Agile, Scrum, ITIL, & ITSM: Excerpts From ITx 2016
 
Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...
Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...
Town Hall - Business Implications of Open Source OSGi Implementations - BJ Ha...
 
Jcp devoxx-2012
Jcp devoxx-2012Jcp devoxx-2012
Jcp devoxx-2012
 
JCPParticipationOverviewJCertif
JCPParticipationOverviewJCertifJCPParticipationOverviewJCertif
JCPParticipationOverviewJCertif
 
JavaCro'21 - Java is Here To Stay - HUJAK Keynote
JavaCro'21 - Java is Here To Stay - HUJAK KeynoteJavaCro'21 - Java is Here To Stay - HUJAK Keynote
JavaCro'21 - Java is Here To Stay - HUJAK Keynote
 
Adopt-a-JSR for Bucharest JUG
Adopt-a-JSR for Bucharest JUGAdopt-a-JSR for Bucharest JUG
Adopt-a-JSR for Bucharest JUG
 

Viewers also liked

Polyglot and functional (Devoxx Nov/2011)
Polyglot and functional (Devoxx Nov/2011)Polyglot and functional (Devoxx Nov/2011)
Polyglot and functional (Devoxx Nov/2011)Martijn Verburg
 
Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)Martijn Verburg
 
Introduction to Java 7 (OSCON 2012)
Introduction to Java 7 (OSCON 2012)Introduction to Java 7 (OSCON 2012)
Introduction to Java 7 (OSCON 2012)Martijn Verburg
 
Garbage Collection - The Useful Parts
Garbage Collection - The Useful PartsGarbage Collection - The Useful Parts
Garbage Collection - The Useful PartsMartijn Verburg
 
Polyglot and Functional Programming (OSCON 2012)
Polyglot and Functional Programming (OSCON 2012)Polyglot and Functional Programming (OSCON 2012)
Polyglot and Functional Programming (OSCON 2012)Martijn Verburg
 

Viewers also liked (6)

Polyglot and functional (Devoxx Nov/2011)
Polyglot and functional (Devoxx Nov/2011)Polyglot and functional (Devoxx Nov/2011)
Polyglot and functional (Devoxx Nov/2011)
 
Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)
 
NoHR Hiring
NoHR HiringNoHR Hiring
NoHR Hiring
 
Introduction to Java 7 (OSCON 2012)
Introduction to Java 7 (OSCON 2012)Introduction to Java 7 (OSCON 2012)
Introduction to Java 7 (OSCON 2012)
 
Garbage Collection - The Useful Parts
Garbage Collection - The Useful PartsGarbage Collection - The Useful Parts
Garbage Collection - The Useful Parts
 
Polyglot and Functional Programming (OSCON 2012)
Polyglot and Functional Programming (OSCON 2012)Polyglot and Functional Programming (OSCON 2012)
Polyglot and Functional Programming (OSCON 2012)
 

Similar to Paperwork, Politics and Pain - Our year in the JCP (FOSDEM 2012)

How the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUGHow the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUGHeather VanCura
 
Participate @JavaOne Brazil 2012
Participate @JavaOne Brazil 2012Participate @JavaOne Brazil 2012
Participate @JavaOne Brazil 2012Heather VanCura
 
Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014Heather VanCura
 
Jcp user groupsummit-2013
Jcp user groupsummit-2013Jcp user groupsummit-2013
Jcp user groupsummit-2013Heather VanCura
 
JCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne RussiaJCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne RussiaHeather VanCura
 
JCP.Next Panel at JavaOne
JCP.Next Panel at JavaOneJCP.Next Panel at JavaOne
JCP.Next Panel at JavaOneHeather VanCura
 
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...Jug Chennai
 
How to Increase Participation in the JCP
How to Increase Participation in the JCP How to Increase Participation in the JCP
How to Increase Participation in the JCP Heather VanCura
 
A Tale from the Upstream Path
A Tale from the Upstream PathA Tale from the Upstream Path
A Tale from the Upstream PathTesora
 
Participate in the Future of Java May 2017
Participate in the Future of Java May 2017Participate in the Future of Java May 2017
Participate in the Future of Java May 2017Heather VanCura
 
Join the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/PhillyJoin the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/PhillyHeather VanCura
 
JCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZJCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZHeather VanCura
 
Join the Java Evolution NYC
Join the Java Evolution NYCJoin the Java Evolution NYC
Join the Java Evolution NYCHeather VanCura
 
Drive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalismDrive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalismMohamed Taman
 
Open-source Mic Talks at AOL
Open-source Mic Talks at AOLOpen-source Mic Talks at AOL
Open-source Mic Talks at AOLAddy Osmani
 
JUG involvment in JCP and AdopJSR program
JUG involvment in JCP and AdopJSR programJUG involvment in JCP and AdopJSR program
JUG involvment in JCP and AdopJSR programOleg Tsal-Tsalko
 

Similar to Paperwork, Politics and Pain - Our year in the JCP (FOSDEM 2012) (20)

Jcp fosdem2013
Jcp fosdem2013Jcp fosdem2013
Jcp fosdem2013
 
How the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUGHow the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUG
 
Participate @JavaOne Brazil 2012
Participate @JavaOne Brazil 2012Participate @JavaOne Brazil 2012
Participate @JavaOne Brazil 2012
 
Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014
 
FosdemJavaDevRoom2015
FosdemJavaDevRoom2015FosdemJavaDevRoom2015
FosdemJavaDevRoom2015
 
Jcp user groupsummit-2013
Jcp user groupsummit-2013Jcp user groupsummit-2013
Jcp user groupsummit-2013
 
JCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne RussiaJCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne Russia
 
JCP.Next Panel at JavaOne
JCP.Next Panel at JavaOneJCP.Next Panel at JavaOne
JCP.Next Panel at JavaOne
 
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
 
Jozi JUG Hack Day
Jozi JUG Hack DayJozi JUG Hack Day
Jozi JUG Hack Day
 
How to Increase Participation in the JCP
How to Increase Participation in the JCP How to Increase Participation in the JCP
How to Increase Participation in the JCP
 
A Tale from the Upstream Path
A Tale from the Upstream PathA Tale from the Upstream Path
A Tale from the Upstream Path
 
Participate in the Future of Java May 2017
Participate in the Future of Java May 2017Participate in the Future of Java May 2017
Participate in the Future of Java May 2017
 
Join the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/PhillyJoin the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/Philly
 
JCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZJCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZ
 
Join the Java Evolution NYC
Join the Java Evolution NYCJoin the Java Evolution NYC
Join the Java Evolution NYC
 
Drive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalismDrive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalism
 
Open-source Mic Talks at AOL
Open-source Mic Talks at AOLOpen-source Mic Talks at AOL
Open-source Mic Talks at AOL
 
Java+JCP+AdoptaJSR+You
Java+JCP+AdoptaJSR+YouJava+JCP+AdoptaJSR+You
Java+JCP+AdoptaJSR+You
 
JUG involvment in JCP and AdopJSR program
JUG involvment in JCP and AdopJSR programJUG involvment in JCP and AdopJSR program
JUG involvment in JCP and AdopJSR program
 

More from Martijn Verburg

Modern software development anti patterns (OSCON 2012)
Modern software development anti patterns (OSCON 2012)Modern software development anti patterns (OSCON 2012)
Modern software development anti patterns (OSCON 2012)Martijn Verburg
 
Modern Java Concurrency (Devoxx Nov/2011)
Modern Java Concurrency (Devoxx Nov/2011)Modern Java Concurrency (Devoxx Nov/2011)
Modern Java Concurrency (Devoxx Nov/2011)Martijn Verburg
 
Introduction to Java 7 (Devoxx Nov/2011)
Introduction to Java 7 (Devoxx Nov/2011)Introduction to Java 7 (Devoxx Nov/2011)
Introduction to Java 7 (Devoxx Nov/2011)Martijn Verburg
 
Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)Martijn Verburg
 
How to open source a project at Mega Corp (Geecon - May/2011)
How to open source a project at Mega Corp (Geecon - May/2011)How to open source a project at Mega Corp (Geecon - May/2011)
How to open source a project at Mega Corp (Geecon - May/2011)Martijn Verburg
 
Java 7 - short intro to NIO.2
Java 7 - short intro to NIO.2Java 7 - short intro to NIO.2
Java 7 - short intro to NIO.2Martijn Verburg
 

More from Martijn Verburg (6)

Modern software development anti patterns (OSCON 2012)
Modern software development anti patterns (OSCON 2012)Modern software development anti patterns (OSCON 2012)
Modern software development anti patterns (OSCON 2012)
 
Modern Java Concurrency (Devoxx Nov/2011)
Modern Java Concurrency (Devoxx Nov/2011)Modern Java Concurrency (Devoxx Nov/2011)
Modern Java Concurrency (Devoxx Nov/2011)
 
Introduction to Java 7 (Devoxx Nov/2011)
Introduction to Java 7 (Devoxx Nov/2011)Introduction to Java 7 (Devoxx Nov/2011)
Introduction to Java 7 (Devoxx Nov/2011)
 
Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)Back to the future with Java 7 (Geekout June/2011)
Back to the future with Java 7 (Geekout June/2011)
 
How to open source a project at Mega Corp (Geecon - May/2011)
How to open source a project at Mega Corp (Geecon - May/2011)How to open source a project at Mega Corp (Geecon - May/2011)
How to open source a project at Mega Corp (Geecon - May/2011)
 
Java 7 - short intro to NIO.2
Java 7 - short intro to NIO.2Java 7 - short intro to NIO.2
Java 7 - short intro to NIO.2
 

Recently uploaded

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
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
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Recently uploaded (20)

Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
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
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

Paperwork, Politics and Pain - Our year in the JCP (FOSDEM 2012)

  • 1. This work and content is licensed under a Creative Commons Attribution-Non Commercial-Share Alike 3.0 Unported License Politics, Positives, Paperwork and Pain Our year to date in the JCP Martijn Verburg (@karianna) Ben Evans (@kittylyst) 1 Slide Design by Kerry Kenneally www.kerrykenneally.com
  • 2. The secret reason we are here..... 2
  • 3. How this talk is going to work • This is a fact! • This is an opinion • We will not poke fun at large corporations 3
  • 4. Legal Disclaimer Slide • For the lawyers: “Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum, Lorem ipsum” 4
  • 5. Acronym Soup • One of the reasons why people shy away from the JCP • JUG - Java User Group • JSR - Java Specification Request • JCP - Java Community Process • RI - Reference Implementation • TCK - Technology Compatibility Kit 5
  • 6. How it all Started - I • FOSDEM 2011 – Inspired by the spirit shown in the Free Java room & too much beer • The developer community needed more representation • We’d been making noise for a while • It was politely suggested we step up 6
  • 7. How it all Started - II • ~March/April 2011 - We threw our hat in the ring • “We have the best general purpose VM in the world, and its Open. We want to build on this, who wants to come with?” • ~May 2011 - We won the open seat! • We formed a deep committee to deal with JCP matters • Change of beverage --> Red Wine 7
  • 8. Immediately some Paperwork & Pain • JSPAs are unfriendly to say the least • Quite difficult to deal with as a JUG or individual • PMO smoothed the path – But it’s still a barrier to entry for the uninitiated • Developers do not understand legalese – Does anybody? 8
  • 9. Our Openness and Transparency • LJC as a JUG is in an unique position • All our JCP decision making is in the open! – Meeting minutes – Our voting criteria – Our votes and why we voted – Thought processes on existing JSRs • “Meritocracy of the Willing” – No barriers to joining the LJC JCP Committee 9
  • 10. First order of Business - Vote on JSR 348 • Openness and Transparency of JSRs and the JCP itself – Started by the Oracle before we joined • Exciting meetings about minute details • Endless phone conferences • Good to have deep roots with your JCP Reps – No one should go through that alone 10
  • 11. JSR-348 - A Massive success • JSR-348 was a hit • It didn’t cover everything the community wanted • It did get the full EC’s collaborating again • Some of the most vocal voices for openness were large vendors! – JSR itself was lead by Oracle • JSRs are now accessible to the technical community 11
  • 12. A General move towards openness • JCP EC members are pushing the FOSS agenda • The OpenJDK is now the RI for Java! – This includes the Mac • Oracle has promised all of its older JSRs will be run under 348 – They’re almost there • Small trademark and licensing issues have been cleaned up • There’s still obviously some important work left to do 12
  • 13. Adopt a JSR • With JSR-348 coming into being, developers could now act • JSRs were ripe for adoption by the wider Java community • So we launched ‘Adopt a JSR’ on Oct 31st 2011 • LJC working with JCP to guide spec leads – With JSR-348 compliance – Making JSR-348 a positive FOSS experience 13
  • 14. What is the Adopt a JSR program? • See http://adoptajsr.org for full details • A JUG lead initiative to improve standards in the Java ecosystem • Groups of JUG members work on JSRs
  • 15. Why the JUGs get involved • To be involved in “Moving Java forward” – Sorry, we couldn’t resist • To ensure that ivory tower standards do not occur • To make sure the useful libraries and APIs get built • To boost the careers of JUG members – Gain new technical and community skills and much more! • It’s fun!
  • 16. How does it help the Standards? • Standards get earlier feedback – Leading to more developer friendly APIs • Standards get 'end user/developer' expert input • Standards get developed more quickly • JUGs can also help with management of the JSR 16
  • 17. Who’s involved already? • See http://adoptajsr.org for up to date details – The London Java Community (UK) – SouJava (Brazil) – GoJava (Brazil) – Houston JUG (USA) – Chennai JUG (India) • + Several more starting out 17
  • 18. What difference have they really made? • The LJC is helping make sure JSR-310 gets through – Date and Time for Java 8 – Focussed on building the TCK, ~50% by Dec 2011 • Houston JUG and Chennai JUG is working on JSR-347 – Data Grids API for Java EE – Helps avoid vendor lock in • Large increase in ‘passive participation’ – More downloads, mailing list subscribers etc 18
  • 19. Adopt the OpenJDK • A JUG lead program for working on the OpenJDK • Aim to to lower barriers to working with the OpenJDK – Potential to dramatically increase # of OpenJDK hackers • Currently working on a variety of issues – Website, Wiki, Build, JIRA Triage, Small bug clean ups & more • http://java.net/projects/jugs/pages/AdoptOpenJDK 19
  • 20. Realisations about the OpenJDK • Huge leaps made recently – It’s the RI for Java – Mac port is now in mainstream • Infrastructure problems need to be dealt with – Community wide problem, not just Oracle’s! • JEPs are a good idea in principle... – Their relationship with JSRs have a perception problem • Still large barriers to entry – Clouds of fog and mystery for the developer on the street 20
  • 21. A General move towards community • Adopt a JSR has been widely supported • Most JSRs need a massive Ux overhaul • OpenJDK hacking is being actively encouraged • OpenJDK needs a massive Ux overhaul 21
  • 22. The next bit of reform, JSR-355 • JCP.next (the 2nd) • Long overdue merging of the SE/EE and ME EC’s • Several EC members not turning up/voting – This made us quietly furious • A smaller, more focussed group will do a better job • Some political and bureaucratic wheeling and dealing 22
  • 23. The next bit of interesting reform... • The almighty JCP.next (the 3rd) • Will look at the JSPA • Will look at TCKs and licensing • Lots of other small issues that require legal eagles • Many old arguments will come to the surface • We think it will be important to take a step back – Look at the TCK problem from different angles – Existing arguments are well documented 23
  • 24. Realisations about the JCP EC • The EC members do not discuss JSRs enough • There needs to be more technical balance – This is improving • EC members are not open enough about why they voted – Need to have meaningful commit messages! • There is a great deal of willingness to change – This is not reported enough 24
  • 25. Extra Lessons we’ve learned • It’s still easy to miss a vote – There’s no excuse for this we simply must all do better • Enthusiasm and optimism grinds down barriers • We recognised that when organisations throw their toys in public.... – It’s counter productive – Time is wasted • Companies like Oracle are not one giant machine with a single will – Patience is a virtue – Large companies have large turning circles 25
  • 26. Thanks for listening! • The acronyms become familiar, we promise! • We’re looking forward to working towards more Java freedom in 2012 – Shameless Plug: Re-elect us! • Need to get in touch? – Ben Evans (@kittylyst) – Martijn Verburg (@karianna) • http://adoptajsr.org • http://java.net/projects/jugs/pages/AdoptOpenJDK 26

Editor's Notes

  1. \n
  2. \n
  3. This is an opinion --> We tend to have lots of those\n
  4. \n
  5. And on and on and on and on...\n
  6. * With prominent departures.. --> The developer community needed more....\n* We have lots of community and FOSS experience\n
  7. * Nice story about the win being announced at the EMEA OUG session\n* Committee --> Deep roots are important, Currently 8 very active members\n* Committee --> Conscious that we had a lot to prove\n
  8. \n
  9. * Have no products/services etc to fight for\n* Have a wide representation\n
  10. * We voted yes on Java 7, but noted the lack of transparent mailing lists as a major concern!\n* Run JSRs like Karl Fogel suggests you run FOSS projects\n* Sentence structure, Legal interpretations, Spelling and Grammar and their impact, Points of order\n
  11. * People and organisations started becoming interested in the JCP again, JCP elections for late 2011 were hard fought\n* An important social aspect for harder JSRs to come\n* Including Oracle *Gasp*, Surprised a number of observers\n* Think of it like invokedynamic, it’s the great enabler\n
  12. Despite what the mainstream tech media reports\n
  13. \n
  14. \n
  15. \n
  16. JUGs can help build, Reference Implementations (RI), Technical Compatibility Kits (TCK)\n* Managing mailing lists, Triaging issues, Testing, Evangelism + more!\n
  17. \n
  18. \n
  19. * Laser focus\n
  20. \n
  21. \n
  22. Largely an uninteresting JSR for observers\n Some members were stirred from slumber\n
  23. \n
  24. To be blunt, not enough techies capable of voting on technical merit\n
  25. \n
  26. \n