×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ajax Sucks Most of the Time

CowboyNeal posted more than 8 years ago | from the foaming-cleansers dept.

Programming 510

Vo0k writes "It seems that everyone is excited with what AJAX promises, and only few look at what it breaks as well. The article at Usability Views offers a critical view at the new Microsoft technology, pointing out some problems it creates, like breaking bookmarking, making the 'back' button useless, problems with printing, accessiblity and more. The single-sided view from the article provides a good counter-balance for all the craze."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

510 comments

as in all new directions... (5, Insightful)

yagu (721525) | more than 8 years ago | (#14203147)

Up front Disclaimer: I realize the article is "just saying no to Ajax" with constraints. My post here is to the objection I think the article states Ajax problems too harshly.

Reading the article it seems to me:

  • most of the listed grievances are not unique to AJAX, have been addressed in the past, and are probably soluble for AJAX too. (e.g., how many remember the broken first browser paradigms where there simply was no easy way to get the information from a web page to some printer? It's not perfect today, but it's doable. This problem is ultimately soluble for AJAX too)
  • AJAX is the (to many) latest and greatest. Many will hold on and gain purchase. Some will bail. I think AJAX or some derivative thereof is here to stay. Like technology before AJAX, there will always be naysayers, and there will always be glitches. For this to justify a "Just Say No to AJAX" philosophy is naive and maybe even misguided.

From the article:

Ajax is currently so hard to learn that many page authors write buggy code.

Huh? So? Is this unique to only Ajax?

Also from the article:

Many websites that offer users a choice between regular and ajax versions have found that most users prefer ajax-free designs.

When an article wants to rant or complain about a technology, an un-cited and broad statement like this is a huge red flag. It doesn't state what the percentages are, it doesn't state the reasons for preferences. In the middle of an article espousing "no Ajax", this is a non-sequitor. Please expand.

I'm having great fun experimenting with AJAX and am getting interesting new approaches for old solutions improving customer and user experiences. I'm not about to walk away from this until a more thorough trial. So far I'm liking what I'm seeing. Yeah, there are glitches to solve, isn't that kind of what we're here for?

Re:as in all new directions... (5, Informative)

CaymanIslandCarpedie (868408) | more than 8 years ago | (#14203260)

It is worth noting this statement at the bottom of the page.

This is a spoof article. Please compare it with the original and you will see how little it has been changed.

That said some of the points are valid, but the article was basically showing how those same things were valid at one point for using frames as well.

Re:as in all new directions... (1)

the eric conspiracy (20178) | more than 8 years ago | (#14203303)

My post here is to the objection I think the article states Ajax problems too harshly.

Perhaps, but I think the problem set the author chose to examine is not where the deep and most fundamental problems with Ajax lie.

The basic issue is simple - HTTP isn't a client - server protocol. There are several technologies that try to get around this issue, Java Applets, Flash Remoting and now Ajax. They all have their own set of issues, but the place that the break is in the design decision to try to turn an HTML browser into a rich client. It is always a matter of trying to bolt the fuselage of a 747 onto a balsa glider, it just won't fly and you will always be frustrated by this fact.

Re:as in all new directions... (2, Informative)

interiot (50685) | more than 8 years ago | (#14203352)

most of the listed grievances are not unique to AJAX

In fact, they're so non-unique that the HTTP protocol actually specifically points out that method=POST, PUT, and DELETE should not be retried [zvon.org]. Also, I can't find the reference, but most browsers won't cache passwords when you go back and then forwards, as a security precaution, and that's basically standard practice. The back button has LONG been broken.

That doesn't mean we should ignore the criticisms of AJAX, but I think the take-home message should more be "be aware that there are these downsides, and web authors should everything they can to minimize those downsides. In some situations, this may mean using a simpler method than AJAX. However, AJAX as a whole is something that is beneficial, rather than harmful."

Re:as in all new directions... (4, Insightful)

Ian Wolf (171633) | more than 8 years ago | (#14203380)

Ajax is currently so hard to learn that many page authors write buggy code.

I swear, I've heard the same argument about PHP, Perl, C, and even the concept of object oriented programming. In every case the person uttering those words was an idiot or simply too entrenched in their chosen language to accept a new way of doing something. It all reminds me of a line from Scott Adams' Dilbert Principle. As best as I can recall it went something like this.

"Every technology has its detractors. I'm sure that somebody once stated that the pointy stick would never replace the fingernail as the fighting man's weapon of choice."

As for my disclaimer, the only thing I know about Ajax is that its not effective as Mr. Clean.

Re:as in all new directions... (0)

Anonymous Coward | more than 8 years ago | (#14203437)

Exactly. The author is using many of the same tired arguments that were initially used against frames, flash, embedded java and even in some cases heavy use of java script in webpages: bookmarks don't work exactly right, URL doesn't indicate what's on the page, alternate browser types, etc. etc.

And then in the classic "I don't like change on the internet so I'm going to try to make new technology seem harmful" style, he promptly fills up the rest of the article with the way he feels things 'should be'.

You all remember (well, er, some of you) remember the people that got their panties in a bunch when they came across a website that wasn't lynx compatible right? This is the same thing. There are always goign to be people like this pissing on the posies of the innovators because it doesn't fit into their model of how things 'should be'.

Just because not everybody uses the technology well, doesn't mean that it's cause to reject it.

SPOOF, but were frames a good idea? (1)

winkydink (650484) | more than 8 years ago | (#14203453)

The article is spoof, doing an s/frame/ajax/ on an earlier posting as to why frames suck. While it is a spoof, it still has a point.

Misleading (4, Insightful)

FortKnox (169099) | more than 8 years ago | (#14203150)

The article is about using AJAX on a webpage, but the biggest use of AJAX is on a web application.

Sure, putting ajax on the companies webpage may not be the best idea, but how often are you using bookmarks on gmail (a web application)? And if you want to print from gmail, it shouldn't be a print of the screen, but a specially built printable html page.

I think the article writer was focusing mostly on webpages where AJAX is clearly geared towards the web application developer.

Re:Misleading (4, Insightful)

garcia (6573) | more than 8 years ago | (#14203219)

The article is about using AJAX on a webpage, but the biggest use of AJAX is on a web application.

Sure, putting ajax on the companies webpage may not be the best idea, but how often are you using bookmarks on gmail (a web application)? And if you want to print from gmail, it shouldn't be a print of the screen, but a specially built printable html page.


I think that pointing these things out NOW is a great idea being that AJAX is now one of the biggest buzzwords in the industry. With marketing and management raving about AJAX and demanding AJAX applications be put everywhere including locations they shouldn't be, I think it's about time someone put an article out there that describes the negative effect that AJAX applications could have on the web.

Hopefully more media outlets will start picking this up and not just touting the successes of AJAX. Remember, buzzwords = $$$ in the eyes of those that are clueless.

Re:Misleading (0)

Anonymous Coward | more than 8 years ago | (#14203272)

In the world I live in, web applications are server side code that generate web pages. Ajax (actually javascript) is useless for creating accessible web pages, that's hardly news.

Re:Misleading (1)

Kelson (129150) | more than 8 years ago | (#14203318)

Ironically, in the world I live in, web applications that can also take advantage of client-side logic when available are much easier to use than those that can't.

Re:Misleading (0)

Anonymous Coward | more than 8 years ago | (#14203300)

I really think that's the point that Jakob misses. For some of the clients I deal with the web is an application deployment platform, not an information publication/retrieval system. If you're deploying applications the information publication/retrieval metaphor doesn't fit all use cases.

IMO the application platform aspect of the web browser and AJAX can really boost usability for the majority. Unfortunately the support for the browser as an application platform is really poor for the disabled, as Jakob points out.

Re:Misleading (0)

Anonymous Coward | more than 8 years ago | (#14203478)

This "article" is a spoof on an earlier anti-frames article. You missed the point of the spoof, essentially recycling an older rant for a newer technology. The "article writer" wasn't focusing "mostly on webpages" but rather on keeping the text and style of the article as true to the original as possible.

It's funny, laugh.

I believe you are correct in your assertion that AJAX is much more appropriate for web apps vs. web pages.

Implementation (5, Insightful)

kevin_conaway (585204) | more than 8 years ago | (#14203156)

Its not the technology, its the implementation that causes those errors. You can misuse ANY technology to f things up. Why should this be any different?

Re:Implementation (5, Funny)

Anonymous Coward | more than 8 years ago | (#14203182)

You can misuse ANY technology to f things up.

This is the Internet. You can say "fuck" here.

Re:Implementation (1)

helix_r (134185) | more than 8 years ago | (#14203459)


Some things are easier to mess up than others.

The more complex something is, the more bugs you get, the more careful developers have to be, the more time they spend struggling with inspid issues, the less productive they are.

I pull out the marshmallows..... (3, Funny)

Anonymous Coward | more than 8 years ago | (#14203168)

...to cook them via the upcoming flame war.

Re:I pull out the marshmallows..... (1)

CoderBob (858156) | more than 8 years ago | (#14203228)

I'll bring the chocolate and graham crackers. Anyone else wanna do the hotdogs?

Re:I pull out the marshmallows..... (1)

GeorgeMcBay (106610) | more than 8 years ago | (#14203371)


I pull out the marshmallows to cook them via the upcoming flame war.


Roll the dice to see if I'm getting drunk.

ajax (5, Insightful)

rayzap (700032) | more than 8 years ago | (#14203170)

ROTFLMAO AJAX is no different than any other programming set of tools. If used correctly it rocks, otherwise it sucks. We use it a lot in our web application and it has provided us the ability to deliver greatly enhanced interactivity and reporting. It's kinda like the blind date that gets overly hyped. The reality will never match the hype even if she was pretty.

It's a spoof (3, Interesting)

Sugarcrook (795680) | more than 8 years ago | (#14203172)

If you read the bottom of the article, you'll notice that it's a spoof and a simple rewrite about why frame suck most of the time.

Re:It's a spoof (1)

sn0wflake (592745) | more than 8 years ago | (#14203240)

If you look close in this thread you'll notice this post is a spoof ;)

Re:It's a spoof (-1, Offtopic)

Anonymous Coward | more than 8 years ago | (#14203334)

lol no it's not a spoof

Re:It's a spoof (4, Insightful)

ivan256 (17499) | more than 8 years ago | (#14203283)

For what it's worth, the original was completely correct, and frames (mostly) died a quick death. Almost nobody uses them in new development anymore.

Re:It's a spoof (2)

Kelson (129150) | more than 8 years ago | (#14203289)

And, like the best satire, it raises good points. Careless use of AJAX does indeed have many of the problems raised, so careful planning and graceful degradation are -- as always -- the key to producing a usable site.

(At least now I know why I didn't see the headline come through on the mailing list. If I had, it woud have been one of the 25% of Jakob Nielsen articles that I actually read.)

Re:It's a spoof (4, Insightful)

DingerX (847589) | more than 8 years ago | (#14203325)

aye, and frames do suck most of the time, for the reasons specified. I am continually annoyed by those things. So I assume we're supposed to sit back and chuckle that "them naysayers are just like the luddites who said frames were bad". Frames still stuck, most of the time, even with a decade of workarounds to fix the broken functionality.

Re:It's a spoof (1)

Kelson (129150) | more than 8 years ago | (#14203355)

Yep. There's a reason that the use of frames has dropped dramatically on the web over the past 5 years or so.

When is a spoof not a spoof? (3, Insightful)

DragonHawk (21256) | more than 8 years ago | (#14203327)

"If you read the bottom of the article, you'll notice that it's a spoof and a simple rewrite about why frame suck most of the time."

It's interesting to note that while the article is apparently a spoof, many of the objections still apply. (Sure, this is way over-generallzing, but work with me here for a minute.) Also, note how frames went through a period where everybody used them, then use gradually taper off. I think people realized that much of the time, frames just got in the way and the "old ways" worked just as well, if not better.

It does seem like the computer world loves to make the same mistakes over and over and over and over again. We keep doing it. (ObRef to The Mythical Man-Month by Fred Brooks.) What's that about not learning history?

Re:It's a spoof (1)

shawn(at)fsu (447153) | more than 8 years ago | (#14203382)

This is the ulitmate did you even RTFA story. Looks like the editor and the submitter fell for it too.

This is great.

Microsoft? (4, Interesting)

takkaria (782795) | more than 8 years ago | (#14203175)

"... offers a critical view at the new Microsoft technology ..."

It doesn't appear to be new, and it doesn't appear to be Microsoft's anymore, either.

Re:Microsoft? (0)

Anonymous Coward | more than 8 years ago | (#14203286)

Well, it was MSs in the same way that all relational DBs are nothing more than a filesystem.

Re:Microsoft? (0)

Anonymous Coward | more than 8 years ago | (#14203394)

Only the actual buzz word "AJAX" is new. The parts of AJAX have been in place long ago. But because there's finally a buzz word for the technology, it's all of a sudden the latest craze. The exact same thing can be said about "blogs" - online journals have been around forever; "podcasts" - online radio has been around forever; "ipods" - mp3 players have been around forever, but only now do you see everybody (non-tech savvy people I mean) with them (and most of the time it is actually an iPod).

And it most certainly is NOT and NEVER WAS a Microsoft technology. Microsoft has nothing to do with the new widespread adoption of AJAX. This comment in the article really really bothers me. Microsoft deserves absolutely no credit for things they had nothing to do with. Everyone knows it was Jesse James Garrett from Adaptive Path who coined the term AJAX. And it's quite clear that Google (maps and mail) is the main reason for the widespread adoption.

Re:Microsoft? (1)

loconet (415875) | more than 8 years ago | (#14203461)

The article talks about how much this technology "sucks" and why it's not good to use it. Ofcourse we have to associate ajax with Microsoft this time.

You must be new here.

RTFA (2, Informative)

LordBodak (561365) | more than 8 years ago | (#14203180)

Right at the bottom:
This is a spoof article. Please compare it with the original and you will see how little it has been changed.

Not a MS Technology (2, Informative)

blaster151 (874280) | more than 8 years ago | (#14203181)

AJAX is not a Microsoft-specific technology. My understanding is that Microsoft has an AJAX implementation called Atlas, but that AJAX itself is a set of conceptual ways of blending existing technologies to provide more interactivity to users of web apps.

Re:Not a MS Technology (1)

CaymanIslandCarpedie (868408) | more than 8 years ago | (#14203407)

No its not Microsoft specific, but I think they were refering to MS as creator of it. MS began using AJAX in the early 90s I think (of course without the cool new buzz-word) and was made possible by thier extenion "HttpRequest" (don't quote me on that as I'm not a web developer but I'm pretty sure thats the command) to the existing commands. This new HttpRequest was created to support Outlook Web Access (which I believe was the first "AJAX" application). Now I'm sure others can give a better history of this, but thats why its sometimes refered to as MS technology.

BTW, HttpRequest (AJAX) was just another example of that EVIL "embrace and extend" of MS ;-)

Jokes often become "common knowledge" (1)

RugRat (323562) | more than 8 years ago | (#14203185)

offers a critical view at the new Microsoft technology

You know, a lot of people will read this and not understand that it's a joke. If five years from now, the general population thinks that it is a MS technology, we'll know where it started!

Re:Jokes often become "common knowledge" (5, Informative)

killercoder (874746) | more than 8 years ago | (#14203315)

Ummmmm, I hate to do this - god I hate to do this, but I'm actually going to support MS on this one.

The paradigm of Ajax: "The transfer of XML to a web page in the background so that javascript can load data/initiate actions without loading a new page" was in fact a Microsoft innovation. They shipped it with Internet Explorer 4 and the first packaged MSXML controls.

I was writing applications of this type over 7 years ago targeted at Internet Explorer 4. The latest incarnation of AJAX still uses the MSXML parser on IE Browsers, but extends the support to FireFox and Netscape variants.

Please note, Microsoft did not coin the term AJAX, but they did do it first.

I know I'm going to hell for this.

Huh? (0)

Anonymous Coward | more than 8 years ago | (#14203186)

at the new Microsoft technology

I seem to recall AJaX existing long before MS decided to jump on the bandwagon. How is it suddenly a Microsoft technology? I suppose next you'll be saying MS invented the Internet (rather than trying to wipe it out) and invented multimedia (rather than trying to wipe out the first truly multimedia machine, the Amiga).

Re:Huh? (2, Informative)

amliebsch (724858) | more than 8 years ago | (#14203247)

How is it suddenly a Microsoft technology?

IIRC, Microsoft did in fact invent the async XML transport functions that underlie much of the "magic" of AJAX, way back in the late 90's.

Re:Huh? (1)

PepeGSay (847429) | more than 8 years ago | (#14203299)

How is it suddenly a Microsoft technology?

Duh! This article is talking about the bad points of Ajax, therefore they call it a Microsoft technology.

Re:Huh? (0)

Anonymous Coward | more than 8 years ago | (#14203290)

MS created that bandwagon. MS did not invent AJAX, but they were pushing its concept way before it was a fad. Funny thing is, when MS was pushing it, everyone said its a typical stupid MS idea.

Right tool for the job (1)

squoozer (730327) | more than 8 years ago | (#14203187)

The problem with AJAX is not with the technology it is, as is often the case, with the people using it. It's the current big new "thing" and some people will insist on using it everywhere they can. Look how many sites appeared that were pure flash when flash was the big new thing. There aren't as many now and those that are almost always offer a html version.

I am sure that there are some really nice things that can be done with AJAX. We just need to find out what it's good at and what it isn't so good at.

Personally, I won't be using AJAX for a long while yet. As a lone developer I feel that client side scripting is too expensive to develop in terms of time. It's much easier to just use plain old (X)HTML and CSS on the client side even if that means a slight increase in complexity server side. Well that's my 0.02 anyway.

Re:Right tool for the job (1)

Qzukk (229616) | more than 8 years ago | (#14203401)

Really, the problem with AJAX is that many of the developers and their users are trying to mix an "application" design paradigm with a connectionless browser design paradigm. AJAX breaks "back"? Of course it does. Applications don't have a "back" button, they have an "undo" button, and it performs a completely different operation from what the browser does when you hit back. If AJAX application developers want to not confuse their users, they force everything into a new window with no control bar, and provide undo buttons of its own. Of course it breaks bookmarking as well. Do you have a "bookmark" for the paragraph formatting dialog in Word? I thought not. Why should we care if Google can index it? Does google crawl World of Warcraft interfaces? I didn't think so either.

The author has clear gripes with the misuse of AJAX, but his claim that it should be banished to "Web2.0" companies and kept in permanent beta, never to be fed after midnight is a bit harsh for a technology that does one thing and does it well.

OSS software is superior in all ways (0)

Anonymous Coward | more than 8 years ago | (#14203191)

Look at all the eyes looking over the source code!!!!
Look att the eyeessss!

Every AJAX downloader is a potential AJAX developer!!!

How can M$$$ HOPE to compete!!!?!?!?!

Improving web accessibility? (2, Insightful)

saskboy (600063) | more than 8 years ago | (#14203193)

"13% of users would not even be able to use a site with ajax. Sure, it is possible in principle to use graceful degradation to serve alternate content to these users, but most designers don't bother designing two versions of their pages and reserve the no script option for a "helpful" link to the download site for an ajax-supporting browser version."

Wouldn't it be nice if Frontpage or Mozilla Composer would allow a plain HTML page to be saved and linked along side one with javascript, flash, and other advanced web designs?

It really annoying too how Tab-clicking at javascript link ends up producing a blank tab in Firefox. That AJAX breaks the Back button is nothing new too. All sorts of sites tell you that you'll be re-submitting data if you press Back on a screen you've just sent information from. That's essentially a broken Back button. And printing a webpage? Good luck if it isn't plain HTML.

Re:Improving web accessibility? (1)

Kelson (129150) | more than 8 years ago | (#14203481)

Wouldn't it be nice if Frontpage or Mozilla Composer would allow a plain HTML page to be saved and linked along side one with javascript, flash, and other advanced web designs?

The problem there is that the editor has no way to know what your fallbacks are going to be. Let's simplify it by looking at images. Images are supposed to contain an ALT attribute with text to display if the image cannot be displayed (broken link, text-only browser, images disabled, whatever). But the editor can't reliably come up with useful text to put there. It could make a guess based on the filename, but IMG0437.JPG isn't particularly informative.

Same problem with frames, Flash, JavaScript, etc. The editor doesn't know what to substitute unless you tell it. "This page requires Frames" or "Please download Flash" are about all that can be determined programmatically.

Plus it's better in the long run if you can pack your alternative content into the same HTML document. That way there's only one location to worry about -- and one file to keep current -- and you don't need extra logic to redirect visitors based on the featureset of each browser at the moment you last checked them.

Nielsen? Never mind. (1, Insightful)

Anonymous Coward | more than 8 years ago | (#14203194)

I was interested in reading the article until I found out it was by Jakob Nielsen. If it were up to that guy the web would be stuck in 1995.

I am a strong proponent of usability and user interface issues, but this guy doesn't even like using different colours for links.

What does interest me is he makes a lot of money by going around telling people this. I want to get in on that action.

Re:Nielsen? Never mind. (2, Interesting)

netean (549800) | more than 8 years ago | (#14203243)

Hear hear... have you seen his website... designed by blind donkey. http://www.useit.com/ [useit.com]http://www.useit.com Hardly a good model for usable, effective web design.. But a shining example of the "usability" of the internet circa 1996

Re:Nielsen? Never mind.- spoof (1)

netean (549800) | more than 8 years ago | (#14203281)

oh hang on a minutes

"This is a spoof article. Please compare it with the original and you will see how little it has been changed.

Constructed by Chris McEvoy with apologies to Jakob Nielsen. "

Ajax is a Microsoft Tech? (0, Redundant)

squison (546401) | more than 8 years ago | (#14203199)

"The article at Usability Views offers a critical view at the new Microsoft technology" Really? Didn't know Microsoft made Ajax...

Bugs, In a new language? No! Really? (0)

Anonymous Coward | more than 8 years ago | (#14203200)

I've worked in enough languages over the past 25 years that this is no surprise to me. It breaks, you work around it. Eventually they get the bugs worked out and someone looks through your old code and wonders why you did all these things some arcane hard way.

I'm sure CSS worked perfect initially. ;)

Suck is such a strong word but, they do [yahoo.com] and Ajax will be playing at Highbury [bbc.co.uk] later today.

Or are we talking about Ajax bub-bub-bub, the foaming cleanser?

Not always that bad. (5, Insightful)

MartinG (52587) | more than 8 years ago | (#14203206)

The web is used (rightly or wrongly) to deliver two distinct things.

1) Content.

2) Applications.

For (1) ajax _does_ suck most of the time for all the reasons stated, but for (2) is makes sense because it makes the app behave more like a desktop app. "back" and "bookmarks" stop making sense anyway. You wouldn't expect to have those features in your desktop apps, so why in an app delivered over the web.

The great shame is that these two opposing requirements have not forked into the data-web and the application-web. Things went wrong IMO the day someone thought of putting forms in html.

I've been breaking the back button for years... (1)

Wisgary (799898) | more than 8 years ago | (#14203207)

...using stuff that has POSTDATA. Oh no! Come on, AJAX has no more or no less problems than any other set of tools. You just need to learn when to use which set. Sometimes AJAX is convenient, sometimes it's not, you use the one that's appropriate for the task. Stop the hate.

Re:I've been breaking the back button for years... (0)

Anonymous Coward | more than 8 years ago | (#14203326)

Use a redirect after post. That will fix your application.

Microsoft technology? (0)

Anonymous Coward | more than 8 years ago | (#14203209)

I didn't know this was MS only technology... (it's not)

I talked about this last month (0)

AutopsyReport (856852) | more than 8 years ago | (#14203213)

I talked about these problems back in November in another AJAX thread here [slashdot.org]. There was a good followup [slashdot.org], too. I think what I said still stands today.

"Until AJAX can be implemented with a tried-and-true method with absolutely no breakage in the traditional flow of movement between pages (being able to recycle data and regular page transitions using Back and Forward), there is no possible way that AJAX will become another requirement of web applications. As it stands, its a very popular trend, but it really isn't holding much weight despite what the average web developer may think."

Re:I talked about this last month (1)

TrappedByMyself (861094) | more than 8 years ago | (#14203258)

I talked about these problems back in November in another AJAX thread here [slashdot.org]. There was a good followup [slashdot.org], too. I think what I said still stands today.

You do realize that as of, ummm.... a week ago, it was still November. I know the technology changes fast, but jeez ;)

Re:I talked about this last month (1)

RingDev (879105) | more than 8 years ago | (#14203259)

AJAX is not ment to replace a well designed HTML site. It is designed to be a tool for web applications. If you replace the tried and true web navigation system with AJAX, yes, you will break the "tried and true" method. But if you use AJAX to keep on page data constantly updated (say like a stock ticker, statistics, logging, etc) where you only have one page, it will be a great tool.

Like everyone else say, if you use the wrong tool for the job, your going to wind up with crap.

-Rick

Please not again! (1, Interesting)

PromptZero (936799) | more than 8 years ago | (#14203214)

AJAX may be the acronym du jour, but these techniques have been around for YEARS, ever since IE5. AJAX is just a simplified way of doing it, just like every programmer in the world creates their own little libraries of routines for handling db connections and the like. AJAX doesn't do anything new, it just repackages it for those who never heard of it.

When I first learned about XmlHttpRequest in the IE5 days, I thought it was going to revolutionize the web. All the problems of session state maintenance would disappear and web pages would become little client-server apps. MS had this capability first with the ActiveX control. They could have hyped this capability and taken the lead with it back in 1999. ASP.Net would have been another great opportunity to showcase this feature and create standards. Instead the ASP.Net philosophy seemed to be to make as many trips to the server as possible. For a while MS virtually abandoned the idea of out-of-band requests. So now, years after introducing this feature, somebody at Microsoft finally realizes what they had going and decides to jump on the bandwagon. Good job guys, but a little late.

Re:Please not again! (1)

ryanelm (787453) | more than 8 years ago | (#14203291)

as i observed it AJAX caught on when firefox, safari et al began supporting an equivalent system of http geting. i think really it was that noone wanted to write badass sites that would only work in IE then write another version for the rest of the world, belive me i figured out a way to do it back in the day with iforms but it was just too much of a hassle to figure out the best way to do it for all browsers. the method became popular when it became possible to sift out workable ways to do it on many browsers, and it'll get more popular when people figure out the best way to integrate it with the existing web gui paradigm.

oh wow (1)

ryanelm (787453) | more than 8 years ago | (#14203221)

Someone came up with one more hack to extend the functionality of HTML/JS and *GASP* developers arent using best practices. no way. Its almost like this whole web thing is one hack on top of another on top of a basic system not designed for the purpose it has been put to. The web is literally evolving and the genome representing 'AJAX best practices' just hasent been selected out yet. Its like the whole table vs div+style thing.

Same problems as with Flash (1)

kill-1 (36256) | more than 8 years ago | (#14203223)

These are exactly the same problems as with Flash movies. Basically it boils down to the fact that you can't address different "pages" of a website with their own URL. This fundamentally breaks the concept of the world wide web.

But like the poster above me said: For web applications AJAX is a viable solution. For web sites it should be used carefully.

Microsoft? (1)

Tuffnutz (195983) | more than 8 years ago | (#14203225)

What does AJAX have to do with Microsoft? The word 'microsoft' doesn't even appear in the article, as far as I can tell...

User's don't care (1)

Billosaur (927319) | more than 8 years ago | (#14203229)

I'm a user. All I want is the web page to load and to contain the information I'm looking for. Simple really. Does it matter what is used to generate the page? No. AJAX, XML, HTML, CGI... they're just tools for developers to use. AJAX has its place and if it's not the best tool, then either people will stop using it, figure out how to use it better, or it will be enhanced to work better. Why all the fuss?

How did this get posted on Slashdot? (1)

gasmonso (929871) | more than 8 years ago | (#14203234)

I read the article and I am not impressed. The complaints are mostly trivial or nonexistent with proper coding and design. I especially like the bit about bookmarks...OH NO!!!! That's a deal killer for me. Obviously, AJAX is not the best tool for every situation, but when used correctly, the results are spectacular as seen in Google Maps, Yahoo Mail Beta, etc.

gasmonso http://religiousfreaks.com/ [religiousfreaks.com]

Get over it (1)

WolfFang (652118) | more than 8 years ago | (#14203236)

Can you bookmark in appliations? Hit the back button?

As a developer of internal corporate web applications, I've been using javascript and xml for years to create rich environments. My only complaint is that the browser does not go far enough in creating a powerful application layer. I would prefer to be able to completely disable the history on pages without using javascript hacks so that back took you completely out of the application and back to the previous web site. I'd like editable dropdown lists and other common widgets without using javascript hacks.

The browsers page based model is outdated, and the increase in support for ajax and other new frameworks is only a good thing for the web. Hopefully new browsers, or even a whole new class of browsers will overcome the limitations of the current generation. Only then will the browser begin to replace local applications in mass.

"Ajax".replace("Ajax","Flash") (1)

TheGuapo (864659) | more than 8 years ago | (#14203237)

"breaking bookmarking, making the 'back' button useless, problems with printing, accessiblity and more"

Remind anyone of Flash?

Re:"Ajax".replace("Ajax","Flash") (1)

Kelson (129150) | more than 8 years ago | (#14203375)

Funny you should say that, since the article basically took a real Jakob Nielson article and replaced the word "frames" with "AJAX."

Re:"Ajax".replace("Ajax","Flash") (0)

Anonymous Coward | more than 8 years ago | (#14203467)

That's the first thing I come back with when people bring up the history / bookmark thing. Pure Flash sites (as annoying as they are) seem to have caught on just fine with even worse issues than this (in that they typically destroy ANY sort of traditional web navigation patterns).

Still, a smart programmer can write a well designed AJAX app that makes appropriate use of the browser's history and bookmarking capabilities.

Flash (5, Insightful)

nmg196 (184961) | more than 8 years ago | (#14203248)

Nearly all of the problems cited in the article are present to a FAR WORSE extent with fewer workarounds if you write your website so it makes heavy use of Macromedia Flash. That includes problems with bookmarking, back button not working, no printing etc. Yet Flash is used on millions of major websites. As other posters mention, the problem is not with the technology but misuse of the technology.

Some flash developers get what I call "flash happy" and write the entire website in flash. This is lunacy. For a start, (and this is possibly a problem with AJAX heavy sites too) your site cannot be indexed by any search engines if it's navigation is entirely flash based. No search engine in the world is going to evaluate your flash files or run your AJAX scripts in order to attempt to crawl the site. If AJAX is used sparingly where necessary, then I'm pretty sure it won't cause any major problems. It's not like Flash seems to have suffered...

Remember the frames debate? (1)

stm2 (141831) | more than 8 years ago | (#14203256)

I didn't RTFA yet, but I think this is the same complain as HTML frames (no back button, no printing, no bookmark correctly...). (there is even a no frames campaign [noframes.org], looks as a 1997 web page!) I think that if you are looking a web page as just a "page", yes, the author is right, AJAX suck. But if you see it as a web app, you should evaluate it as an app, not as a web page. In a typical app, you use provided buttons, print with provided menu (like Gmail) and so on.

Javascript overused (1)

Foofoobar (318279) | more than 8 years ago | (#14203257)

I've told people time and again that client side programming is only useful for display. Any scripting that can be turned off and make your applications useless or insecure is potentially a danger.

Sure, checking data before it is sent is nice but validating data is incorrect since that data can be changed without the script and sent to the server.

AJAX is just the latest craze like FLASH was and it has the same problems that FLASH does and as a result, is just a nice display layer that can be turned off.

Before people get all taken with AJAX they need to ask themselves 'what would happen if the client had javascript turned off or decided to bypass my javascript entirely?'.

Nielsen? Bah. (1)

abscondment (672321) | more than 8 years ago | (#14203271)

Jakob Nielsen looks at usability in terms of "what is the worst possible thing a developer could do with this technology?", rather than "what are the benefits, and how can we avoid the pitfalls?".

His main issue with Ajax is the breaking of the navigation model - well, I've got news for him: the model he describes isn't an end-all-be-all, perfect one. It's all fine and good to complain that people could use Ajax to break the back button, to create pages based on sequence of actions, et cetera - but that's not the real power of Ajax.

The model is obviously shifting. People are no longer confined to the static "page". It's more like a house that we explore than a book that we read. Sometimes, you want a window on the static wall so that you can see in real time things that are going on. But you never, and I mean never, want to distrupt the flow from room to room.

Ajax is not a navigation tool, but Nielsen is treating it that way. I mean, sure: GMail uses ajax for some navigation, and I do have certain issues with that. But within the context of a conversation - that's a perfectly fine "window" into what has happened and what is happening. GMail's dynamic view of messages is more usable than a "forward/back/refresh" paradigm, even if people have to learn something new to use it.

But like I was saying: Ajax's power is not in navigation. It would be ludicrous to suggest that. It's really powerful when it comes to providing dynamic interaction in the context of a static location. It's perfect for dashboards, maps, stock tickers, weather sites: anything that provides constantly changing data at a fixed location.

So, I'd say to Dr. Nielsen that he needs to consider Ajax outside of the navigation-misuse paradigm, because that isn't what attracts most developers to it.

page as the atomic unit of information (1)

xxxJonBoyxxx (565205) | more than 8 years ago | (#14203273)

The fundamental design of the Web is based on having the page as the atomic unit of information...

Stop right there, grandpa. That statement ceased to be true as soon as "IMG" tags were allowed.

Re:page as the atomic unit of information (1)

Viol8 (599362) | more than 8 years ago | (#14203301)

Huh? Since when? An IMG tag simply embeds an image on the page,
it doesn't create something above and beyond the page itself.
The page can still be manipulated in full by the standard
browser systems including the images.

Re:page as the atomic unit of information (1)

xxxJonBoyxxx (565205) | more than 8 years ago | (#14203373)

"Atomic" implies that all the information is there in one package. IMG tags and other embedded/included references require the reader to make additional requests, so they break the concept of a page as an "atomic" construct. (Conversely, "inline javascript" wouldn't break an "atomic" page.)

Where's the Humor Icon? (0)

Anonymous Coward | more than 8 years ago | (#14203306)

If the disclaimer at the bottom claiming the "article" is a spoof wasn't enough. How about the examples given where using AJAX is acceptable?

geotag-based apps via flash
tag-based instant messaging via Ruby on Rails
community podcasts via api mashups


Which were taken straight from the Web 2.0 company generator script: http://andrewwooldridge.com/myapps/webtwopointoh.h tml [andrewwooldridge.com]

AJAX is MS technology...? (1, Funny)

Brad_sk (919670) | more than 8 years ago | (#14203312)

AJAX is MS technology...Oh, my God. I need to start hating this now. I better hide behind this article and bash Microsoft. Don't waste a second!

or: "Jakob Nielsen like it static." (1)

plams (744927) | more than 8 years ago | (#14203383)

From TFA

the BACK button in the browser simply didn't work with ajax sites.
If you're using AJAX for all "navigation" for a site you're using it wrong. One of the best uses for AJAX is to update the site according to a user's choice, say, adding a comment to a slashdot article. What do you want to use the BACK button for there? Go back to BEFORE you posted the comment? The BACK button works great for static homepages, but "dynamic" is the keyword in AJAX.

Many browsers cannot print ajax pages appropriately.
That's not really an AJAX problem, but the browser having difficulties capturing the present state of the page. The same problem usually goes for using "save as" on the page, btw.

Ajax is currently so hard to learn that many page authors write buggy code.
Okay, then call that section "Page authors sucks most of the time". Also, Ruby on Rails does a great job of making AJAX available to the n00b.

Search engines have trouble with ajax
Again, AJAX should be used for dynamic changes to a page. A search engine isn't meant to post comments and such.

IMO, AJAX used for page navigation is bad. Using it for dynamic updates is neat.

An odd complaint here.... (1)

mblase (200735) | more than 8 years ago | (#14203412)

Even worse, URLs stop working: the addressing information shown at the top of the browser no longer constitutes a complete specification of the information shown in the window.

I hate to state the obvious, but URLs have never really constituted a complete specification of the information shown. The big problem is that, unlike books, the Web is digital and dynamic -- what you read at a given URL today can be moved, edited, deleted, or p0wned by the time you get there tomorrow.

Ask any experienced high school literature or history teacher why they discourage students from using the Internet as an source for research papers, and this will be the big reason why.

I understand the core of his point, but I think it's time he acknowledges the reality that nothing on the World Wide Web is static these days--if it ever was.

Now presenting the Dee Da Dee Awards (1)

AcidTag (528338) | more than 8 years ago | (#14203416)

...and the Award goes to Slashdot flamers who read the first paragraph of an article before getting diarrhea of the mouth.

"This is a spoof article. Please compare it with the original and you will see how little it has been changed"
"Constructed by Chris McEvoy with apologies to Jakob Nielsen."

Navigation Arguement (-1)

They_Call_Me_Spanky (83478) | more than 8 years ago | (#14203434)

The 'breaks navigation' arguement is only relevant to hierarchical data and sites. Ajax if for interactive web applications for which the web wasn't originally designed for.

It's been said many times over. All sites must have Ajax = !true;

78 percent? (1)

ChrisGilliard (913445) | more than 8 years ago | (#14203449)

Ajax Compatible Browsers: 78%

No way.....85% use IE alone and IE is Ajax compatible. That's not even counting Firefox, Mozilla, and others.

Flash (2, Insightful)

smallguy78 (775828) | more than 8 years ago | (#14203450)

Flash can't be bookmarked either, probably the most annoying feature behind pure flash websites that puts me off.

The main problem is people want to be able to serve miniature applications via the web, whilst even with new standards it's still about providing glorified word documents with a smarter navigation.
Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...