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!

Firefox Parasite

Another confession this week: I like Firefox.

Before you go, “Aw man, no one gives a hoot… your so late to the party, brah!” or “I don’t care about browsers, dork”, here me out.

This whole “blah blah site doesn’t support Firefox” etc. I find frankly annoying, whiny, and curious why I should give a frigin’ care. I use IE; it works, comes pre-installed, and most everything I do works in IE. The security flaws are only exploited, in my experience, on less savory websites where one shouldn’t frequent anyway (unless you know what your doing).

I was tasked at work to research XUL and it’s capabilities. So, I’m really digging using Mozilla’s rendering engine for XUL. It’s pretty neat that it’s nearly identical to HTML and forms development, but they have their own framework + rendering engine + installation system devoted to just this process. I never could get my Chrome install to work, the lack of proper GUI’s for this 2 year-old (it’s older, but most good forum posts start in 2002 that I saw) technology is pathetic, and it was extremely diffucult to debug (I found out later about the developer install/debug version).

So, I’m testing things in Firefox because it appears to be more progressive in it’s use of extensions. Therefore, I’d have a plethora of examples to take apart and examine. I consider myself a window management meister. In Windows, one must master this skill to remain sane and remotely productive. I’ve found the positives in that skillset to help justify the constant clicking and moving. I then started using tabs in Firefox to switch between XULPlanet.com, Macromedia’s LiveDoc’s on their implementation, and my sample app running locally because I had other IE windows open. On dual monitors with lots of RAM, I’ll load those suckers up with windows.

Next thing I know, I’m using other tabs for normal websites like Full As A Goog, and others to browse in my spare time. As of yesterday, I started my day opening Firefox instead of IE to visit the Goog. I then started doing it at home.

Now, my blatant disregard for web standards probably ticks off the w3c-nazi’s, and assure’s you I’m missing the whole point. My confusion, however, stems on how the heck did a “browser” grow on me? I’m not all into web browsing as an experience. To me, it’s a frikin’ tool, end of story. And yet… here I am writing a blog entry about how frustrated I am; I feel violated, befuddled, abashed, “How could this happen?”

Anyway, if you have time, give Firefox a week, and you’ll see what I mean. It’s just a stupid browser, you think initially. Who cares. Mozilla sux, why would this be any different, right? Bloody hell, I just realized I’m blogging in it, too.

Damn browser. I’ll tell you, though, if IE got tabbed browsing, I’d probably go back to IE… but the CSS button and the RSS buttons are cool too. Weird man. I never thought I’d care.

I need a new search mechanism for my site

Atomz.com recently announced that:

“To help offset the cost to continue to provide this service, we will be adding contextual advertising before and after the search results. This advertising will be delivered by Google, our advertising partner. The ‘sponsored links’ will be purely text-based and will be driven off the search keywords entered. They will be visually distinct from your search results, so your visitors know what results are for your site, separate from the advertising.”

I will not allow advertising on my site, and I know of a peer of mine who’s company is having similiar problems with this recent news. I’m sure I could probably use the default MoveableType search engine for my site, but that wouldn’t work for my friend.

Anyone know of a free search engine I can use for my site and/or others? It will replace the current search functionality I have now.

Virtual Model dot com

Via <a href=”http://www.mediadiva.net/mt/”>her majesty</a>.

<a href=”http://www.myvirtualmodel.com”>Virtual Model dot com</a>

I believe I heard about this awhile ago… even an idea of scanning in your true physique in the future to actually have the clothing try ons be more valid. The fact that other clothing sites support this is kind of neat. It is an example of using one application’s features via another… just like Central does!