Wireless Wanders header image 1
Wireless Wanders header image 2

JavaFX and the phonetop

September 12th, 2007 · No Comments

I have just been writing about JavaFX in the second edition of my NGWA book, so I thought I should post a quick blog article about this interesting new development from Sun. I like the marketing term these guys have been using, which is “phonetop” technology. In other words, we have the desktop and the set-top (box) and now the phonetop. JavaFX Script is promised to be a universal language for creating compelling UIs across all these tops. At the same time, Sun have announced JavaFX Mobile, which is a complete software stack for the phonetop, built using SavaJE OS (acquired by Sun) which if you recall was an attempt to create a Java OS for mobile devices (except with some underlying libraries written in C++ for speed). This time, JavaFX Mobile doesn’t make the mistake of trying to push Java all the way down to the hardware. They use a Linux kernel to do all the hard work.

I think we can separate out the need for a new language from the need for an entire phone stack that is as Java friendly as it’s ever going to get. The appeal of the latter is obvious. There are tons of Java programmers out there and what they really need is a way to create fully integrated user experiences without the sandbox limitation of a J2ME KVM running inside (outside?) of an existing stack. The problem with this is the fractured UI experience where Java apps often appear to the user to run in their own world disjointed from the rest of the phone. No matter how well a vendor ports the KVM to a device with lots of API support, there’s always some kind of fracture. Hence, if we want a Java-based platform with which to implement a great user experience that is graphically rich and network-aware across all the phone’s functions, then we are stuck. Until now. JavaFX promises to fix this problem. I’m looking forward to seeing some devices that use JavaFX Mobile. Clearly, one of the major vendors might license the technology or an operator could go it alone and work with one of their far-eastern suppliers to create an own-branded device. I wonder if someone like HTC is considering using the platform. The HTCTouch looks like a very interesting device. Imagine something like that available with Java!

What about JavaFX Script? Did we need yet another flavour of Java to confuse the masses? I think so. The cool thing about JavaFX is that it is a declarative language. This is a fancy way of saying that the structure of the code should reflect (declare) the thing that it’s trying to model, which in this case is a rich UI. Hence, the structure of a JavaFX program closely resembles the graphical components that it is powering, making it much easier to create rich-media UIs based on Java Swing, 2D and 3D APIs. Moreover, JavaFX is promised to be available on other tops of course, including the set-top. For those of you following the trends, you will probably know that there is a lot of excitement around convergence between mobiles and set-top box services. The challenge is how to create services that run across both platforms without having to involve two totally different middleware solutions with proprietary UI creation tools.

However, on the theme of convergence is perhaps where the “top” idea runs out of steam. Inside the home, with the increased use of uPNP and DNLA, home hubs should become more important in managing our home network and media. I’m not sure what kind of top you’d call a smart router. Still, that doesn’t stop JavaFX being a great idea. It might just be what Java fans have been waiting for in the mobile world, but with all the promise of letting them create great apps that work across a number of devices.

Tags: Wireless

0 responses so far ↓

  • There are no comments yet...Kick things off by filling out the form below.

Leave a Comment