HOME SCALA & F# JAVA .NET WEB GROOVY & GRAILS ANDROID & IOS NOSQL ARCHITECTURE AGILE & SCRUM AGILE DEVELOPER  
JAVAWUG:A RIA Solution to Reinvigorate Your Desktop
A RIA Solution to Reinvigorate Your Desktop
This talk will be an introductory and overview of the Compiled JavaFXtm, which is Sun Microsystem's attempt to (re-)enter the Rich Internet Area space. JavaFX is competing with the other top two RIA solutions, namely: Microsoft's Silverlight and Adobe Flex.

Why should you as developer get into JavaFXtm?
  • JavaFX is different, because it integrates with Java. You as a developer, therefore, have the freedom to use open source and commercial Java libraries.
  • It has its own declarative language for defining user interface elements instead programming with XML.
  • JavaFX has a default profile that builds on the Swing components, which is already known to experienced Java SE programmers.
  • JavaFX can playback video and audio files for the first time ever with the forthcoming Java Media Component (JMC) apis.
  • AJAX is fine for a lot of applications, but as more richer functionality is required then a true RIA solution may just be your ticket to ride.
  • The smart trend in computing today is to focus on usability. You cannot develop user interfaces with Middleware solution.
  • If you have exhausted the possibilities with traditional web framework approach, then RIA might be the way forward.
Java was the first platform with a RIA. It was called in 1996 an Applet. This was a fabulous innovation and was the first example of embedding an mini application into a HTML web page. Unfortunately Sun took its eyes off the prize, when Java exploded in popularity on the server side. Much to the chagrin of several early enthusiastic user interface developers, the company invested its limited resources and expertise in enterprise services. There is absolutely no doubt at all that Java is huge on the enterprise.

During the barren years, Sun made some valiant attempts to improve the desktop experience by producing the heavyweight Java Plugin. After that it came out with the Java Web Start to help solve the client/desktop experience. Some might say that Sun is way too late to the game and that Adobe have the mindshare to hold on to the desktop market sector indefinitely. On the other hand, Java runs on a hundreds of mobile phones and devices. Several bluechip and fortune 500 companies rely on Java to shield them from the pointer bugs and other memory problems, because Java was one of the first languages available to use a garbage collector. It also innovated by running byte codes on a runtime virtual machine.

Admittedly Java does not at this time of writing execute on Apple's iPhone. However, there is a lot interest in Google's Android platform, which based on the syntax of Java. So Java is here to stay for a decade at least. JavaFX is the next step up and focus attention again on the user interface.

The other big problem with Java is the size of the download. The runtime was way to big to be transported across the wire to clients in comparison with Adobe's Flash solution. The trouble was also that the Java Runtime Environment was monolithic and very much unmodularised. There was huge install time. In the last year, Sun has made significant in-roads in these deployment problems. It announced the "Consumer JRE" (Java SE 6 Update N) that included many initiatives such QuickStarter, a Java Kernel, a Deployment Kit and hardware accelerated graphics improvements. The Consumer JRE underlines the importance of JavaFX. If the runtime is modular, deployable and efficient to launch, then maybe it makes Java on the client more viable for users. JavaFX builds on the Java runtime, so it takes advantage of performance and innovations that lie therein.

JavaFX is aimed at media conscience developers and content designers. It is a simplified language. It compiles also to byte codes and the biggest innovations are just around the corner. JavaFX also steps away from the traditional user interface box model. It uses the SceneGraph API underneath to perform graphical drawing. It defines timelines and animation. You have learnt all about architecting the server side. Now come along and learn how to invogorate the desktop again. Create the dashboards and UI clients that you have always wanted to create for your employer, your business clients or your own web 2.0 applications.

As Charles Lowell exclaimed on the popular Drunk and Retired Podcast, Parental Guidance Advised (Episode 127 - Puppet, Skinless Bodies, Rational Tools, Getting Sick of Ajax Episode [Episode 127 MP3 ReferenceTime: 00:27:12]):

"I have been looking at Flash ... Flex. I have been looking at JavaFX. I have to say on the JavaFX front, [that] I am not so convinced about the technology. I mean I haven't look into it that much, but I really, really, really... I really like the JavaFX script. Oh dude, I don't know how they [Sun] snuck that language through the door, but it's a doosey. I would almost call it avant garde."

"... I don't know if they [Sun] got some old Lisp pro[grammer] working on it or they brought in somebody from the Haskell world ..."

"I consider it an advance."

So the question is, when will you decide to learn something about Rich Internet Applications? Even if it is not JavaFX, but some other solution such CURL. Middleware is the junk architectural tier that fits in between the database, the server cloud and the front-end user interface. Many developers are focusing again on the user interface, because it is the component of the system that allows the users to get their job done quicker. Middleware solutions are simply not plausible for creating usable systems.

So let the battle of RIA commence!

ABOUT PETER PILGRIM
A Java Champion and senior JEE Architect, Peter Pilgrim is the leader of the Java Web User Group (JAVAWUG) and a very active contributor to the Java Web and Open Source Community.
More about Peter Pilgrim

ABOUT THE JAVAWUG
JAVAWUG is a highly active group, regularly meeting at Skills Matter to discuss enterprise web development in Java.
More about the JAVAWUG
Podcast coming soon: BOF 39 JavaFX: A RIA Solution To Reinvigorate Your Desk,
PROGRESSIVE JAVA PODCASTS
Jan Machacek:Spring in Scala, Spring in Scala
Jan Machacek : 8th Feb 2012
View Podcast: Spring in Scala,
Sven Efftinge:Xtend - A Programming Language for Java Developers, Xtend
Sven Efftinge : 1st Feb 2012
View Podcast: Xtend - A Programming Language for Java Developers,
Martijn Verburg:Adopt a JSR, JSR
Martijn Verburg : 1st Feb 2012
View Podcast: Adopt a JSR,
Tobias Lindaaker:Neo4j Internals, Neo4j Internals
Tobias Lindaaker : 25th Jan 2012
View Podcast: Neo4j Internals,
Dave Springgay :HTML5, Android Webview and java bridging, HTML5 & Android Webview
Dave Springgay : 19th Jan 2012
View Podcast: HTML5, Android Webview and java bridging,
Paul Butcher:ScalaMock: 'Power' mocking for Scala, ScalaMock
Paul Butcher : 18th Jan 2012
View Podcast: ScalaMock: 'Power' mocking for Scala,
Malcolm Sparks:Reflections on a real-world Clojure application, Real-world Clojure
Malcolm Sparks : 17th Jan 2012
View Podcast: Reflections on a real-world Clojure application,
Julian Birch:Lightning talk: 1000 lines of Clojure, 1000 lines of Clojure
Julian Birch : 17th Jan 2012
View Podcast: Lightning talk: 1000 lines of Clojure,
Neale Swinnerton:Lightning talk: A Quick Guide to paredit-mode, paredit-mode
Neale Swinnerton : 17th Jan 2012
View Podcast: Lightning talk: A Quick Guide to paredit-mode,
Nick Rothwell:Clojure and MaxMSP, Clojure & MaxMSP
Nick Rothwell : 17th Jan 2012
View Podcast: Clojure and MaxMSP,
Peter Ledbrook:Upgrading to Grails 2, Grails 2
Peter Ledbrook : 16th Jan 2012
View Podcast: Upgrading to Grails 2,
John T. Davies:Enterprise Integration - The seriously nasty stuff, Enterprise Integration
John T. Davies : 12th Dec 2011
View Podcast: Enterprise Integration - The seriously nasty stuff,
Luke Daley:Smarter Testing with Spock, Spock
Luke Daley : 8th Dec 2011
View Podcast: Smarter Testing with Spock,
Andres Almiray:Getting Groovy on the Web and Desktop, Getting Groovy on the Web and Desktop
Andres Almiray : 8th Dec 2011
View Podcast: Getting Groovy on the Web and Desktop,
Erik Pragt:DiscoBot: Groovy on Android, DiscoBot: Groovy on Android
Erik Pragt : 8th Dec 2011
View Podcast: DiscoBot: Groovy on Android,
OTHER PROGRESSIVE JAVA EVENTS
Official RNIB Accessibility Hackathon, Official RNIB Accessibility Hackathon
CONFERENCE (2 DAYS)
London, Saturday, February 11th BOOK NOW!
ThoughtWorks Quarterly Briefings:Is programming language choice a good thing?, ThoughtWorks Quarterly Briefings
FREE EVENT: Is programming language choice
Manchester, Monday, February 13th
ThoughtWorks Quarterly Briefings:Is programming language choice a good thing?, ThoughtWorks Quarterly Briefings
FREE EVENT: Is programming language choice
London, Thursday, February 16th
London Android User Group:Data bindings and core dev, London Android User Group
FREE EVENT: Data bindings
London, Thursday, February 16th
GGUG:Deploying Grails Applications, GGUG
FREE EVENT: Deploying Grails
London, Monday, February 20th
:SpringSource's Rich Web Applications with Spring Training,  SpringSource's Rich Web Applications with Spring T
4 DAY COURSE.
London, Tuesday, February 21st
London Java Community:Zero Downtime of JavaEE applications and Home Automation with Java and Arduino, London Java Community
FREE EVENT: Zero Downtime Home Automation
London, Tuesday, February 21st
Neo4J User Group:Neo4j in a .NET world, Neo4J User Group
FREE EVENT: Neo4j in .NET
London, Wednesday, February 22nd
© Copyright 2003-2011, Skills Matter Ltd
  Web development by You In Control
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Jobs: Sales Executive  Jobs: Student SkillsCaster  jobs - junior event coordinator  Speed Coding 2011  Open Source Journal  Ticket Raffle  Agile Expert Series  Jobs: Sponsorship Development  jobs: Marketing & Sales Graduate Internship