JavaOne 2010 Part 3: Whirlwind Sessions
Christopher Oliver 2007
So Tuesday began with Using JavaFX Controls
9/21/10 – 8:00 AM – Using JavaFX 1.3 Controls – Hilton San Francisco – Yosemite B
9/21/10 – 9:30 AM – Swing OSGi Modular Desktop Application Framework – Parc 55 – Mission
9/21/10 – 11:30 AM – How to Tune and Write Low-Latency Applications on the Java Virtual Machine – Parc 55 – Market Street
9/21/10 – 1:00 PM – Pro JavaFX: Developing Enterprise Applications – Hilton San Francisco – Golden Gate 6/7
9/21/10 – 2:30 PM – JavaOne Technical General Session – Hilton San Francisco – Grand Ballroom AB
9/21/10 – 8:00 PM – Using CSS to Create JavaFX UI Controls: Visual Designers’ Experience
– Parc 55 – Cyril Magnin I
S317802 – Using JavaFX 1.3 Controls – Stuart Marks, Oracle; Paru Somashekar, Oracle
The JavaFX Control 1.3 by Stuart Marks and Paru Somashekar, Oracle, was all about controls that you get with JavaFX 1.3.1. They showed examples from the current code base was still written against JavaFX Script 1.3 did not matter so. The some explanation of the how the controls are expected to run against JavaFX 2.0
S313667 – Swing OSGi Modular Desktop Application Framework – Antop Epple, Eppleton; Jaroslav Tulach, Oracle
Incidentally, this session, demonstrated how difficult it was to schedule your time and route between hotels and different rooms.
S313685 – How to Tune and Write Low-Latency Applications on the Java Virtual Machine – Staffan Frieberg, Charlie Hunt, Dave Dagastine Keenan
In this session, there speakers from the JRockit JVM and at least one from the HotSpot VM teams discussing how to one can write low latency applications on the virtual machine. It turns out that the biggest contentions comes locking on monitor and of course garbage collector. If one wants high performance then it come at the expense of throughput. Much of the discussion was demonstrations and screenshots of the Visual VM 1.3.1 application, features and monitoring of the virtual machines. They also show the JRockit Flight Control that is tool build into the Oracle JRockit JDK. I do not remember hard or fast rules advice being given for writing low-latency applications, it would seem that this is poorly understood art for the few. Obviously if you are writing your custom collection classes in the attempt to optimise your Java performance, then you going to get burned at the stack. There is a ConcurrentHashMap and a ConcurrentSkipList implementation for a reason, and few developers are in the class of expertise as a Doug Lea or Cliff Click ….
S312925 – Pro JavaFX: Developing Enterprise Applications – Jim Weaver; Stephen Chin Inovis
I think this session was the first session torpedoed because JavaFX Script was no longer supported. Much of the presentation that Jim and Stephen had already prepared fundamental was based on JavaFX Script with the JFXtras. Oracle disclosed the state of the JavaFX Script to speakers a month ahead of the conference. So there was an alteration to the presentation, we saw less of how to program enterprise applications in JavaFX Script but a projection into the future. Indeed Stephen Chin showed off his DSL for Scala and talk about the JavaFX 2.0 implications. Jim Weaver brought his 3D calendar example. Both of the author demonstrated the Apropos, the Kanban agile organisation tool, a prototype, for Rally. It was another informative session and best of full there was considerable interest.
S319219 – JavaOne Technical General Session – Mark Reinhold, Roberto Chinnnici
Of course, yours truly was really interested in the JDK 7 keynote by Mark Reinhold, in which an over roadmap for JDK7 and JDK8. That release of JDK with a full closure, lambda expression, implementation looks rather distant, H2 2012. However the code for JDK 7 release is largely present in the OpenJDK 7 repository. Reinhold did explain the reasons for the lambda expressions, using a map reduce example. If you are already used to Google Collections, programming in Guava, then the material is no suprise to you. Project Jigsaw is also the expected in JDK 8, full modularisation is really the holy grail of the JDK from here onwards.
And Wednesday was the bomb! This was a day for JavaFX 3D and JavaFX 2.0; and best of course the Oracle Appreciation Event featuring the Black Eye Peas and the Steve Miller Band.
9/22/10 – 10:00 AM – Creating a 3D UI for an Enterprise Application with JavaFX – Hilton San Francisco – Yosemite A
9/22/10 – 11:30 AM – Project Lambda: To Multicore and Beyond
9/22/10 – 1:00 PM – Polyglot Programming in the Java Virtual Machine (JVM) – Parc 55 – Divisidero
9/22/10 – 2:15 PM – JFXtras: JavaFX Controls, Layouts, Services, and More – Parc 55 – Powell I / II
9/22/10 – 4:45 PM – JavaFX Graphics – Hilton San Francisco – Yosemite C
S314603 – Creating a 3D UI for an Enterprise Application with JavaFX – Jim Weaver, JavaFX Dev; Christopher Wright, VNI Media
This was Jim Weaver’s session to show off the 3D capabilities of the JavaFX 1.3.1 release. If you have not seen his EarthCube or his CalendarCube applications then go to his blog. The 3D functionality are only enabled when you flick a command line switch -Dxtoolkit=prism. You cannot actually deploy applets with that actually use the preview of the PRISM rendering runtime, hardware accelerated graphics pipeline inside a web deployment á la JNLP.
Members of the JavaFX team were in attendance, for example Stuart Marks, so your truly had a question answered. We will have to wait until JavaFX 2.0 for 3D graphic primitives, which was a taken with a little bit of salt. We will have to wait for 3D cylinders, toruses, pyramids and surfaces to be delivered to us in the framework. In fact that JavaFX 3D actually handles 3D is quite strange. You have to esssential contort: translate, rotate, scale polygons into 2D space into the Z plane, in order to build a object. This is counterintuitive to say the least. One normals defines 3D points, and then connect these points up into 3D vectors, in the correct order in order to allow for back-face culling and Z depth sorting. However with JavaFX Script 1.3.1 and its current 3D implementation …
S313289 – Project Lambda: To Multicore and Beyond – Alex Buckley, Oracle; Brian Goetz, Oracle
This was a surprise addition to my schedule, it was great to see the Computational Theologist (Dr) Alex Buckley and new architect of the Java language, Brian Goetz in their session. Of course this technical session was all about closures in the Java language, or as they put it Lambda expressions, as it Alonso Church (1936), Guy Steele and Sussman (1994). Boys if you are having performance problem tuning your Java server application now and struggle under concurrency, immutably and behaviour, then you will have serious issues upgrading to the lambda expressions. If you are still thinking of maybe I could write my custom collection types then my goodness thinking you can do a better job than Cliff Click or Doug Lea, well … don’t be expecting help. Lambda expressions allows you concentrate on the algorithmic nature of computation and not on the boiler plate that is usually around the intention. By removing the iteration from your code, and pushing it to library call, allows you to pass behaviour to the processor. The processor is the implementation responsible for sending out the work to different core in your server microprocessor or to another distributed JVM across a network. In other word, the processor is the thing that parallelises, potentially your algorithm and thereby applies you to choose. Read it again. Read it again and realise that writing parallelisation / concurrency processing algorithms is not a thing for script-kiddies.
Desktop Community Lunch
Because I went to Project Lambda, I was late for a private invitation-only lunch at the Anzu restaurant. I publicly thank Stephen Chin and Jonathan Giles for organising the event, where special guest, James Gosling also appeared. It was good to see our patriachial father in really good (considering his unemployment and of course he could gain access to JavaOne as an outsider). He gave us all belief that Java is here to stay and is bigger than any corporation, company and any group. Stephen Chin brought the JavaFX team, the desktop community, and friends around together for a rare treat.
Unsurprisingly I blew out Polyglot Programming in the JVM session, friendship and networking outside of schedule was far more important. So I cannot tell you anything about it, because I was not there. In fact I followed Stephen Chin to his next session…
S312919 – JFXtras: JavaFX Controls, Layouts, Services, and More – Dean Iverson, Pleasing Software; Stephen Chin, Inovis
This is all about the current JFXtras project, the impact of the JavaFX Script deprecation, and where all go from here. JavaFX Script is still around and the JFXTras is best example of a project that adds missing functionality and extra services to the JavaFX SDK. I would suggest going to JFXtras.org for more information.
A major issue for the JFXtras project and all JavaFX Script project is the fact we are all dependent on Oracle JavaFX 2.0 previews and beta releases to the community. So before any work can happen on this new project then Java APIs have be created and published. There will always therefore be a delay in any port or upgrade of JavaFX 2.0 releases going forward. Thankfully the Oracle have committed to open sourcing the JavaFX UI Controls for version 2.0 in the future and this will help the JFXtra volunter understand the best practice and follow the styles of the JavaFX Team inside Oracle. We will also have to see what happens to the JavaFX Compiler and whether the community will adopt it.
However, this is months away, JavaFX Script is still going to be with for a while. If you are interested in learning JavaFX Script, then I strongly recommend Kim Topley’s JavaFX Developer Guide as very practical tome of investment.
I stopped for an hour by the Intercontinental Hotel on 888 Howard Street to say hello to the PMO, Star Spec Leads, Export Group Members and members of JCP. The Java Community Process. At the moment, Oracle looks like they are continuing support for the JCP. Patrick Curran, the chair of the JCP was on good form.
Oracle Appreciation Event
The best way to describe this event is, you would have had to be there to witness the feeling, emotions, sights and sounds; and also taste the beer, wine and if you were lucky enough to find it, food. The Black Eyes Peas were fantastic and very good value. I saw a short bit of the Don Henley band and hung around until end with the Steve Miller band.
This is Peter Pilgrim, who is in San Francisco for the JavaOne 2010 conference. Out