Skip to content

A Roadmap for JavaFX – Adobe's Beat Them By a Week, But So What? – JavaOne 2008


In regards to the JavaOne keynote and general sessions I popped in and out of through today, allow me to refer you to my note last week on Adobe’s Open Screens Project. I’m sure it drives Sun crazy to hear the comparison so directly, but, really, that’s the way it is.

It shouldn’t make them cringe, though: it’s a good plan. The fact that Adobe, Microsoft, Sun, and others are all racing towards the same end should be encouraging, not frustrating. Getting preempted by a week with, basically, the same sort of announcement is meaningless in the grand scheme of things for the winner(s).

There are substantial differences about how Sun wants to get from here to there – mainly, by being completely open source and underpinned by Java (of course)- but the goals are essentially the same: delivering better user interfaces that are ‘net native across multiple devices and contexts (“screens”) with minimal coding on the developer’s part.

I really wanted Sun to announce that JavaFX was fully cooked and 1.0 was ready – pick up your CDs on the way out the door. But, they didn’t. To be fair, that expectation is completly unreasonable. It’s tough to balance the pragmatism of that against the spectacle expectations of a big event like JavaOne.

They’re still behind the other RIA folks, at least those who have the “1.0” version of their RIA platforms out there. The good news for Sun is that this whole RIA thing is still up in the air and like NetBeans to Eclipse, the mile-stones announced today make it feel like Sun can out-last people who keep saying they’re dead in this space.

What is an RIA? The New GUI Toolkits

Pulling back to yesterday’s RedMonk unconference – dude, how awesome did that turn out? totally! – and the last round-table on RIAs: the developers have realized that this whole RIA thing has almost gone SOA on us. Those three letters have almost become meaningless other than in general terms like “engages users” or “helps users accomplish their goals.” Indeed!

I’m fixin’ to go on a definitional jaunt here, so don’t get too offended or hung up on debating the True Meaning. What I’m capturing here is what I view as a pragmatic outline for what “RIA” should mean going forward based on both what I want it to mean and what I see people’s efforts boiling down to.

In discussions about RIAs, people tend to focus on the R and not to much the I. That is, sure, it’s one thing for these UIs to be nice looking, to be slick, to be “sexy.” Looking good is key to RIAs, yes. But the salient, important points are:

  • Developing in RIA frameworks is easier than developing in existing frameworks, including Ajax if you like to rain on that parade
  • RIA frameworks create GUI interfaces, not static, non-Ajax HTML web applications
  • RIAs involve and use the internet heavily, or, in closed down systems, are network aware
  • RIAs are much easier to install and get using than previous GUI applications

Sometimes there’s desktop access, but that’s more just controlling where your data is stored or if you can work offline. Sometimes running on cellphones and other devices is a key point, but that’s more a widening of the idea of what a computer is. Adobe’s focus on “screens” is a simple way of calling this out.

There’s no guarantee of usability, usefulness, or anything positive in what an RIA is. It’s just the term we use for the next generation of GUI frameworks.

Sun, Microsoft, Adobe, Mozilla, Ajax-heads, Curl, Bungee, WaveMaker, Appcelerator, and all the others have varying degrees of this notion in play. All of them are just looking to deliver a new way to make user interfaces (GUIs) that are highly network enabled. Microsoft likes to call them “connected applications,” which I think works well as a phrase. The way AIR mixes up a GUI framework (Flex) with a web browser (WebKit/Ajax) into one runtime is a good example of how jumbled the technology soup is.

Success is a person using an RIA, thinking it’s a desktop app, and then at some point thinking, “wait, I didn’t actually download and install something.” Hence the battle to get the runtimes distributed so installation is as unobtrusive as possible.

To put it in a more playful way:

If I was strapped to a chair spot light blasted in my face in a dark, smokey room, I’d say this: GMail is not an RIA. Google Reader with Gears enabled offline access is. To me, one is obviously a web application, while the other is an application. But then I’d try to wiggle out of that chair and run away quickly before someone started asking me if ecto, Twitterific, Buzzword, or Google Docs without Gears was an RIA. I think I’d be yelling “it was HTML’s game to loose, man! And they lost it!” as I skedaddled away.

“Good cooking takes time. If you are made to wait, it is to serve you better, and to please you.”

Sun is pushing their RIA ball along in the form of JavaFX running atop Java SE and Java ME. SE and ME are the desktop and mobile editions of the Java runtime. Eventually, I wager they’ll just jam the two of those together in the same way that Adobe would be wise to jam Flash and Flash Lite together. The point of making these new GUI frameworks as easy as possible comes into play here: if I have to think about different runtimes, portability access devices and screens starts to get wonky.

Oh yes, and tools. There are those with Photoshop and Illustrator plugins to export (and import?) JavaFX components.

Unfortunately for Sun, all of these things are not due until fall 2008 at the soonest (“JavaFX Desktop 1.0”), and then spring 2009 for the rest of the stack (“JavaFX Mobile and TV 1.0.” Yes, Sun is late to the general party here compared to Flex/AIR, Silverlight, and others. But, don’t forget that Adobe’s Open Screens is a road-map as well, and Silverlight 2.0 – my own sub-titled: The Whole Hog RIA Release – isn’t out yet. Still, Sun is behind, but not impossibly so.

The quicker Sun can go fully open source with their JavaFX stack – start developing it in the open, letting people use nightly builds, and even collaborating in the open, the better positioned they’ll be to make-up for any lateness. There’s some open source stuff running around for sure, but the management of the JavaFX stack is still classically closed source. I mean, did anyone know what was going to be announced this morning outside of Sun?

Sun’s Advantage: Open Source

Sun could use being truly open source to it’s advantage in this RIA race. Adobe is close to be able to do that but they’re blocked by the revenue stream of FlexBuilder and the unwillingness to let go of the Flash Player (as well as IP encumbrances, I’d wager, just as the OpenJDK went through). Microsoft…yeah, exactly, bro’.

When it comes to being open, Sun has the makings of a lead. They’ve already struggled through open sourcing their core runtime. They have a corporate mandate. They have open source tools in the form of NetBeans – cross platform tools as well, which is key.

Like Adobe though, there seems to be that last bit of closedness to figure out. Even more important, JavaFX still feels like Sun’s property. No one owns Ajax, and it’s wildly successful as the current rich UI layer. Think on that one: to ultimately be successful, no company can “own” the framework. That’s why I keep beating the open source drum on all this stuff. I assure you, Sun may own the trade-mark on Java, but they sure as hell don’t own Java. See JBoss, Spring, BEA, IBM, Oracle, etc. and so forth.

I think Sun wants to have this relationship with the open source world – existing in it instead of owning it’s own colony in it. It’s just a tough jump, esp. when people keeping asking Sun how they’re going to make money.

Being Compelling and Moving Product

This morning’s keynote ended with Neil Young showing off his Bluray based music collection. It’s something like 8 or 10 discs. It can connect to the ‘net and get updates. It’s like if your DVD was an updated little computer.

The work that Shaky Pictures, the production company, did was amazing. I don’t really even like Neil Young – except that “Harvest Moon” song I can never get out of my head – and I wanted to go out and buy this thing.

As James said himself, I’ve never walked out of a JavaOne keynote wanting to buy something.

On a developer note, I couldn’t have walked out of the keynote and bought “JavaFX Development in a Box” or downloaded it. And that’s Sun’s current problem, the box isn’t available yet. Like I said though, that doesn’t only apply to Sun, but it sticks to them the longest.

Once that box o’ JavaFX gets here, then it’ll just be down to the same thing as for Adobe’s Open Screens Project and Microsoft. The new GUI frameworks have to be easier and faster to develop in, cheaper (if not free and open source) to acquire and distribute, and produce better end products than current GUI frameworks including web applications, esp. with an eye towards (seemingly) zero-install. Whichever RIAs achieve those ends will succeed over the next few years.

Hey, at worse we’ll be stuck with GMail and traditional GUIs, which ain’t so bad, buddy.

Disclaimer: Sun is a client and paid travel and expenses for JavaOne. Adobe, Microsoft,

Categories: Conferences, Development Tools, Open Source.

Comment Feed

10 Responses

  1. Coté, who can begrudge Adobe a revenue stream from the Flex Builder? It’s just a bloody Eclipse plugin. Plenty of other companies have Eclipse plugins that they charge for and no one makes a big stink over it. You don’t have to have Flex Builder to do Flex RIA development. And there are other Flex designer tools emerging now – i.e., competition.
    I (my company) get so much value from having my dev teams build web RIA apps on Adobe Flex, that I’m rather pleased to cut POs to purchase Flex Builder Pro – return a little appreciation back to Adobe.
    So last year I lead a team that built a Flex 2 app, and now we’re on to subsequent efforts using Flex 3. This is the current “simple SOA” stack I’ve specified for our overall Flex-based web RIA architecture:
    After 22 years in the biz, this is the most satisfying architecture for doing client GUI I’ve yet composed (I’ve done distributed computing system designs since ‘94).

  2. As a (seemingly) life long advocate of Java, I’m excited to see JavaFX come together. Sun helped to pioneer RIA (before Macromedia/Adobe coined that term) and given the widespread adoption of Java they have a pretty good chance of giving Microsoft and Adobe a run for their money. All of three (Silverlight, Flex, and JavaFX) will be powerful alternatives for mass-consumer applications.
    This is pretty self serving, but I would like you to address RIA for the Enterprise if possible. That’s where Curl ( shines. In the Enterprise the important stuff is performance, security, enterprise IDEs, and ease-of-development. You can’t beat Curl on any of these fronts. Curl is simply a better RIA alternative when it comes to technology and ease-of-development. We’ll make the enterprise our focus and after we own that space we’ll take on mass-consumer applications where ubiquity is our only weakness.
    All the best,

  3. Thanks for getting to what matters – again!
    So it is SOA at the end of the day and we all get to do whatever we want in whatever language we want and actually run it everywhere no matter what – woot – that’s all that really matters (unless you are a vendor seeking language adoption).
    We have all heard it all before, but our optimism increases with each big vendor breath, and our design chops are definitely finally getting up to the task – so I imagine we will take all comers no matter what as we always have and persevere even when it crashes.

  4. RogerV: thanks for the background and context. That’s great!
    RMH: indeed. The big name RIA people are behind on the enterprise story. They’re all going for the consumer niche now.
    Mike: I agree, it’s hard to beat Adobe’s lead at the moment when it comes to the entire suite. We just need that final open sourcing of the Flash player and then it’ll just be a race for who’s the best.
    Ben: yes, I think “SOA” – in the most positive version of the term – is a key enabler for all this RIA stuff. RIAs need “content” of some sort to have a reason to exist, and having a good back-end that accesses data and process that actually does something other than showing HD movies will give people a reason to develop and use RIA-based front-ends. Every front-end needs back-end, eh?

  5. Great post, as always. Insightful.
    Although I’m admittedly biased, I really think that Adobe is in the most envious position in this market. As you put it:
    “In discussions about RIAs, people tend to focus on the R and not to much the I. That is, sure, it’s one thing for these UIs to be nice looking, to be slick, to be “sexy.” ”
    And then:
    “Oh yes, and tools. There are those with Photoshop and Illustrator plugins to export (and import?) JavaFX components.”
    If the R in RIA is *so* important, and Adobe owns the tool market for putting the R in RIA, then I think its going to be pretty tough to compete with the workflow that’s going to come with CS 4 / Flex Builder integration. You can import / export all you want, but true integration (back and forth from design to development, not just export) is going to be a requirement for developers moving forward.
    Mike Potter
    Flex Product Marketing

  6. “it was HTML’s game to loose, man! And they lost it!”
    Buzzword is not an HTML app tho. It’s more like Google Docs done right in RIA. It is pretty cool. Google’s current Docs, Mail, Map and so on need rewriting once one RIA solution stands out to suit their need.

    dorrenMay 8, 2008 @ 4:47 am
  7. The startup company that wrote Buzzword looked around to consider what to use to implement the web-based word processor that they wanted to create. In the end they settled on Adobe Flex.
    They did such an excellent implementation and web-based online applications fits in with Adobe’s strategy for how they’re eventually going to monetize their investment in Flex RIA, that Adobe bought Buzzword.

Continuing the Discussion

  1. […] head with Adobe and Microsoft for the hearts and minds of designers and web programmers.  Unlike Cote, I think they are too late and I am not sure anyone really cares about […]

  2. […] Sun’s experience with open-source development may prove to be an asset, he argued on his blog: “The quicker Sun can go open fully open source with their JavaFX stack — start developing it in […]

  3. […] I said back at JavaOne this year: Sun could use being truly open source to it’s advantage in this RIA race. Adobe is close to be […]