adopt openjdk - lessons learned and where we're going (fosdem 2013)
DESCRIPTION
This talk is about the the Adopt OpenJDK programmeTRANSCRIPT
Adopt OpenJDK
What we've learned & Where we're going
Martijn Verburg (@karianna)Ben Evans (@kittylyst)
Slide Design by Kerry Kenneally http://www.kerrykenneally.com1
We are pleased to have a legal slide!
This work and content is licensed under
Creative Commons Attribution-Non Commercial-Share
Alike 3.0 Unported License
2
Like last year - why we're partly here...
3
How this talk is going to work
• This is a fact!
• This is an opinion
– We will not poke fun at large corporations
• Two sections:
– What we've learned (A bit of whining)
– Where we're going (What we're hoping to do about it)
4
What is the Adopt OpenJDK program?
• A JUG lead initiative to improve participation in OpenJDK
• A programme to help improve OpenJDK workflow
• An advocacy programme
5
What is its relationship with OpenJDK
• A feeder programme of ideas and talent
• A mentoring and educational incubator
• An place to prototype new social/community workflow ideas
• Early feedback mechanism
What is its relationship with OpenJDK
• An area to try some small technical ideas
• An area to work with casual as well as full-time participants
• Ideas and tech will shift to the OpenJDK on merit
– Usual OpenJDK rules apply
What we've learned
8
Developers love the idea of OpenJDK
• Developers are hugely keen to get involved
• They want to help the platform that has given them so much
• There is often real significant contributors hiding away, e.g.
– Mutability detector– Research from Cambridge University, UK– Working build-infra builds on all major platforms– Richard Warburton & Jim Gough on JSR-310
9
Hackdays are the best way to educate
• Hosting hackdays has been very successful
– ~10 were held in 2012
• In 2-3 hours, 20-30 developers can get started on OpenJDK
– This propagates through conferences and JUGs
• Richard can explain how Lambdas and Date/Time went
10
Developers are scared of OpenJDK
• They think only Rocket Scientists need apply
– They think you need advanced C/C++/Assembler skills– Charlie doesn't help ;-)
• They are scared to make public contributions
• They are scared they will break something
– Lack of access to (open) tests
11
Developers are surprised at the helpfulness
• OpenJDK has somewhat of a surly reputation
– Several well meaning technologists who have their ideas rejected– Oracle staff are often buy on internal deadlines
• Most OpenJDK projects have a very welcoming attitude
– This needs to be publicised more
12
Developers can't build OpenJDK easily
• Even with build-infra - it's a barrier to entry
• Lack of IDE support
• make is an unfamiliar build tool for many
• Developers guide is out of date
13
Developers can't test OpenJDK easily
• Even with jtreg improvements - it's a barrier to entry
– TestNG support is very welcome
• Lack of access to complete (open) tests
• Lack of alternative test platforms
• Lack of CI
14
Developers want to code socially
• They are used to GitHub/BitBucket
• They are used to collaborative code review
• They are used to open issue trackers
• They used to UI/Ux which leads them to information
15
Developers want to code socially
• They are used to ideas/designs being discussed more fully
– JEP system whilst seemingly fair is causing frustration
• They are used to fairly consistent technical standards
– OpenJDK projects all have their own
16
Developers struggle to submit code
• Many branches/forests/trees confuse them
• webrev is a major hurdle
– Patch turnaround times are slow for external contributors
17
Where we're going
18
Developers love the idea of OpenJDK
• We're promoting the living daylights out of OpenJDK
• 4 new dedicated LJC advocates
• A new Brazil-wide programme launched by SouJava
• 20+ hackdays planned globally in 2013
19
Hackdays are the best way to educate
• 20+ hackdays planned globally in 2013
• All major conferences to hold them
– Arranged via the JUG Leaders and Java Champions programme
• Hackday materials to be shared on GitHub
• LJC Advocates working on Chef/Vagrant builds
20
Developers can't build OpenJDK easily
• 5+ JUGs combining to product build instructions
– For all major platforms
• build-infra friendly IDE build instructions being worked on
• chef/vagrant/shell scripts to simply builds
21
Developers can't test OpenJDK easily
• Testfest planned with IBM and Oracle et al
– TestNG tests will be written
• Gentlepersons agreement at Devoxx to open up tests
– Oracle, IBM, RedHat, Azul et al
• Initial discussions around a secure distributed build farm
– Cloudbees willing to donate free compute time/space for this
22
Developers can't test OpenJDK easily
• Programme planned to involve JVM F/OSS projects for testing
– When M7 is released– Needs infrastructure?
• Global test hackdays to co-ordinate testing and results
– TBA
23
Developers want to code socially
• AdoptOpenJDK GitHub
– For collaborative code review
• LJC is now incorporated
– Bank A/C will be opened and funds secured– Global JUG non-profit corporation?
• Adopt OpenJDK will host build platforms, chef-server etc
24
Developers struggle to submit code
• Adopt OpenJDK will investigate a living visualisation of forests
– TBA
• Adopt OpenJDK will host a webrev service
– Allows irregular contributors a way to submit patches
25
Thanks for listening!
• Need to get in touch?
– Adopt OpenJDK (@adoptopenjdk)– Ben Evans (@kittylyst)– Martijn Verburg (@karianna)– Richard Warburton (@richardwarburto)
• http://adoptopenjdk.java.net
26