Thursday Jan 24, 2013

Top Ten Things To Do at Jfokus

Jfokus in Stockholm Feb 4-6 is a fantastic experience if you're even close to the world of Java or a JVM. Internationally recognized speakers, interesting companies in the exhibition, tutorials, presentations and great people to mingle with. If you're attending for the first time, the massive program might be overwhelming, so I've put together a top ten list of my favorite topics, things you can do at Jfokus - see you there!

Get to Know Your Application and Make it Behave!

This year, you'll get both Java 8 with Lambda features and new Date and Time - but if your application is executed in a performance sensitive environment, you'll definitely want to attend the session with Klara Ward from the Java Mission Control development team, presenting the monitoring application that will be distributed in the JDK.

Pair Klara's session with one of Kirk Pepperdine's, to find out what to do with the data from Java Mission Control. His performance presentation together with Java performance engineer Alexey Shipilev was voted top three sessions at Devoxx a couple of months back. During University day, learn his Performance Optimization Methodology or visit his presentation Wed to learn to listen to what your GC logs say to you.

Java Community Corner

Hang out in the Java Community Corner, enter the Raspberry Pi raffle and charge your laptop. Meet both the Oracle presenters and engineers working at the local Java development office at Münchenbryggeriet in Stockholm. (Just across the water from Jfokus!) There will be a scheduled posted for when each engineer will be there.

Contribute to Java

The Java Community Process sets the Java Standard, what Java is and what it isn't. The OpenJDK is the open source project where the  specification is implemented in, e.g. Java 7, Java 8, Java 9 etc. Meet Heather VanCura managing the JCP office and learn how the JCP works - if you ever have wanted to change something with Java - attend this session!!

Tues evening, you'll meet me, Heather Van Cura and JCP EC and JUG leader Martijn Verburg to find out more how you can contribute to Java, both the specification and the future implementations! Learn how to participate in the JUG initiatives Adopt-a-JSR and Adopt-OpenJDK.

Discuss the Java Strategy

Want to know the current direction of Java? Listen to Georges Saab, VP of development doing the keynote on Making the Future Java - Together and Mark Reinhold, chief architect of Java talk about Java 8, Java 9 and beyond. You will meet them afterwards in the Java Community Corner to discuss your own ideas for Java :)

Open Source Hackergarten

Andres Almiray is arranging an open source Hackergarten starting Monday during the University day and will continue over Tuesday. Bring your favorite open source project and hack along with others. Creativity and engagement will go through the roof!

Embedded and Raspberry Pi

Glad to see a focused sub-conference on the Internet of Things at Jfokus Embedded. Joakim Eriksson from Swedish Institute of Computer Science will lead a qualified discussion on the topic at the Opportunities and Challenges with Embedded & Internet of Things BOF. Java has support for Raspberry Pi, making it easy for any developer to write embedded application. Terrence Barr will talk and show demos on the how Java fits into the Internet of Things.
Visit the Oracle embedded booth to meet Oracle embedded evangelists Simon Ritter, Stephen Chin and Terrence Barr showing demos and discussing embedded - and of course to enter the Raspberry Pi raffle (You wantz one, yes you do :). Stephen Chin will do one of his NightHacking sessions on Raspberry Pi, will be fun for sure!

Continuous Integration

Get fast feedback on how your latest changes affected the quality of your product, get the ability to release daily or even several times a day. Discussing best practices around continuous integration can affect your development process in ways you never imagined. There are several presentation and then join the discussion on Build, Test, Deploy and Automation to see if you can take anything to your project!

Get a Laugh with the Java Posse

You might not have heard their eight year old, still ongoing podcast show (currently 406 episodes!), but you'll still get a laugh with some nerd humor from the four guys in the Java Posse. Don't miss the opportunity at Tues 4.30pm [blog update] 6.30pm as they visit Sweden at Jfokus!!!

James Gosling - Meet the Father of Java

James Gosling has engaged in some truly interesting projects concerning programming autonomous robots doing work at sea. Whether or not interested in the topic (it is very visual and engaging!), visit his session, just to have been in the same room with the father of Java :) [blog update] Gosling will be streamed from the US!

Succeeding with Software Development

Software development is both learning the technology and then getting an approach to turn it into a successful software development project, often with the collaboration from many. Martijn Verburg and Ben Evans, famous thought leaders of the Java community, leaders of the London Java User Group and also part of the Java Community Process Executive Committee will give a talk on Modern Software Development Anti-Patterns. I tried to get in to the session at Devoxx and failed, make sure to arrive on time!

Listen to Thomas Sundberg's concrete presentation on how to fail a software project fast and easy and draw your own conclusions :)

Friday Jan 18, 2013

Japanese high-school student recognized by Brian Goetz

As I wrote in my previous blog post, I'm glad to see strong values of technical excellence, helping others and contribution in the OpenJDK community.

Software architect and lambda guru Brian Goetz brought my attention to an example of someone doing valuable contributions to Java. A Japanese student under the nickname "bitter_fox" did a series of patch suggestions on the OpenJDK email list "lambda-dev". You can see the suggestions he made, e.g. in the July mail archive for lambda-dev.

Bitter_fox found problems, investigated and then presented the background and patch suggestions on the email list. Really valuable for the progress of a project. Brian Goetz ended up sending him a symbolic token of appreciation with a small packet of Java souvenirs, I don't read Japanese, but you can see the google translate of his unboxing blog post.

There are around 100 mailing lists, join a couple of them out of interest for the area and see what's going on, maybe you can find a way to contribute to Java.

Friday Jan 11, 2013

How do I play OpenJDK?

Both as a newbie and as a senior contributor, if I'm to stay engaged in any open source project, I want to make sure I won't waste my time. If I understand the processes and they are clear and structured, I can perform miracles. I quickly want to know if I have the competence to deliver something meaningful to the project and once engaged, I want the time I've committed to be respected. I want to do the right thing and I quickly want to understand how to do that - I want to learn the rules of the game.

In OpenJDK, there is plenty of room for innovation and ideas and also clear project management to get releases out there, choosing what projects to work on and prioritizing them. Reading the OpenJDK Bylaws will help participants understand how decision processes are designed.

After learning the rules, there's still plenty of room to learn how they are applied in reality, so plenty of excitement left. I'm pleased to see that the culture of OpenJDK when reading the mailing lists is based on strong values, e.g. technical excellence, contribution and helping others. Many Java User Groups have started engaging their members with OpenJDK in the Adopt OpenJDK program.

OpenJDK Quick Start

Oracle OpenJDK people Donald Smith, Dalibor Topic and Iris Clark gave an extensive presentation on the governance model for OpenJDK at JavaOne, you should really watch that, these guys know their stuff for real.

I delivered a presentation of a summarized model to the Hamburg JUG just before Devoxx, I'll summarize the presentation below, well aware that I'm omitting some important details, so consider this a crash course, to get a feeling for the governance model. If anything seems odd, please refer to the OpenJDK Bylaws and what the OpenJDK Governing Board says.

OpenJDK Participation

You can review lists of the Groups, Projects and people in OpenJDK from the Census page.


General Community role, anyone interested signing up for different mailing lists, making minor contributions.


General Community role, someone that has signed the license agreement OCA, can propose/submit non-trivial changes to OpenJDK code.

OpenJDK Member

Senior role, after nomination of other Members. There are a bit more than 100 OpenJDK Members currently.

OpenJDK Groups

  • A Group is a set of Participants sharing an interest discussed over email and web page.
  • OpenJDK Members can propose creation of a new Group.
  • A Group can sponsor Projects.
There are currently around 20 Groups and 40 Projects listed in OpenJDK (some more active than others).

Group OpenJDK Governing Board

Makes sure everything is working as directed by the Bylaws.
Five members, two members appointed by Oracle, one member appointed by IBM and 2 “at-large” members elected annually. Sponsors projects for Java SE Platform releases like JDK8.

Group OpenJDK Members

May vote on new Projects, nominate Groups, vote for “at-large” members for the Governing Board.

Other Groups

Examples of other groups are Porters creating ports to different platforms and the group Build sponsoring update releases.

Roles of Groups

Group Member

A Contributor who has history of significant contributions to a group, and elected to membership in that Group.
May nominate other Contributors to elect a Group Member.
Has write access to the Group’s web content and file repositories

Group Lead

An OpenJDK Member who is responsible for directing and coordinating the Group’s activities.
Has the authority to sponsor Projects.
Obligation to act as contact point for Group and look after content.
Obligation to publish a quarterly report on activities on the Group.
Appointed upon Group creation by approval of the Governing Board.
A Group Lead who has departed may be replaced by approval of Group Members and ratification by Governing Board.

OpenJDK Projects

A Group can sponsor Projects.
A Project have a specific purpose like to produce code or documentation, e.g. Coin or JDK 8, and can have a code repository.
Projects are operated in an “open, transparent and meritocratic” way.


Currently there are approximately 400 authors in total.
Self-nominated, appointed by Project Lead.
Should have done a few relevant, sponsored requests.
May create change sets but may not push them directly.


Nominated and approved by other Committers after a number of significant changes.
May create and push change sets when confirmed by approval process.
May vote on new Committers.


An Experienced Committer, a larger number of changes, nominated and elected by other Reviewers in the Project.
Role only exists in Projects where a Reviewer Role is required.
Reviews and approves change sets.

Project Lead

A Committer for the Project responsible for directing and coordinating the Project’s activities.
Considered a Reviewer, and maintain Reviewer status
Elected by the sponsoring Group Lead(s).
Has full authority over all technical matters related to the Project, including when to require formal change reviews.
Has the authority to appoint and remove Authors who are not also Committers.
Obligation to act as contact point for Project and manage content.
Obligation to publish a quarterly report on activities on the Project.

Wednesday Jan 09, 2013

Show me the results!

Feedback on the quality and stability of development builds is of course key to any software development project. Oracle Quality Engineering Manager Rory O'Donnell has taken a first hit at making test results for the JDK 8 early access builds available, you can find them on the project page:

Rory announced this is in a post to the OpenJDK quality-discuss mailing list, might be interesting to follow!

Wednesday Dec 12, 2012

Working with volonteers

I've been engaged as a scout leader in the Scout movement since 1993, working on a local and national level, leading both kids and other scout leaders.

Last year, the Swedish Scout Association invited 40000 scouts aged 14-17 years old from 150 countries around the world to go camping for 10 days. I was on the planning team with a couple of hundreds of my closest scout friends and during a couple of years we spent our spare time planning logistics, food, program, etc to give these youths an experience of a life time.

It was a big and complex project; different languages, religion (Ramadan was celebrated during the camp) and the Swedish weather were some of the factors we had to take into account. The camp was a huge success, the daily wow factor was measured and people truly had fun and got to know each other. I learnt a lot and got friends around the globe - looking back at the pictures it feels unreal that we managed it.

The Java platform as OpenJDK and its' future is a similar project in my mind. With 9 million developers and being installed on 3 bn devices, the platform touches a lot of users and businesses. There's a strong community taking Java into the future, making sure it stays relevant. Finding ways to collaborate in a scalable way is the key to success here. We have the bylaws directing how decisions are made, roles are appointed and how to "level" within the community. Using these, we can then make contributions according to our competence and interest and innovate taking our platform into the future.

If you find a way to organize volunteers towards a common goal, solving conflicts, making decisions, dividing the work into manageable chunks and having fun while doing it - there's no end to what you can achieve.

Wednesday Nov 28, 2012

Creative, busy Devoxx week

I got back from my first visit to the developer conference Devoxx in Antwerp. I can't describe the vibes of the conference, it was a developer amusement park, hackergartens, fact sessions, comic relief provided by Java Posse, James Bond and endless hallway discussions.

All and all - I had a lot of fun, my main mission was to talk about Oracle's main focus for OpenJDK which besides development and bug fixing is making sure the infrastructure is working out for the full community. My focus was not to hang out at night club the Noxx, but that was came included in the package :)

The London Java community leaders Ben Evans and Martijn Verburg are leading discussions in the community to lay out the necessary requirements for the infrastructure for build and test in the open. They called a first meeting at JavaOne gathering 25 people, including people from RedHat, IBM and Oracle. The second meeting at Devoxx included 14 participants and had representatives from Oracle and IBM. I hope we really can find a way to collaborate on this, making sure we deliver an efficient infrastructure for all engineers to contribute to OpenJDK with.

My home in all of this was the BOF rooms and the sessions there meeting the JUG leaders, talking about OpenJDK infrastructure and celebrating the Duchess Duke Award together with the others. The restaurants in the area was slower than I've ever seen, so I missed out on Trisha Gee's brilliant replay of the workshop "The Problem with Women in IT - an Agile Approach" where she masterly leads the audience (a packed room, 50-50 gender distribution) to solve the problem of including more diversity in the developer community. A tough and sometimes sensitive topic where she manages to keep the discussion objective with a focus of improving the matter from a business perspective.

Mattias Karlsson is organizing the Java developer conference Jfokus in Stockholm and was there talking to Andres Almires planning a Hackergarten with a possible inclusion of an OpenJDK bugathon. That would be really cool, especially as the Oracle Stockholm Java development office is just across the water from the Jfokus venue, some of the local JVM engineers will likely attend and assist, even though the bug smashing theme will likely be more starter level build warnings in Swing or langtools than fixing JVM bugs.

I was really happy that I managed to catch a seat for the Java Posse live podcast "the Third Presidential Debate" a lot of nerd humor, a lot of beer, a lot of fun :) The new member Chet had a perfect dead pan delivery and now I just have to listen more to the podcasts! Can't get the most perfect joke out of my head, talking about beer "As my father always said: Better a bottle in front of me than a frontal lobotomy" - hilarious :)

I attended the sessions delivered by my Stockholm office colleagues Marcus Lagergren (on dynamic languages on the jvm, JavaScript in particular) and Joel Borggrén-Franck (Annotations) and was happy to see the packed room and all the questions raised at the end.

There's loads of stuff to write about the event, but just have to pace myself for now. It was a fantastic event, captain Stephan Janssen with crew should be really proud to provide this forum to the developer community!


Been with the Java platform since 2002, mostly JVM. Active as a scout leader with a strong passion for coordinating community efforts. Working current with OpenJDK, making sure developers can contribute efficiently. Tweet me comments! @ceciliaborg The views expressed on this blog are my own and do not necessarily reflect the views of Oracle.


« July 2016