Last week was the Jfokus Developer Conference in Stockholm, Sweden, which was celebrating its tenth anniversary. Unlike some conferences, Jfokus has a “two year rule,” which means that you can present in two consecutive years, but not for a third. As such, I think I have been to most of the ten conferences, but not all of them for the obvious reason.
In my opinion, this is one of the best conferences in Europe: great attendance (1,800 people this year, I believe), great organization, and great sessions.
This year there were two mini conference-within-a-conferences:
1. The IoT Conference
This included a keynote from Pawel Ostropolski of Intel on the evolution from the Internet of screens to the Internet of things. Due to other things I didn’t get a chance to attend the IoT conference part; I will catch up with this when the videos are available. This is one of the great things about conferences like Jfokus that make it possible to watch all the content at some point after the conference. Often there are multiple concurrent sessions that you want to attend but can’t.
2. A JVM Summit
This somewhat replicates the event that is held in California each year. This was held on the first day and included a great presentation from Brian Goetz about the road to Valhalla, which is the project working on adding value types to Java. I left the presentation realising that I really don’t envy Brian trying to navigate the problems of making value types work seamlessly with things like generics without breaking backwards compatibility.
Later in the morning, I learnt there was far more to a simple String (at least in terms of the way the JVM implementation handles them) from Aleksey Shipilëv. This was another demonstration of the complexity that lies beneath the surface of the JVM and something developers really just take for granted.
In the afternoon, I presented on the ObjectLayout project that Gil Tene has started, which is intended to provide better performance by treating objects in a way that is similar to how structs are used in C and C++. The audience had plenty of in-depth questions, which showed they were both knowledgeable and understood the issues associated with the subject. This is always the way I like to gauge whether my presentation has been a success. You can watch the video here.
As for the main conference, it was a completely packed event. I tried to get into Brian Goetz’s keynote on the first day, but couldn’t even find standing room at the back. Rather than trying to find a way in I decided to watch it later; I’d already had a drink with Brian the night before so had some idea of what he’d be talking about.
JDK 8 Lambdas and Streams
On the second day, I delivered a session on “JDK 8 Lambdas and Streams: Beyond the Basics.” This is one that I’ve been working on for a while and is really a collection of lessons I’ve learnt while rewiring my brain to cope with functional programming and not letting imperative programming creep into my approach to solving problems. I also added some new material on the features that are being added to streams in JDK 9. There are some nice tweaks including takeWhile and dropWhile methods.
The conference party was fun, with the usual opportunity to network with people and take strange selfie pictures (just search Twitter). There was also entertainment from a man with a giant red balloon that he started off with on his head and proceeded to climb inside somehow. I’m always amused by the way people come up with ideas for things like this; I suppose it’s no different to the creativity that leads to some of the most popular applications!
As always, much of the value to me of this conference was the conversations I could have with people outside of the sessions. As this was my first conference as an Azul employee, it was great to catch up and hear that people thought that Azul was becoming more visible to the Java community.
Join our Java Community
In fact, you can join our Java community, Zulu Community, to share ideas, weigh in on the Forum and get a free download of Zulu, Azul’s version of Open JDK.
See You Next Year?
Since I didn’t present last year I am hopeful I’ll be able to get a paper accepted next year and attend the 11th edition of Jfokus.
Maybe I’ll see you there!