Saturday May 10, 2008

JavaOne - Final Thoughts

I was at Sun World in 1995 when Java was first previewed and I have attend JavaOne for business meetings a number of times in the late 90's and early 2000's (I never know how to write this) when I was Systems Engineering Manager for Sun's OEM Software team in EMEA. I have seen the debates rage over whether Java was fit for purpose on the desktop and was Java ever going to make it into consumer and mobile devices. Indeed working for OEM software when I did my team was key in getting Java into mobile devices working with the likes of Nokia, Sony Ericsson, Sagem and Samsung as well as working closely with mobile GSM operators in Europe. So what are the conclusions has Java had it's day? Absolutely not. The eco system is stronger than ever. In each of the sectors that it is used - desktop, server, consumer devices, mobile devices, smartcards and now real time systems it is the benchmark by which other technologies and solutions measure themselves. Will Java gain world domination and wipe out all other technologies and solutions? Of course not. Apart from the fact that choice is a good thing. Diversity and choice means that there is competition, which keeps everyone on their toes. Choice results in a larger and more vibrant overall market place - a rising tide floats all boats. Finally choice services more of the long tail rather than forcing everyone to suffer the lowest common denominator. Make no mistake however Java is not on it's way out any time soon.

Now to climb down from my soap box for a while. One thing that hit me at JavaOne this year was the ratio of Apple laptops to PC laptops. It was at least 50% Apple with the Macbook Pro seeming to be the weapon of choice for the majority of developers. This helped me to feel much better about the money that I lashed out a few months ago on a Macbook Air (more about that in a later post). The next thing that hit me having been out of the mainstream of Java for a few years was the uptake of OSGi in the application server space. When I was last actively involved in this it was firmly targeted at the home automation market but it now seems to be a key requirement for application servers going forward and it's inclusion in Glassfish v3 and Spring 2.5 are just two examples of this. The other big thing was the integration of scripting with Java (both desktop and server side) and the wide variety of scripting languages and frameworks - more choice!  The final big thing was open source. It is clear that open source is here to stay and will continue to get more deeply embedded and widely adopted in commercial tools and solutions. Increasingly commercial software companies are realising that hiding the source code for your application buys you nothing and opening up you code to the community buys you increased adoption, increase innovation and improved code quality. The keynote presenter from CERN made the statement also  that it was tax payers money from the community that had paid for their code development so surely the community had a right to see the results! Government organisations take note. If you develop software we have a right to see it and use it free of charge because we have already paid for it (sorry I have crept back onto my soapbox.

As I mentioned before I have attended JavaOne before in a business capacity and never had the chance to attend any of the technical sessions. This time was different and it was a real pleasure to geek out for a week and see the show from a different angle. I would seriously recommend it to anyone involved in Java technology, Java development or any web based development.

For reasons that I can't explain my travel agent decided to book me into the Sheraton at Fisherman's Wharf for this conference however this did mean that for this week I had the joy of using the cable car for my commute each day. A real treat that made my kids very jealous. Remember little boys never grow up. Their toys just get bigger and more expensive.

Friday May 09, 2008

JavaOne - Day 4

The final day began with James Gosling's keynote. As usual it was littered with demos in fact too many to mention in full. The JMars visualiser, rather like google maps for Mars, looked impressive and since it is all available as open source it is open for anyone to use. The livescribe had sponsored a developer competition and my favourite was the JSR Jumble which allowed you to write the number of a JSR and have it look up the name and description of the JSR. The translator was also pretty impressive. The guy from CERN showed a number of the Java applications that they use from simple internal IT packages to systems for modelling data from the particle accelerator and managing a global grid. Tommy Junior, the driver-less car, cause quite a stir when it drove into the conference room. There was the now obligatory real time java demo delivered by Greg Bollella which this time feature blue wonder, a complete RTJS controller in a a box. It was sorting falling coloured balls. Years ago I tried to build a demo system that would sort just black and white balls that were free falling so I know some of the real time constraints involved so this for me was very impressive. Sure the compute performance in one sensor was probably equal to the entire compute performance that I had at my disposal but even so. And by the way Greg's demo worked, mine never did.

The was an excellent session today on Service Orientated Architecture and Java which gave a great approach to SOA that cut through all the hype from product and technology vendors and advicated a very sensible approach to SOA using the OASIS reference architecture and reference model.  Unfortunately the  Q&A was cut short when one of the presenters colapsed on the stage but I believe he was aright long term.

 There was also an excellent session on the 10 rules for scalable systems that was informative and entertaining at the same time and the presenter clearly had suffer the battle scars of building such systems and making some of the mistakes.

I also attended a session on the Maxine VM. A configurable and highly portable VM written almost entirely in Java. Currently a labs project and a long way from being a production VM it is experimenting with some fasinating ideas and the fact that the code will shortly be open sourced I am sure will lead to a whole host of interesting university research projects. A Java VM written in Java! I resisted the temptation to ask the presenter if he had also solved th eproblem of what came first - the chicken or the egg - largely because I feared that he would have given me a mathmatical proof of the solution to the problem that I stood no hope of following.

On a final note I recieved the following from the event organisers which I guess means that Java has finally been hit by a virus ;-)

"The JavaOne conference team has been notified by the San Francisco Department of Public Health about an identified outbreak of a virus in the San Francisco area. Testing is still underway to identify the specific virus in question, but they believe it to be the Norovirus, a common cause of the "stomach flu", which can cause temporary flu-like symptoms for up to 48 hours. Part of the San Francisco area impacted includes the Moscone Center, the site of the JavaOne conference which is being held this week. We are working with the appropriate San Francisco Department of Public Health and Moscone representatives to mitigate the impact this will have on the conference and steps are being taken overnight to disinfect the facility. We have not received any indication that the show should end early, so will have the full schedule of events on Friday as planned. We hope to see you then."


Thursday May 08, 2008

JavaOne - Day 3

This afternoon's keynote from Motorola was very interesting and thought provoking. A very honest and unbiased look at the state of the mobile applications market as it is today and some predictions for the future. I am not sure that I agree with all of the conclusions (especially around the need for consolidation) but more of that in another post. One of the highlights of the day for me was a presentation from IBM entitled "The Desktop Java Technology Lovers Survival Guide". From the title I was not really sure what to expect but what was delivered was not at all what I expected. Not particularly technical it was a very entertaining look at the past and current state of large enterprise system software design and some predictions/warnings for the future. The speaker was very entertaining and the presentation filled with amusing anecdotes. Certainly a welcome break from the pages of code.

Another highlight for me was a session entitled "Designing Graphical Model-Driven Applications: Lego Mindstorm" as the presenter said in the introduction you are all here for at least one of there reasons.

  • You are interested in UML modeling for code design
  • You are interested in graphical tools for UI design
  • You are a big kid and want to play with robots

That will be a yes on all three then!

The 2 presenters did a great job of trying to design an build most of the software on the fly and in the true tradition of live demo based presentations they had taken on more than could be done in the alloted hour which coupled with a couple of mistakes mean they were in a sprint to finish on time, fell slightly short of their total goal for the session but did finally get something running to the great delight of the crowd - even if the robot did ddrive itself off the edge of the demo table at one point. All that said it was extremely informative, good entertainment and fun. The only shame it that it was not filmed (at least I don't think so). The 2 presenters did a great job of trying to design an build most of the software on the fly and in the true tradition of live demo based presentations they had taken on more than could be done in the alloted hour which coupled with a couple of mistakes mean they were in a sprint to finish on time, fell slightly short of their total goal for the session but did finally get something running to the great delight of the crowd - even if the robot did ddrive itself off the edge of the demo table at one point. All that said it was extremely informative, good entertainment and fun. The only shame it that it was not filmed (at least I don't think so).

Another impressive piece of coding was the session entitled "Extreme GUI Makeover: In the Real World" which really showed what can be done with Java in GUI design. This was a Java replacement GUI for a dusty cobol application and was very impressive. The presenter said that he would be posting the code on his website so you can go take a look at it.

Wednesday May 07, 2008

JavaOne - Day 2

The key note today from Oracle was a little disappointing consisting of a (very slick) demo and presentation of their current family of enterprise development and deployment tools. Not what you come to expect from JavaOne.

There is a lot of emphasis at this JavaOne on rich user experience, combining scripting with Java in the JVM and developing social infrastructure.

I attended a very informative session from Google and hi5 on how to implement a social networking site based on the Open Social  Container using the Apache Shindig incubator implementation of the Open Social Container and the Open Social APIs. The guy from hi5 gave some interesting insights into the issues facing someone developing and deploying an infrastructure designed to support a viral uptake and some of the pitfalls to avoid.

I also attended a session on jMaki that was liberally littered with code examples and demos which helped to break up the usual death by bullet points (when will someone develop a presentation package that only supports diagrams and has no bullet function - I do not need to look at your speaker notes while you read them to me). Unfortunately the demos seemed to fall over on a regular basis which did not help to hold the attention. Still at least it gave it credibility as a proper developer event presentation rather than a product sales pitch.

I followed this with a session on Growing Open Source Communities based on the experiences of the OpenJDK community. A good guide for any company thinking of moving it's development into the Open Source realm especially in combination with the later session by Simon.

The session on creating compelling user interface experiences was queued half way around the Moscone Centre and since I have a pass that only allows me to be wait listed for a seat decided to cut my losses and head for Simon Phipps' presentation on the challenges facing the Open Source community in the future as more and more commercial organisations become more deeply involved in open source and more commercial software is based (at least in part) on open source components. As usual from Simon it was a thought provoking session littered with Simon's own personal photographs to re-enforce his points (count the number of bullets in this presentation). Simon recommended attending any presentation given by Eben Moglen someone with whom I (a ashamed to admit) I am not familiar but will be looking into.

To finish off the day I attended a session looking at how to include media (in particular video and audio) in Java and JavaFX applications. Once again the presentation was built almost entirely from code examples and demos which served perfectly to get across the presenters points. While I am not sure how well this will come across with just an audio recording and a copy of the slides it is an excellent introduction to the technology.

JavaOne - Day 1

The keynote started with the usual glitz and included a dance troop as the kick off. Rich Green went on to introduce a number of new technologies and a number of demos that suffer the traditional JavaOne demo demons! There was a demon of the Amazon Kindle which was unable to reach the network!

The new JRE 6 update 10 (formally know as the Consumer JRE) which has a number of interesting features. The first is the componentisation of the JRE download. This means that now the JRE has an initial download size of 2Mbytes rather than the traditional 15MBytes. Additional components (API sets) are download as required by applications or applets or are trickled down in the background. New quick start technology improves the start up time for a cold start JRE. Finally one of the features demoed was the ability to be able to take an applet running in a browser and be able to drag and drop it onto the desktop as a desktop application. This allows the applet to continue running after the browser is closed and even be launched on future occasions as a desktop application independently of the browser. The demo application itself kept locking during the keynote demo but at Bob Brewin's Technical General Session later in the day the same demo worked perfectly. This is enabled by the fact that the JRE plugin now runs in a separate process from the browser. JavaWeb start has allowed users to load (correctly packaged applets) to be loaded within a browser or as a stand alone application for a number of years but this was not seamless to the user. The new functionality is!

The new release of Glassfish (v3) has also been componentised (a theme of the day) so that the runtime at startup now is less than 100kbytes. Through project babelfish scripting languages have now become a 1st class citizen of the Glassfish environment. Glassfish v3 is also not completely OSGi compliant. Also included is the self registration of 3rd party extension APIs making to much easier for developers to include them and use them. 

Rich also announce Project Hydrazine and Project Insight.  Project Hydrazine promises to offer en end to end service deliver platform based on cloud/utility computing for service delivery all developed in open source. Project Insight will then allow the developer of these services to run a series of analytics to to look at usage of a service and discover business models and opportunities.

There was also during the day much demonstration of applications developed in JavaFX offering rich user experiences developed in hours and days rather than weeks and months.

The grand finally was Neil Young demoing what he is doing with BluRay DVD. This was extremely compelling. So far I have resisted the urge to acquire and form of next gen DVD. For once I wanted to see the standards battle play out before I backed any horse (I am also looking for some additional functionality which I can't seem to find today but more of that in another post). The Neil Young BluRay however may be the thing that drives me to purchase a device. It allows the user to browse through images, articles and videos while listening to the music as well as navigating the music and seamlessly accessing additional content from the net. What the video you will see what I mean. As Neil Young put it - "This demo is pre-recorded and not live so we KNOW that it WILL work".




« July 2016