TSS Java Symposium Review Part 3: Filthy Rich GWT Clients using SBA

There has to be a better way than to write Java code and have it “compile” to JavaScript for anybody to use AJAX functionality. Bruce Johnson’s cry to the crowd that there’s absolutely no performance hit in doing so was falling on on deaf ears until his claim of the “perfect caching” implemented by GWT. A statement that sent murmurs through the crowd and promptly encouraged everyone to grab their session evaluation sheet and circle the 1 in all categories.

All this talk of leveraging the Java language is making me nauseous. I can’t help but think of the poor bastard who’s been developing in JavaScript all these years and has pretty much become a guru at it, only to realize that he’s been using the wrong language all along. Basically they want your application to be one page and every transition happens using GWT – talk about being tied to a product! Not that Google’s going bankrupt anytime soon but once you go to GWT, you really, really can’t go back. GWT seems like a decent product but I’m wondering whether adopting it early in a project isn’t “slipping into poorly planned AJAX development” as Johnson claims people are doing.

So what happens if your application becomes too big and increases in size, why you GZip it of course! Give Google credit for thinking outside the box and adopting a Maven’ish approach to developing in JavaScript – compile, package, deploy. They even give you an embedded browser of sorts to use during development where your edited Java code is “deployed” using a simple refresh. All those Google aficionados are free to wet their pants at the sight of GWT, but they’d be a fool to not try out Scriptaculous or Dojo first. There’s no reason to kill a bird with a cannon.

Nati Shalom and some programmer talked about Space Based Architecture and it’s Spring Integration until he was blue in the face and the audience was close to tears. The coming up lunch break didn’t help matters. Yes, you guessed it, there’s also a <space> XML namespace in Spring2 making declarative SBA very easy to use and abuse. The concept of SBA is simple enough to wrap your head around but if your demo consists of showing the EXTREMELY verbose logging of three JVM’s at the same time, things are going to get hairy. At least have the decency to turn the log level down or maybe even completely off and just use System.out.println() statements. I tell you the people in the back were getting shifty for every time he said, “It’s that easy” or “It’s that simple”.

The cool part of this presentation was how nicely the architecture handled failover and relocation using SLA. The declarative approach of using annotations and Spring configuration was also something good.  It’s easy to extend the model and any underlying implementations without having an effect on the deployed application. But really, when have we ever been forced to swap out a DAO layer at runtime? The point is taken though. Gigaspaces seems to have it’s dirty little hands all over distributed persistence and JavaSpaces, it’s just too bad they don’t throw the parties Virtuas threw.

Chet Haase apologized on America’s behalf for Romain Guy (pronounced Gee) being denied a US visa insisting that Guy is not a terrorist, just French. He seemed almost apologetic for even being there and showed his genuine shock that he wasn’t alone in the Filthy Rich Clients presentation. He tried to get some hormones jumping by showing “cool” demos like Guy’s Aerith application but it would take a lot more than a fade-out to get this crowd excited. But wisely, Haase had a Plan B which included plugging his Timing Framework by showing interpolators, Glasspanes and non-linear interpolation, all good stuff, but hardly applicable to 90% of the developers out there. Some poor sap in the front row wondered where the HTML port and CSS integration was, to which Haase responded and I’m doing some serious paraphrasing, “You’re in the wrong room”.

Fades, Pulses, Morphing, Animated Transitions are all cool stuff and there’s no denying that but I wonder how much time companies doing Java clients have to make things look pretty, especially when testing this stuff is fairly hard. It’s not like you can use Selenium for this stuff. The coolest thing he showed was the PropertySetter and how it reduces the boilerplate code to do animations, tie this along with acceleration and deceleration and you got yourself a filthy rich client that will “ooze cool”. This would’ve been a much more impressive talk if the AV team had figured out how to dim the lights in the room. Main theme of the presentation: Buy the book, it’s called Filthy Rich Clients.


2 thoughts on “TSS Java Symposium Review Part 3: Filthy Rich GWT Clients using SBA

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s