There’s a refreshing post over on Ajaxian.com called Return of the POJO: Plain ‘Ole JavaScript. They’ve noticed that people, including themselves, have been using the word Ajax to describe any neat JavaScript effect.
Personally, I really like the word Ajax. It’s great to have a short snappy phrase to describe a methodology that involves communication with the server without a complete page refresh. It’s a very broad term but it’s not broad enough to cover absolutely everything that involves JavaScript. Sometimes very impressive results can be achieved using POJ: Plain Ol’ JavaScript:
So, if you know someone who calls every piece of JavaScript “Doing Ajax” let them know about POJ.
Last Friday, I attended the inaugural London Web Standards Group event. In his excellent talk on maintainable JavaScript, Christian Heilmann touched on the subject of Ajax vs. POJ.
He was talking about a JavaScript effect that was quite cool but not production-ready. The script was picked up by Digg and del.iciou.us users who were tagging it with the term Ajax.
“What does this have to do with Ajax?”, asked Christian. “The answer rhymes with this.”
He then showed a slide with two images: a duck and a ball.
Posted by Jeremy on Tuesday, July 18th, 2006 at 12:33pm
Comments
Those referring to every JavaScript enhancement to a web page as Ajax has grown to become something of a bother. I give them the benefit of the doubt as they probably haven’t had their eyes opened and their ears turned by a little book called ‘DOM Scripting’.
I guess the popular myth still persists that POJ is only suited for image rollovers and pop-up windows…
Is using the DOM to update a web page or create effects not indeed Ajax? Asynchronous? Check. Javascript? Check. XML. Hrmm.. Check. xHTML falls under XML.
But even with that said, it does get rather confusing if you want to reserve ‘Ajax’ for the whole requesting behind the scenes thing. So in that case, yeah, it’s misused.
While we’re at it, can we petition the developer/designer community to stop saying something with Ajax is ‘Ajaxy?’ Bah.. I don’t really care that much. Say what you want. Call it DHTML if you want….
I agree in principle with Colin on this one. The acronym of Ajax is Asynchronous Javascript and XML, of which all snazzy javascript effects perform in execution, regardless of whether communication with the server takes place or not. However since it was coined the term Ajax has been given a lot of stick for this very reason. People use it and unwittingly abuse it, not necessarily because they know what it means, but because it sounds cool and in vogue. It suddenly becomes a catch all for every out-of-the-ordinary javascript effect, like you say Jeremy.
It would be beneficial to educate people on this subject and the true definition of the term Ajax - what it represents - but the truth is if people really cared about the technology and learning the definition they would know the difference already.
# Posted by Steve Tucker on Tuesday, July 18th, 2006 at 11:16pm
Two responses:
Unless I pronounce Ajax different from the rest of the world then Ajax is an acronym. Whether it has infact become a stand alone word in it’s own right is a different matter deviating from this topic, but let me reiterate; whenever I say Ajax I mean AJAX. I know Ajax involves communication with the server. To clarify I agreed with what Colin said, that if you break down the term then it could, in theory, be used to define any Javascript behavioural effect. In practice however this term would not be correct.
# Posted by Steve Tucker on Wednesday, July 19th, 2006 at 10:34am
Apart from communicating with the server, isn’t Ajax just javascript done right? I can see how people might want to distinguish their fresh new DOM scripting javascript from the hacky incompatible javascript of old.
# Posted by Alex Farran on Wednesday, July 19th, 2006 at 4:57pm
In my experience, co-workers have confused some of the (admittedly simple) scripts I have written in the past for Ajax simply because the page doesn’t refresh.
It seems to me that we have done a good job driving home the point that Ajax is asynchronous, but maybe some people have glossed over the fact that asynchronicity alone does not Ajax make.
Jeremy, I think you and Steve and I are arguing about something on which we actually agree. I can spot it quickly because my girlfriend and I do it all the time.
Server requests with JavaScript should be called Ajax. Other fancy effects should be called DOM Scripting. And should anyone get it wrong, we’ll all huff and puff about it on our blogs.
"He then showed a slide with two images: a duck and a ball."
Ha ha! Brilliant! :)
Communicating with the server is only one point in five of those listed in the article you linked to Jeremy. Until DOM scripting catches on as a term in the same way as Ajax then people are going to continue to use Ajax to refer to standards compliant interactive web pages. (IMHO)
# Posted by Alex Farran on Thursday, July 20th, 2006 at 4:43pm
I think we’re all very clear on that last point Jeremy. I for one (along with pretty much every other Ajax developer, id imagine) is in agreal; Ajax is about communication with the server. That is what makes it unique, unlike the language used to send and recieve the request, which is where confusion arose. This is partly why every man and his dog refers to fancy Javascript as Ajax, in addition I reckon to fancy demonstrations or Ajax like those on script.aculo.us. It is an association thing. On my own site I have known my navigation dropdown to be referred to as Ajax when it is not. The only Ajax used on the site is through the contact form embedded within the dropdown on one of the pages.
In regards to the Ajax being an acronym thing cheers for the link. I have read it before some time ago and it is a good read to say the least. However Jesse says "The name [ajax] is shorthand for Asynchronous JavaScript XML". Does that not make it an acronym?
# Posted by Steve Tucker on Friday, July 21st, 2006 at 8:56am
How many posts about- AJAX , acronym or not? - have we had since someone coined the name AJAX?
Perhaps someone spilled to many JAVA beans over a chunck of javascript? Who knows?
Let’st throw in some more coins: We have AHAH, AXAH, Hijax … If we would flip the coins, what would happen?
Coding is fun!
# Posted by Johan on Tuesday, July 25th, 2006 at 8:39pm
I think the fact that Jesse James Garett, himself (the guy who coined the term Ajax) has said in his seminars that Ajax is not an acronym, kind of puts a lid on that particular argument. Does the purported acronym even make sense? Is JavaScript really asynchronous? I thought it was the event model that determined whether something was asynchronous, not the "programming" language. It just amazes me how this little XMLHttpRequest API has spawnd this "whole new way" of doing things [from a Web browser] and has created such a stir. I guess if you’ve been limping along in the world of HTML, CSS and JavaScript long enough, it kind of looks like a good thing. It’s still just the same ol’ stuff…just more of it.
# Posted by Bill on Saturday, July 29th, 2006 at 1:02am
Sorry. Comments are closed.