Post AJUG: AJAX & ThinkCAP

The Atlanta Java Users’ Group meeting tonight was about AJAX. Takeaways:

  1. Back button becomes Cancel
  2. Submit button becomes Save
  3. Tons of open source frameworks to bridge to the backend
  4. Code does not need to exist on the client beyond connection scripts; JavaScript can be sent to browser to be executed; basically remote invoking via passing of code (aka using eval with JavaScript received from the result handler)
  5. ThinkCAP is a program by a company called ClearNova; it is made up of an IDE visual layout tool, a JavaScript framework, and Java servlet backend, all to create web applications via AJAX; you can toggle AJAX functionality off
  6. Rich Internet Applications was a word that rolled off the presenter’s tongue with no problems.
  7. Many are now thinking of building web applications, not websites; key difference in mindset & goal
  8. Many just discovering the wonders of Prototype
  9. Java peeps are still interested in learning about Laszlo

To go into more detail, it was fantastic to have the AJAX community question the “breaking” of the back button; expanding on what Brandspanking new said in response to Mario Klingemann’s post. “Do we really need it?” This is an application, not a page by page metaphor. As a Flash Developer, my take is “no shit, Sherlock” but having another community, mainly Web Developers, echoing the sentiment on already engrained technologies says a lot, lends credence to our original claims, and helps the cause. Unlikely allies.

The questioning of conventional wisdom by that many more people on how the web is supposed to work is just great; really excited to have another movement going on.

What is scary is the Java developers all chomping at the bit; with the remote invocation (sending JavaScript to the browser which is then eval’d) allows them to have very little presentation logic/code on the client, allowing that to be stored in databases & templates.

Additionally, one good point made by one of the presenters, Steve Benfield, was how he thinks AJAX will shake up the open source framework community for Java. Many are page based metaphors; none think like application front-ends, like Flex does currently.

Another point my colleague, formerly of JBoss & Spring fame, Les brought up was there are clients who do not want, or can’t, install anything, and simply want to use installed software that can scale to hundreds of thousands of users (ie Java clustered backend). Since you can’t use Flash or Flex on the front-end for such situations, he has a valid point. Good thing I’ll just keep sucking at HTML & CSS to ensure I don’t get assigned to such projects.

Another point he brought up during the post-preso question phase; anyone done tests with 200,000 user requests?

Both Flash & AJAX both increase the amount of server requests, but reduce the bandwith of those requests. No one there could answer if the effects have been tested to actually cause problems. Yes, the bandwidth is lower, but you are now accepting more continous connections.

As all of my past clients, fulltime & contract, none have reported server errors which lead me to believe I’m either better at server-side coding than I thought, or more likely I’ve never had my applications reach the concurrent user base Les was asking about. Time will tell, but I’m banking on AMF vs. Gzipped strings.

It’ll be nice to have Java programmers screwing with a prototype language (JavaScript). Curious what the long term affects will be. Will they help find better conventions so prototypes can be used in team environments?

Really neat demo of ThinkCAP. Really cool to see a small(?) company build a RIA development tool, complete with JavaScript framework & back-end which allows easy plugging to things like Spring, Hibernate, and other frameworks.

Did I mention it was funny to see a Java programmer showing his code, and he wrote it like this?

this.addStyle = function()
{
// stuff
};

BWAHAHA!!! Awesome…

Thanks again, Burr!

3 Replies to “Post AJUG: AJAX & ThinkCAP”

  1. hey jesse, nice to hear the Java heads are starting to fall into line. The thing that really gets me about ajax is the cross platform compatability. To me it seems the flash player has that so nicely wrapped up. Dont get me wrong, firefox is leaps and bounds better than netscape was, but there’s still compatablilty issues in the html/css implementations across platform and browser, and until thats nailed, developing a full app using ajax will be pain in the ass. Gmail is prime example – they had to write a plain text version to support some mac clients!! Dont get me wrong, i think its do great technology tho….

  2. ….aaaaaaand that’s why I do Flash. Don’t want to install anything? Fine, I’ll go find a client that doesn’t mind doing so (isn’t hard currently).

    Keep in mind, the JavaHeads are all about the frameworks; thus ‘degrading graciously’ will probably be solved so it’s ‘good enough’; there WILL be some Java dude that’ll write 6000 lines of JavaScript to pool AJAX socket connections emulating how a server does it for threads, and he’ll compensate for DIV incompabilities on the client… they’re crazy like that.

    I honestly do not think the designs that most web applications that the Java heads would do are that off the wall. The more developer I become, and the more form base projects I do, the less high end the designs become, so those browser incompatabilities really don’t become that big of a deal… but you still lose some of the cooler looking interactivity, branding, and overall experience.

    Thank God for Flex.

  3. One small note regarding the back button: ”Do we really need it?’ This is an application, not a page by page metaphor…’
    Often I see users thinking about the back button more like continuous ‘Undo’ rather than cancel. So as long as the button is shown in a browser window, a user’s expectation is that it is a page-based system. Remove the button and expectations change, especially if you use common interface conventions used in most OS UIs.

    Also, if you want to see a crazy webapp, take a look at the Scalix demo for their web based collaboration software. It took some convincing for someone to make me believe that it wasn’t a native app…bet it has a LOT of AJAX going on… and its apparently designed around Firefox ;0)

Comments are closed.