Imagine a bacon-wrapped Ferrari. Still not better than our free technical reports.

A Java Fanboy’s Impression of JavaOne Russia 2013

I’m back from Moscow after JavaOne Russia conference, and I gotta say the event was great: superb talks, awesome crowd, great venue! It was a very fruitful event for me in terms of delivering talks, talking to attendees and networking with other speakers. Even more – I attended some of the sessions and learned some new cool stuff.

The Venue

Crocus Expo, although located quite far from the center of the city, is very accessible by subway and it took me about 45 minutes to get there from Radisson Slavyanskaya hotel, where me and other conference speakers stayed.

Crocus spawns several buildings with rooms that could be adopted to any requirements and JavaOne occupied one floor in one of the buildings. Here are some pictures for you to get the impression of what it looked like:

The main conference hall

The exhibition and chill-out area

The “Game Zone” with some retro games from the ‘80s


I usually don’t have much time to listen to talks at conferences, since I either have to prepare my own talks or carry out booth duties (I’m typically the booth babe ;-)… however, this time I had the opportunity to attend several talks delivered by Oracle developers.

Performance engineers, Aleksey Shipilev and Sergey Kuksenko are the rock stars here, delivering the talks on Java performance, Java memory model, benchmarking, concurrency and lambdas. You can learn a great deal from those guys by listening their talks (if you understand russian). I’m happy we have Aleksey committed for GeekOut 2013 this year!

Actually, before listening to those guys talks you would like to learn some JIT, delivered by one of the compiler developers, Vladimir Ivanov.

Java microbenchmark harness (JMH) was mentioned in many of the talks. The tool was developed by Oracle performance engineers to make proper benchmarking of Java code. By listening to the talks I started to understand that benchmarking isn’t just about measuring the execution with System.nanoTime() – the benchmark should be isolated from the side-effects that might be caused by all kind of factors – the way the code is written, the measurement itself, JIT compiler, or even the underlying hardware. So if you’re trying to measure how your code performs, don’t try to reinvent the wheel – do yourself a favor, try JMH first.

Myself, I delivered two talks: Dynamic updates of Java EE applications, and Java classloaders – the collection of pitfalls. Both talks were received very well: what I like about this crowd is that people don’t hesitate to ask questions or just comment – it is easy to get interaction with the audience.

The speakers view to the audience

Moscow never sleeps!

Even though Moscow is a huge city which might be a bit scary, it is a great place for a conference like this. There is plenty of sightseeing you can do – visit Kremlin and Red Square; do some shopping – there are huge shopping centers of all kind; try different cuisine – yes, dude, there are restaurants! :)




Looking forward for JavaOne in San Francisco now and hope to be back in Moscow next year!