JavaOne Russia or Kuksenko's Benefit with Shipilev. Conference Report

    I want to talk about the JavaOne Russia conference, which was held April 23-24 in Moscow, from the point of view of the JVM developer and one of the speakers.

    image

    Preconference speakers meeting


    Before the conference on April 22, the so-called Speakers Meeting was held, and so, for me, the conference began on Monday, 18-00, with the Myakinino metro. Honestly, I expected that the pointers on how to get to JavaOne will begin already in the subway, but I did not find them either in the subway or beyond. The following day, a popular tweet appeared on this subject: “What is common between Java and JavaOne? No pointers! "

    Speakers meeting was held in the context of mounting stands and other engineering work. Here, I met Grigory Labzovsky, who was waiting for the equipment to be connected in the main hall to drive away Keynote, and also talked to the organizers and other speakers. Before I left (around 19-00), the equipment in the main hall was turned on and Grigory Labzovsky joyfully said that “This year JavaOne in Moscow is unusual. She now looks more like a big JavaOne in San Francisco! "At the exit, I met a lot of charming girls who were instructed about tomorrow. The girls really decorated the conference - cute and beautiful!

    image

    JavaOne Keynote


    The next day, I no longer had to look for where JavaOne is. And besides, I immediately met yesterday's speakers, and there was someone to talk to, so yesterday's rally was not in vain.

    And here is the beginning of the conference! Keynote It was started by Grigory Labzovsky, the St. Petersburg chief of Java at Oracle, and Valery Lanovenko, chief in Russia at Oracle. They said in an interview that Java needed Oracle, and Oracle needed Java, and that they both needed Java developers. After that, the guys passed the word VP Java Client and Mobile to Nandini Ramani. Everyone probably knows about the fact that they moved Java 8 for six months due to security. But unexpectedly I found out that Java ME, which, with the death of Old Believers' phones, was supposed to not feel very well, in fact, was experiencing a boom. The fact is that now there is a fashion for small devices connected to the Internet, the so-called Internet of Things, for all sorts of different needs, from smart homes to smart forests (GPS sensors are hung on trees in Brazil, and if they are sawed, they will find out about it). These devices are now more than people. And the manufacturers of these small devices really need standards, and Java ME comes to the rescue here. Java SE Embedded is also in trend: the topic about Java SE and JavaFX on Raspberry Pi was very hot at the whole conference. Of course, they also talked about Java EE, but for me it is a dark forest and I did not understand what is so cool in that there will be support for HTML 5 and WebSockets. Amused Java EE consultant Reza Rahman (Reza Rahman), who appeared in the Russian-folk outfit. Stephen Chin showed JavaFX on the Raspberry Pi, Jim Weaver showed JavaFX 3D from a Windows tablet - pretty cool. and Java ME comes to the rescue here. Java SE Embedded is also in trend: the topic about Java SE and JavaFX on Raspberry Pi was very hot at the whole conference. Of course, they also talked about Java EE, but for me it is a dark forest and I did not understand what is so cool in that there will be support for HTML 5 and WebSockets. Amused Java EE consultant Reza Rahman (Reza Rahman), who appeared in the Russian-folk outfit. Stephen Chin showed JavaFX on the Raspberry Pi, Jim Weaver showed JavaFX 3D from a Windows tablet - pretty cool. and Java ME comes to the rescue here. Java SE Embedded is also in trend: the topic about Java SE and JavaFX on Raspberry Pi was very hot at the whole conference. Of course, they also talked about Java EE, but for me it is a dark forest and I did not understand what is so cool in that there will be support for HTML 5 and WebSockets. Amused Java EE consultant Reza Rahman (Reza Rahman), who appeared in the Russian-folk outfit. Stephen Chin showed JavaFX on the Raspberry Pi, Jim Weaver showed JavaFX 3D from a Windows tablet - pretty cool. Amused Java EE consultant Reza Rahman (Reza Rahman), who appeared in the Russian-folk outfit. Stephen Chin showed JavaFX on the Raspberry Pi, Jim Weaver showed JavaFX 3D from a Windows tablet - pretty cool. Amused Java EE consultant Reza Rahman (Reza Rahman), who appeared in the Russian-folk outfit. Stephen Chin showed JavaFX on Raspberry Pi, Jim Weaver showed JavaFX 3D from a Windows tablet - pretty cool.

    The phenomenon of stars to the people


    At the break, they appeared - the stars of the conference - Alexey Shipilev (@TheShade) and Sergey Kuksenko (@Walrus). Before that, I only knew Alexei Shipilev in absentia, via twitter, and we worked with Sergey for 4 years - he, like I was at the foundations of the Excelsior JET project, and I must say I have not seen him since he left from us in 2001. So it was good to see you again.

    Now, reading foreign reports about the conference, you will not find references to Shipilev and Kuksenko. However, in the end I got the impression that they were the only ones at the conference - that's why I called this article “Kuksenko’s and Shipilev’s benefit”. The two guys made 6 reports, together and separately, almost all in a large hall for 2 thousand people, so it turned out that almost every second report was one of them in a prominent place. And the people went to them at the half-conference! And if you add Vova Ivanov and Shura Ilyin to them, it turns out that the large hall was almost completely occupied by Petersburgers.

    And Kuksenko’s first talk was about the Java Memory Model. A very useful thing in my opinion from the point of view of education - Java developers must know the language in which they write. But I did not go to him. I have been interested in JavaFX for some time now. By the way, there were five streams in total, and in very many cases it was necessary to break, so it is unfortunate that the reports were not recorded - some I would have looked at the video.

    Javafx


    The JavaFX topic began to interest me from this point of view. JavaFX has for some time been positioned as the default UI on Java SE Embedded. This UI has multitouch support, animation, 3D, etc., and generally looks pretty good, in a modern way. And maybe you are aware that one of these days you should open up its implementation for iOS and Android , despite the fact that even Java SE, even in the form of OpenJDK, for iOS / Android has never been seen. This winter I came across a topic full of painon the Oracle forum, from which it became clear to me that there is a big request for Java on these mobile platforms: writing on each platform separately is just a pain, using PhoneGap or the like is in many cases chickens laughing, writing in C / C + + or even Objective-C is the last century, and Mono is a semi-working craft. In addition, several times at the conference I was complained that the Dalvik VM is also that piece of technology. That is, despite the fact that there is Java on Android, many would like real Java there. And since the winter, I caught fire and slow down everyone inside the office to make Excelsior JET for iOS / Android, because our Java technology, based on AOT Java compilation, is what the doctor ordered for iOS. It’s not that this thought occurred to me first, and only now, but somehow it became obvious

    The first JavaFX talk I saw was Jim Weaver. This is such an uncle for 60. Before the session, he played a game guess the melody, put rock of the 60s (Hendrix, Harrison, Morrison, etc.) and turned to the hall “what does it play?” - pleased. And then he talked about the basics of JavaFX. From his report, I was very impressed with how elegantly animation is embedded in this whole framework (from the point of view of the API). I myself have never been involved in animation in the UI (yes, in Swing or SWT this is quite difficult to do, because at the very beginning they did not think about it), but here it really is done at a time. This is good from the perspective of the perspective on iOS - there animation in the UI is very fond of and would be laughed at without it. Then he showed JavaFX 3D - also very elegantly. And most importantly, his tablet pulled this whole thing without any lags.

    Next, I listened to Stephen Chin, the JavaFX evangelist. He talked about ScalaFX. For some time now, our company was also very interested in Scala. We even wrote our new optimizing compiler in Scala and recently organized the Scala Enthusiasts Group in Novosibirsk . Steve clearly showed how you can write half the letters on Scala for JavaFX code, which looks pretty good in Java, but on Scala it’s just a song. A very compact and well-read DSL for JavaFX turned out. By the way, I’ll notice that on all topics about JavaFX, someone got up and asked where Java is for iOS.

    Benefit of St. Petersburg


    And then there was lunch. And then, as it turned out, I was very lucky to be a speaker: we were fed in a separate room, without queues and excitement, in a narrow cozy company.

    After lunch, Vova Ivanov came. We met at our CodeFest in Novosibirsk and made friends almost immediately. You know, there are not very many JVM developers in the world, and in Russia there are even fewer: there are four in St. Petersburg, and we have ten in Novosibirsk. And if you communicate with your friends every day, then meeting with developers from another JVM is like meeting your brothers in your mind.
    Vova talked about invokedynamic, but actually about method handles . I’ve heard everything about it many times, but Vova, in my opinion, managed to convey this rather complicated topic quite easily.

    Well, then, in fact, the benefit of Kuksenko and Shipilev. Two consecutive reports about lambdas. First Sergey Kuksenko spoke, and Alexey Shipilev sat, and then vice versa. Sergey talked about lambdas in fact, and Alexey talked about what had changed because of lambdas. In principle, I didn’t take anything particularly new from all this, except maybe it’s a joke with serialization and ZAM (zero abstract methods): so that your lambda can be serializable it can now be casted to (SAM & Serializable). But I was interested to see how the guys stay on stage. Keeping up well - keeping your attention on yourself for one and a half thousand audience for 2 hours is worth a lot.

    Javaone day two


    The next day, I landed in the speaker room on Stephen Chin and Daniel Blaukopf on JavaFX. I asked Stephen why JavaFX is so sluggish for PR for RIA. To which he told me that he personally believes that the standalone self-contained installer with bundled JRE for the target platform is a more successful application distribution model than the RIA. Not even 15 years have passed. Daniel said that they already have JavaFX running on a compact1 Java SE profile and on disk such a configuration (compact1 + JavaFX) takes only 18MB. However, it is not yet known whether compact profiles will go for everyone or only for Java SE Embedded.

    Then he listened to Alexei Shipilev on the topic of microbenches. Loved their harness, it will be necessary to use it with us. It was surprising that there were quite a lot of people: is it possible that apart from JVM developers, someone has fun writing microbenches?

    Java is losing weight. Ask me how


    And then there was my report . Firstly, I immediately realized that I had missed the name: I was approached by man 6 and asked what the report was about. That is, the fact that Java and “thick” are almost synonyms is not for everyone. But it should also be noted that the announcement of the report did not mysteriously appear on the JavaOne website, then appeared, and then mysteriously disappeared again. Therefore, to find out what it is about and

    I talked about how you can reduce the size of the Java SE runtime, which is very good when you distribute your application with the Java runtime, which, according to Stephen Chin, is the best distribution model. Java SE on i OS

    Today, besides our Java Runtime Slim-Down technology, there are no legal ways to reduce the private Java runtime. How we do this, I told in the report. Fortunately for many developers, in Java 8, in addition to the full JRE, so-called compact profiles will also appear . And Jigsaw will appear only in Java 9, with the help of which, as expected, the Java runtime can be further customized. I can tell you about all this in more detail here on the hub, is anyone interested?

    On the question side, they asked about compact profiles, as well as about Excelsior JET, wondering that static compilation of Java into machine code is possible, and when will we do Excelsior JET on iOS. That is, the topic really interests people vividly. Someone argued that making Java for iOS is possible, citing Mono as an example. Well, of course it is possible! Technically there is no problem. And it will be faster than Objective-C (but a bit thicker anyway).

    Javaone completion


    The most interesting conference report for me is Shipilev’s talk on concurrency . The guys wrote tests on JMM and managed to destroy all the compilers with them, found a bug in the hardware, and what struck me the most was to break Dug Lee's JMM Cookbook, which all Java compilers in the world pray for!

    And the conference ended for me with a speech by Andrei Breslav about Kotlin. Andrei came to the conference only for his talk, but I managed to talk to him before the talk. He says that community is growing, but by the tone it seemed to me that he was slightly tired of this topic.

    In general, I liked the conference. I managed to communicate with a large number of people, but communication is invaluable! Only, it seemed to me that it was not possible to bring people into a state of joyful excitement, which many conferences are famous for. Maybe for this task it’s worth bringing more world stars of the first magnitude and letting them perform in the big hall.

    About me + links
    I work at Excelsior and we make our JVM - Excelsior JET . This is a JVM with a static compiler (AOT) that can turn Java bytecode into a regular executable for the target platform. Moreover, this JVM was written from scratch in Novosibirsk, and I am one of the initiators of the project.

    Also popular now: