• Home
  • About
  • J1 Session Blog: Pro JavaFX Platform (RIA Enterprise Application Development with JavaFX Technology)

    June 4th, 2009

     

    JavaFX is still in its early beginnings and despite of version 1.2 having been released this week it will take some time before it is ready for heavy duty enterprise applications. Hence, the session title sounded very attractive to me.

     

    Did I miss something with JavaFX? But what a disappointment! The speakers (Jim Weaver and Stephen Chin) did not get beyond explaining basic features of JavaFX. I got the impression that the closest these guys ever have come to an enterprise application was in the range of lightyears. They did not cover the topic of how complex presentation logic should be handled in a JavaFX application, at all.

     

    Nor did they mention how to implement complex forms, achieve a uniform look and feel in a suite of applications etc. They once mentioned MVC but it seemed to me that they had no clue of the implications of MVC in a complex enterprise application.

     

    At least I can’t complain too much since this was the first disappointing session after almost two days full of sessions at JavaOne, which is quite good for JavaOne or any other conference.

    J1 Session-Blog: Ajax vs. JavaFX Technology

    June 3rd, 2009

    First note that the speakers Ben Galbraith and Don Almaer are co-founders of ajaxian.com, which is clearly an AJAX-shop. They claim that Web technologies and Java went stagnent in the UI space. Ajax and JavaFX have the characteristics of a renaissance. They structure the talk in the form of a “discussion” or a series of arguments, where one supposedly pits the advantages of said technology against the other.

     

    •    Argument #1: Java performs way faster than JavaScript; on the other hand JavaScript is getting faster all the time (V8 team at Google); plus apps like Google wave demonstrate that performance is good enough.
    •    Argument #2: Responsiveness improved by worker-threads in a Java GUI. Yet using “web workers” we can overcome the limitation of JavaScript to a single thread. Demo of Pictastic proves the point. Having said that, web workers are still 10 times slower than Java; plus the API is extremely limited. In “web worker”, worker threads don’t share state, which is way safer than the totally flexible Java approach.
    •    Argument #3: GC way more advanced in Java. On the other hand, incremental GC in Mozilla is improving all the time. A lousy fact of the JVN is having to determine how much memory the app requires (or how much is available) wherever the app is deployed.
    •    Argument #4: Graphical capabilities of Java surpass what web apps can do. But performance of Bubblemark benchmark app shows that Google chrome achieves 100 frames per second. By comparison JavaFX achieves 24 FPS. With vector graphics Chrome is back down to 30 FPS. What the speakers don’t consider is that JavaFX is a very new and to-date under-optimised technology.
    •    Argument #5: An Ajax 3D demo “metatunnel” is pretty impressive. Most browsers, apparently, are offering 3D extensions. It’s still at the experimental stage, however. JavaFX, on the other hand, has nothing to show in 3D.
    •    Argument #6: Java is weak on fonts. The speakers claim that can’t use native fonts in Java (is this true? I seem to remember supplying Java with some additional fonts some years back.) Control over fonts in the Ajax world is even more limited, however.
    •    Argument #7: JavaFX provides “amazing” video support. Counter argument: Flash plugin us ubiquitous and surpasses JavaFX in terms of maturity. Open Web Video offers sophisticated video functions.
    •    Argument #8: Binding in JavaFX is compact and elegant. Web toolkits are very clumsy by comparison. The speakers quickly mention Mixins, Animation and Effects. All of this is way easier in JavaFX…
    •    Argument #9: Legitimate critisisms are raised about JavaFX syntax. Speakers suggest that JavaScript is actually easier and closer to Java than JavaFX Script. And, of course, JavaFX totally lacks widgets like table/tree. Web toolkits even provide some very cool layout management and tools for constructing GUIs.
    •    Argument #10: Tooling superior in the Java world.
    •    Argument #11: Deployment. Web wins here, obviously, except for significant browser incompatibilities. Applets, Mac etc. are lousy too, however.

     

    Conclusion: A pretty damning result for JavaFX, which is for the most part justified (at least today.) What the speakers fail to do, however, is talk more fairly about the significant problems faced by AJAX developers on a daily basis.


    J1 2009: Java FX 1.2, Java Store, Java Warehouse

    June 2nd, 2009

     

    Yesterday night’s so-called “Partner VIP event” gave us a preview as to what Sun will be emphasising at JavaOne this year. Receiving as much fanfare as ever before: JavaFX, version 1.2 of which is being officially released today (June 2nd) – for Desktop as well as for mobile. 

    Secondly, the Java Store and Java Warehouse story was briefly revealed, with more details expected at tomorrow’s opening Keynote. Sun is not proposing to host an app store itself, but to provide the infrastructure to whoever wants to. The Java Warehouse is supposed to act as a central repository for apps, which Java Store hosters can tap into, whilst retaining their own front-end and billing schemes. 

    Almost as noticeable as the above was the lack of any mentioning what-so-ever of technologies such as Android, Groovy/Grails. Is it forbidden for Sun employees present anything on these (for many) tactically highly important technologies?

    Finally, Canoo’s fame really does appear to be growing. Not only we we appear in the official presentations (see pic) but it’s really impressive how many folks are coming up to us and saying how they’ve heard about this Swiss company.

     

     


    J1 2009: Kicking off CommunityOne

    June 2nd, 2009

     

    David Douglas, Senior VIP Cloud Computing and Developer platforms, kicked off CommunityOne with healthy enthusiasm this morning. The central message is that communities are absolutely necessary for future development – and not just software but humanity as a whole. Very profound!

    Lew Tucker then joined Douglas on the stage to talk about Cloud Computing. Pay as you go is the idea… and presumably how Sun hopes to turn its financial fortunes around. He notes that cloud computing is more likely to succeed when budgets for proprietary data centres are being slashed.

     

          

     

    Douglas (left) and Tucker (right) then talked about Sun’s Open Cloud Platform. Early access for this platform is expected in Summer 09. The goal: Make it possible for any developer to have his or her own virtual data centre in the cloud. Data centre of course provides complete monitoring and control. Sun Cloud also provides load testing, as well a choice of app servers e.g. Tomcat, Glassfish. More info at www.sun.com/cloud and at the “cloud zone” at Java One.


    Canoo at the Mobile World Congress 2009, Barcelona

    February 26th, 2009

    How did we end up here?

    Before discussing Canoo’s attendance at MWC 2009, it’s worth reflecting what brought us here. The story arguably began at Canoo’s Code Camp 2007, where one of the teams thought they’d try out something called “JavaFX”. At that time an early version of JavaFX had just made its debut at JavaOne ’07 and the guys were keen to take the technology for a test-drive. And voilà… MusicPinboard was born. Little did we know at the time that the resulting, appealing little application would result in Sun Microsystems contacting Canoo in October 2008 to ask if we’d like to participate in the “November” launch of the first official version of JavaFX. A rewrite of the app ensued (because official JavaFX differed significantly the ’07 version in a number of respects) and the launch took place slightly later than originally scheduled, in December, at an invitation-only event in sunny San Francisco. The application demo’d by Canoo at this event struck a chord with the attendees and Canoo was subsequently invited to create a mobile version of MusicPinboard to coincide with the launch of a mobile version of JavaFX.

    About the MWC

    The Mobile World Congress is the biggest of its kind, featuring a four-day exhibition of over 1200 world-class firms, as well as technical sessions and keynotes from CEOs of Microsoft, Vodafone, Nokia, to name but a few.

    It is therefore significant that Sun should choose this particular venue to launch its mobile variant of the JavaFX, entitled – logically enough – JavaFX Mobile. Equally significant was the presence of Sun top-executives, such as Messrs. Eric Klein and Param Sing – VP and Senor Director of Java Marketing respectively, as well as Executive Vice President of Application Platform Software Anil Gadre. Also at the Sun booth: Canoo senior developers Mike Mannion and Alberto Mijares.

    On Display at the the Sun Booth

    Naturally enough, all of the technologies on show at the Sun booth related to mobile technology in some way or another.

    Sun booth at the MWC 2009

    For example, there was a demo of the Glassfish Mobility Platform, which, by means of a connector architecture, enables the enterprise to sync mobile devices with potentially any enterprise application. Sun streaming TV technology was also on display as was LWUIT (Lightweight UI Toolkit) – a UI toolkit library for Java ME. But there can be no doubt that most of the booth’s emphasis was on JavaFX and JavaFX Mobile, with a range of hands-on demos on show. These included:

    • A mock security video monitoring system, which constantly looped through a scenario in which a bunch of crooks attempt a break-in at the Sun site. This demo was so impressive, in fact, that a number of people came to the stand to ask when the “security product” would be available!
    • A very attractive mock social networking app for sharing restaurant and location information with buddies;
    • A cute game involving bunnies, which we presume was designed to suggest that JavaFX is suitable as gaming platform;
    • Canoo’s MusicPinboard application in both desktop and mobile forms, which Mike and Alberto used to describe the use of JavaFX tools Production Suite and NetBeans 6.5

    On show: MusicPinboard Mobile

    As previously announced Canoo was in attendance to demonstrate its recently created MusicPinboard Mobile application – an application created using the first official version of JavaFX Mobile. Around forty detailed demonstrations were given over the four-day period. In addition and in response to the questions from the attendees, Mike and Alberto also talked in detail about how the application was realised using the JavaFX Production Suite tools and the JavaFX plug-ins for the NetBeans IDE.

    Here is the application running from within the NetBeans IDE:

    The technical challenges encountered during the development were also freely discussed on the Sun stand, as were issues with the current version of the runtime, which sits atop Java ME on the hardware.

    Here is the application running on Sony-Ericsson’s high-end Xperia device:

    Most Frequently Asked Questions (and who was asking them)

    Without a doubt, the most frequently asked questions were the following:

    • What is JavaFX?
    • What is the difference between JavaFX and JavaFX Mobile?
    • Concerning JavaFX development: What kinds of tools are available today and what is the quality of these tools?
    • When will JavaFX Mobile be deployed to commercially available devices in the way that Java ME is today?
    • How well does the JavaFX Mobile Runtime perform and what is its footprint?

    We (Canoo) will not attempt to answer these questions in this post, but will address them over the coming weeks and months as yet more experience is gathered and whilst Sun continues to actively improve the platform.


    Above: Canoo’s Alberto Mijares (center) engaging with one of the many parties interested in JavaFX

    As for who was asking these questions: The vast majority of the people who witnessed our demonstration were clearly strategic decision makers in the CEO/CTO bracket. Some folks came from research departments and even some software developers (people like us!) made it to Barcelona too.

    Independent Opinion on the Stand Greatly Appreciated

    When Mike Mannion delivered an (arguably) sobering evaluation of the state of JavaFX in a talk at JavaOne in 2008, the last thing he expected was for Sun to give him a call and request a repeat performance. Yet Sun DID call him and he DID give his talk a second time (clearly because, even at that time, there were also many positive things to say about JavaFX in addition to the negative.)
    Now, when Sun is officially launching JavaFX / Mobile, why would Sun be giving an opportunity to independent third parties to express freely their opinion about a brand-new (read: immature) technology? It comes down to this: Sun receives constructive feedback, reenforces its credibility with potential users of the technology and, at the same time, demonstrates its confidence in the technology’s future. It is therefore perhaps surprising that not more organisations take this open and enlightened approach.

    Win-win-win

    We can testify first hand that Sun is a company that embraces open discussion – not just open source – and (constructive) criticism of its technologies. The response from the public made it perfectly clear that this is a win for all parties; in particular, potential client get an unabridged opinion, whilst Sun reenforces its credibility. And Canoo? Canoo looks good too ;-)

    Mike meets Executive VP of Application Platform Software, Anil Gadre
    Above: Canoo’s Mike Mannion (left) with Sun’s Executive Vice President of Application Platform Software: Anil Gadre.