« Getting Ready for the Imminent JavaFX SDK 1.0 Release | Main | Up the Nile *with* a Paddle: Fun with JavaFX Graphics »

November 24, 2008

Sanity Will Be Restored to Internet Application Development on December 4, 2008

Yes, that's a bold statement, but I've waited 13 years to be able to say it.  If you've followed this blog or have heard me speak about JavaFX, you know that I was disappointed with the browser wars in the late 90s that fragmented and slowed down the ubiquity of the Java Virtual Machine.  Instead of writing rich-client Java applications, the last 13 years of software development has largely consisted of trying to make browsers do what they were never designed to do.  If I may speak plainly, the result has been applications that consist of a big mess of varying flavors of JavaScript, HTML, etc. that leave developers overwhelmed and users underwhelmed.

According Danny Coward of Sun, in less than ten days from now version 1.0 of the JavaFX SDK will be released.  JavaFX SDK 1.0 (with the support of Java SE 6 update 10) will make rich-client Java a reality.  It is my opinion that this release will be a tipping point in software development that will play a big part in restoring sanity to rich internet application development.

If you are wondering what practical steps you can take to leverage this seismic shift, here are a few that I would suggest:

  • If you are currently designing an internet application or remodeling an existing one:
  1. Think about how the full power of a rich client Java UI could improve the user experience. 
  2. Engage a graphics designer to create comps of this experience, reminding him/her that UI limitations imposed by the browser are history.
  3. Define an interface to the application/business logic layer.  Because JavaFX can instantiate and use Java classes, any interface that is implemented in Java can be used.  I often use a simple HTTP-based interface that uses GET parameters to pass arguments, and returns a stream of data articulated in the JSON protocol.  This approach will work well with JavaFX on all platforms (e.g. desktop and mobile phones).
  • Although Swing components are available in JavaFX, there is a strong trend in JavaFX as well as in RIAs (rich internet applications) toward graphical-node-centric UIs.  Users are beginning to expect (and deserve) iPhone-style applications, so think less about Swing and more about Java 2D capabilities.
  • Because the JavaFX SDK will be a 1.0 release, there is a good chance that you'll want to create some of your own higher level custom controls.  The JFX Custom Nodes category of this blog explains how to do this, and offers a few custom nodes that you might want to use.  Also, Stephen Chin and Keith Combs, mentioned in the You Say You Want a (RIA) Revolution? post, have said that they will create custom nodes for use in JavaFX applications to augment what is released in JavaFX SDK 1.0.
  • And, of course, join me in downloading the JavaFX SDK 1.0 release from JavaFX.com on December 4.

JfokusLogo

By the way, my first speaking engagement after this release will be at Jfokus in Stockholm, Sweden.  I'm going to do a 3.5 hour university session as well as a conference session.  If you're in the area, please do attend!

Regards,
Jim Weaver
JavaFXpert.com

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00e54f133d698834010536142c27970b

Listed below are links to weblogs that reference Sanity Will Be Restored to Internet Application Development on December 4, 2008:

Comments

Regarding "typical business application":

What about a CRUD for customers and a list of customers to choose from?

"Can you provide any links to JavaFX-based applications for data entry or anything that looks like a typical business application? Animation is nice, but I'm trying to understand how JavaFX competes with Flex and Silverlight for building databound data-entry forms, tables, graphs. Thanks."

Steve,
I couldn't agree with you more, and I think that enterprise apps that have an iPhone look and feel will be a sweet spot for JavaFX. I am in the process of designing an example like this for the blog and an upcoming book. Do you have any ideas that would fit your criteria and be fun for the reader?

Thanks,
Jim Weaver

Can you provide any links to JavaFX-based applications for data entry or anything that looks like a typical business application? Animation is nice, but I'm trying to understand how JavaFX competes with Flex and Silverlight for building databound data-entry forms, tables, graphs. Thanks.

Just read the comments from the article I linked to ( http://www.psynixis.com/blog/2008/11/25/more-on-javafx-launch-linux-out-fx-mobile-in/ )and it appears that OS X will be supported. Sorry for the noise...

"AFAIK, JavaFX SDK will be supported on Windows and Mac on launch."

Thanks Jim. I certainly hope this is true. Simon Brocklehurst seems to have information that says otherwise:

http://www.psynixis.com/blog/2008/11/25/more-on-javafx-launch-linux-out-fx-mobile-in/

"what do use for serialising into and out of JSON?"

I use JSON to human readable data back from the server, not serialized Java objects if that what you mean.

Thanks,
Jim Weaver

"what do use for serialising into and out of JSON?"

I've been using JSON to carry text data back from a web service, not to serialize Java objects, if that's what you mean.

Thanks,
Jim Weaver

"I've read that the 1.0 release will be Windows only at launch."

AFAIK, JavaFX SDK will be supported on Windows and Mac on launch.

Thanks,
Jim Weaver

I've read that the 1.0 release will be Windows only at launch. That would be VERY disappointing if that were true. I can kind of understand the reasoning, but the lack of a Mac version just seems weak.

I've been investigating a fair number of options (Flex, Mono, blahblahblah) for my next project and JavaFX seemed very intriguing. Played with the Preview SDK a bit and liked what I saw. It's a nice little language. I'm not a Java guy, but I like what Sun is trying to accomplish with JavaFX.

I'd really like to know what the plans are concerning a Mac version of the SDK as that could be a major factor in deciding which way to go for my next project.

Hi Jim, - what do use for serialising into and out of JSON? I've been looking at XStream but it seems that it might have some issues around unsigned Applets. I'm looking for something small and lightweight to use in unsigned Applets.

I have seen the previews of the 1.0 release and can not wait to get going. Too bad Sun did not make the binding to java objects more easier the way Flex does it. But this does not deter me to start coding cool looking UI's for customers.

"Please say you are taking Netbeans out of the download for JavaFX."

Hi Jason,
I believe that the JavaFX SDK will be available with or without the NetBeans IDE. The current technical preview is.

Thanks,
Jim Weaver

Please say you are taking Netbeans out of the download for JavaFX. I want freedom of choice on IDE's and I don't want to be stuck in the mediocrity of NetCrap!

Except that it won't work on my PowerPC Mac Mini, right? Maybe too old? But Firefox 3, Flash 10, and Mono 2 all work fine.

Should be interesting to see what happens. Although I wonder how Sun is going to treat Swing after this. They've already dropped support for SwingX and possibly other things. Even you have mentioned that JavaFX prefers node-based UI's, and we should "think less about Swing", I have the sense Sun is thinking this way to.

Hopefully they don't abandon Swing completely, as there are countless developers who have spent hours and hours working with Swing and committing themselves to it. On the other hand, I am looking forward to a 1.0 release and hopefully some good reading material to follow so I can check out the party ( as right now I am in the Flex camp ).

Thanks!

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment

My Photo

Upcoming Speaking Engagements:


  • Stephen Chin and Jim Weaver speaking about JavaFX Platform

  • Speaking on JavaFX and Java at Øredev in Malmö, Sweden on 2-6 November, 2009

Upcoming JavaFX Training:


  • Developing Secure, Rich Internet Applications Hosted on a Variety of Clients Using JavaFX Technology

Enter your email address:

Delivered by FeedBurner

Available now as early access eBook


  • Click book image above to obtain eBook

Twitter Updates

    follow me on Twitter

    Affiliations:

    DZone Links:


    July 2009

    Sun Mon Tue Wed Thu Fri Sat
          1 2 3 4
    5 6 7 8 9 10 11
    12 13 14 15 16 17 18
    19 20 21 22 23 24 25
    26 27 28 29 30 31  

    Disclaimer:

    • By reading this site, you are agreeing that under no circumstances will Veriana Networks, Inc. or its affiliates be responsible for (1) any information contained on or omitted from the site, (2) any person's reliance on any such information, whether or not the information is correct, current or complete, (3) the consequences of any action you or any other person takes or fails to take, whether or not based on information provided by or as a result of the use of the sites.