📜 ⬆️ ⬇️

Joker 2016 Java Conference: More, More, More Interesting

The Joker 2016 conference, which was held on October 14-15, 2016 in St. Petersburg, was arguably the largest Russian-language Java conference ever. 2 days, 52 reports, 6 parallel tracks, more than 40 speakers, over 1000 participants.



The period immediately preceding the conference was very rich and eventful:


The real pearls of the above, in my opinion, were interviews with Baruch Sadogursky and Vladimir Krasilshchik (both are Joker 2016 speakers).
')
Compared to previous years, the conference has grown further - there are one and a half times more parallel tracks (six instead of four). The choice of reports to view from several almost equivalent options has become even more difficult. Often there was a feeling of being a child in a pastry shop - bright, tasty and difficult to choose.

A new venue for the conference was launched - St. Petersburg Expoforum . Beautiful scenery ( one , two ) and speakers with the organizers , decorating the conference with their presence.

Conference opening


Conference organizers (Alexey Fedorov, Andrey Dmitriev) and its speakers (Oleg Anastasyev, Andrey Paning, Dmitry Bugaychenko) at the opening.



First Day Reports


The reports of the first day were as good as the reports of the second day. The choice made it easier for all the reports to be recorded and later everything could be seen.

What's in a name?
Alexey Shipilev, Red Hat



The first report, which sets the general mood of the conference (the so-called keyout ), began by Aleksey Shipilev. By "warming up" any report of Alexey simply cannot be by definition. Even a slightly lightened topic for keyout was abundant in technical details, formulas and, of course, traditional aphorisms (“Curve named W”, “don't be afraid to look at your application”, “let's play members a little”).

In a relaxed manner, step-by-step recommendations were given to achieve “sufficient and satisfying” performance. On the second day, Alexey continued the more complex report “Close Contacts of the JMM-degree”.

Shortly before the conference, Alexei moved from Oracle to Red Hat , so the red color of the jacket (with the inscription “Oracle” on the chest) was quite appropriate here.

Groovy Puzzlers S03 - so grub so grub!
Baruch Sadogursky and Victor Gamov



Baruch and Viktor incendiaryly presented the third season of Groovy Puzzlers (after the first season at Joker 2015 and the second season at JPoint 2015 ).

The rules are the same - try to guess (not looking for clues), actively vote, correctly explain your answer. By the middle of the report, the audience was able to stir up. I think that the result was equally liked by both the audience and the speakers.

Native code, off-heap data and java
Vladimir Ivanov, Oracle



I am following with interest the fate of the Panama project, the results of which will be available no earlier than Java 10 . Vladimir is one of the most respected experts in this field. A detailed comparison was made with the Java Native Interface ( JNI ) and the Java Native Runtime ( JNR ), showing the advantages and disadvantages of each solution.

To some extent, what was told (except for Panama, it was also about VarHandles ) was supplemented by a report by Alexey Shipilev about VarHandles from JPoint 2016.

Fads Stream API
Tagir Valeev, JetBrains



Another permanent speaker of Java-conferences (and part-star of the Java hub on Habré lany ), who changed jobs from the last conference (April JPoint ). Recently, Tagir works at JetBrains , which is good news for all fans of this company's products.

The report continued the topic of the Stream API , launched in the reports at JBreak 2016 and JPoint 2016 . It was in this report that they talked about bizarre, strange, illogical, at first glance, behavior in some cases when working with streams. In the second photo, Tagir demonstrates a random number generator in the form of cubes, as an auxiliary attribute to "Whim Number 3". I think that the audience did not regret the choice of the dock, the hall was full.

Riding jet streams
Victor Gamov, Hazelcast



Victor Gamow, co-founder and co-host of the podcast Debriefing , who is also an employee of Hazelcast, picked up the topic of using streams in the next report.

The traditional (on one computer) application of streams has been replaced by distributed using Hazelcast and Hazelcast Jet . In the code shown, data manipulations were performed with the English text “War and Peace”, if you wish, examples can be viewed and run.

Beating Threads - live coding music
Sam Aaron, University of Cambridge



Sam Aaron’s very curious and informative report concluded the first day of the conference. Sam demonstrated his Sonic Pi program (a very beautiful and user-friendly website of the program) intended for music live coding.

In addition to entertainment use (DJ at the disco), Sam positions it as an auxiliary tool for learning programming (there is even a lesson plan on the site). Distributions for Raspberry Pi , macOS , Windows , Linux are available . The source code is on github .

The report was rather academic in nature, Sam really came off at the party of the first day of the conference (see video ). More videos are on Sam's official YouTube channel .

Guests "debriefing" on the first day


Innovation of the conference was the podcast site Debriefing . Residents of the podcast interviewed organizers, speakers and participants.

Alexey Fedorov, surrounded by the leading podcast (Anton Arkhipov, Victor Gamov, Alexey Abashev, Baruch Sadogursky). Interview with representatives of the company Crossover .



Conversation with Ivan Krylov, Alexei Shipilev, Andrei Dmitriev. Interview with Gleb Smirnov.



Closing day one


Presentation of gifts to program committee members - Andrey Kogun ( jug.msk.ru , first shot), Vladimir Sitnikov and Vladimir Krasilshchik (second shot). Receiving a gift Tagir Valeev (third shot).



Second day reports


The first three reports of related topics were simply ideally formed into a sequence for viewing: “From Java to Assembly: Down the Rabbit Hole”, “Life Cycle of the JIT Code” and “Baytkod for Inquisitive People”.

From Java to Assembly: Down the Rabbit Hole
Charles Nutter, Red Hat



Charles is one of the leaders of the JRuby project. The title of the report coincides with the title of the first chapter of Alice's Adventures in Wonderland ( Alice in Wonderland ). The presentation used the classic illustrations of John Tenniel from the first editions of both Carroll’s books about Alice.

The analogy between Wonderland and JVM is quite successful, the style of presentation and the construction of the report are also quite original. In an interesting form, the path from Java source code to native code was shown - compiling to bytecode, interpreting bytecode, JIT compiling to native code. In addition, features of the implementation of final- fields, synchronized , volatile , switch statements for strings, lambda expressions were disclosed.

JIT code life cycle
Ivan Krylov, Azul Systems



The logical continuation of the previous report was the report of Ivan Krylov about the Just-in-time ( JIT ) compilation. In addition to the transformation of code, profiles and deoptimization cases, 5 levels of compilation (with possible transitions between them) and 4 existing APIs for tuning compilation were mentioned.

An interesting story was about ReadyNow - a technology specific to the Azul Zing virtual machine. He also mentioned about the even more increased interest from Oracle for the static compilation of Ahead-in-time ( AOT ), see JEP 295 .

Baytkod for inquisitive
Anton Arkhipov, ZeroTurnaround



Anton Arkhipov perfectly completed the series of the first three reports of the second day, talking about Java bytecode: the set and types of instructions, the peculiarities of working with the stack and the table of local variables, an overview of the available tools.

The tools mentioned were Java Bytecode Editor , ASM Bytecode Outline plugin for IntelliJ IDEA and ObjectWeb ASM . The example shown was available on GitHub .

Java 9 Modularity in Action
Sander Mak, Luminis Technologies



The burning topic, which everyone will inevitably face in the near future (or not soon, if the release of Java 9 is once again postponed) is modularity (the Jigsaw project). Sander is the co-author of O'Reilly’s Java 9 Modularity book, and is therefore well versed in this matter.

In addition to general issues (modularity goals, modularity history within the Java ecosystem), the current state ( Java 9 has not yet come out) is shown with code examples.

Evolutionary design
Kirill Tolkachev and Alexander Tarasov, Alpha Laboratory



The brilliant duo of Kirill Tolkachev and Alexander Tarasov this time interested in the topic of evolutionary design. The rapid and lively narrative (189 slides per hour of the report) demonstrated the evolution of the architecture and technology stack under the influence of changing requirements, accumulating experience and emerging new tools and methodologies.

Particularly interested in the grand "technology table", which was formed during the report.

Pragmatic performance
Gil Tene, Azul Systems



Gil is co-founder and CTO of Azul Systems . His report echoed the first report of Aleksey Shipilev, who also called for a more pragmatic approach to application performance.

Various metrics and approaches to evaluating performance were given. Recommendations are given for understanding the true needs in the design and implementation of products.

As the final report of the conference, not overloaded with technical details, was more than appropriate and easy to understand.

Guests "debriefing" on the second day


Communication with Alexander Tarasov. Tagir Valeev and Andrei Kogun.



Sergey Egorov and Dmitry Chuiko. Anton Arkhipov and Alexey Fedorov, summing up.



Conference closing


General photo of all those involved in the preparation of the conference - organizers, volunteers and speakers.



Andrei Dmitriev, Alexey Fedorov, Gil Tene. Ekaterina Kurilova surrounded by volunteers.



Results


The usefulness of any conference is to:


To achieve these goals at this conference:


Alas, on the first day there were some problems with the broadcast, successfully solved by the beginning of the day of the second ( self-critical tweet about it). Minor inconvenience caused a forced transfer to a later time on the first day of the report of Anton Arkhipov. All other technical and administrative issues were resolved as they arose and were hardly noticed by the participants.

Presentation files are available on the website of the conference , the link to the video of all reports has already been sent to the participants who filled out the review.



What are your impressions of the conference?

UPD: The news, voiced by Andrei Dmitriev at the conference, finally received documentary confirmation - Alexey Fedorov was officially named the new Java Champion . Congratulations to Alexei with a well-deserved reward !!!

Source: https://habr.com/ru/post/313142/


All Articles