The Atlanta Java Users’ Group meeting tonight was about AJAX. Takeaways:
- Back button becomes Cancel
- Submit button becomes Save
- Tons of open source frameworks to bridge to the backend
- 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)
- 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
- Rich Internet Applications was a word that rolled off the presenter’s tongue with no problems.
- Many are now thinking of building web applications, not websites; key difference in mindset & goal
- Many just discovering the wonders of Prototype
- 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!