Ajax Is the Buzz of Silicon Valley
Carl Bialik from the WSJ writes "Ajax, or 'Asynchronous JavaScript and XML,' is allowing webpages to update as quickly as desktop software, powering applications like Google Maps and attracting money from Silicon Valley investors, including for a collaboration-software company called Zimbra. The Wall Street Journal reports: 'Zimbra's chief executive, Satish Dhamaraj, says that when he started his company in December 2003, "I really thought that Ajax was just a bathroom cleaner." Now his San Mateo, Calif., business has amassed $16 million in funding from venture-capital firms including Accel Partners, Redpoint Ventures and Benchmark Capital, the firm that famously funded eBay Inc. Peter Fenton, an Accel partner, says Ajax "has the chance to change the face of how we look at Web applications" and could boost technology spending by corporations, because Ajax is also being used to develop software for big companies, not just for consumers.'"
Seriously you build upon the failures that DHTML, HTML, Javascript, XML, XMLHTTRequest and you form a system which requires at least a 1 ghz processor just run a very simple GUI.
There is nothing special about this other than the incredible amount of sheer dependencies that exist. You cross browser incompatibilities you have inexact everything. This is not a good solution people.
This is also a good example of how bad Java and Sun has failed. If Sun would've opened up Java, let people distribute it, as well as from day 1 enabled easy RMI over HTTP we wouldn't be up to our necks in a horrible mixture of presentation logic and business logic.
So here we are, requiring gargantuan browser which are brought to a halt with this AJAX technology when we had many other technologies which did so much better but failed for various other reasons.
JUST BECAUSE AJAX NOW FINALLY WORKS DOESN'T MEAN IT IS A GOOD SOLUTION.
I've been doing AJAX for three years... before that we called it "remote scripting."
This is nothing new. Calling AJAX "new" is like calling email "new", when it's over 25 years old... AJAX-like techniques being about eight years old.
I'd have written more cool "AJAX" interfaces if only my damn managers knew what in the hell I was talking about back then.
AJAX is just buzz. Yes, it's a great tool for making better use of the web. Yes, it's relatively simple. Yes, it's flashy.
But it's still just a tool - and it can be used for good (see any of 37signal's apps) or evil (sites that use AJAX for navigation and break the back/forwards buttons). It won't make a badly designed web app better - in fact, incorrectly used, it can make things worse.
The Web 2.0 is about more than just flashy technologies like AJAX: it's about open architectures, semantic code, separation of content, presentation, and now behavior, and better user experiences. AJAX can enable any of those, but it can also destroy any of those. In fact, it's probably made web designers lives harder: now designers need to be familiar with separating not only content from presentation, but behavior from content and presentation as well. That can be very tricky, and it's tempting just to slap on some onclick handlers to your links rather than using the DOM and separating behavior from content. Furthermore, it's very tempting to have AJAX-enabled sites to that don't gracefully degrade in browsers without JavaScript - which defeats the point of the accessible web.
AJAX is a great technique, but it's not a panacea, and it's not a replacement for sound design and UI architecture.
This will be a case study in IP law. How many patents will appear covering each and every aspect of Ajax as developers reinvent techniques long since commonplace in pre-web software? I'm usually not pessimistic but given recent evidence (Blackberry, Eolas, etc) it's pretty clear that patenting trivial techniques, regardless of prior art, is effective.
How will a new platform emerge when its components are owned by multiple licensors? The answer is obvious; Microsoft (or Google, Canopy, etc) will buy them all and own the whole enchilada. Don't count on any Open Source implementations escaping the IP lawyers this time around.
Lurking at the bottom of the gravity well, getting old
It should be DHTML. DHTML, goddammit! Dynamic HTML! Just call it a dynamic web page!
"AJAX" is so irritating and non-descriptive. It should be clumped with other turds of terminology, like "blog," and ceremoniously flushed down the toilet bowl of language integrity to rid of us these awful, awful buzzwords that make people think they're suddenly technology masters. "OMG I'M USING AJAX D00D BECAUSE OF MY LITTLE SCRIPT TAG SNIPPET, LETS START AN AJAX COMPANY."
No, why don't you shut the fuck up and get out of my Internet!
Sorry...it's been a shitty day, and seeing the word "AJAX" on the front page of Slashdot yet again was the final straw. Rawr.
"Sufferin' succotash."
I never thought DHTML was a very descriptive term either. Web pages can be made dynamic in several different ways. It seems like DHTML is usually used to describe JavaScript combined with CSS, but some people used it to describe server side stuff too. The problem with technical jargon is that it gets bastardized by marketing-speak.
My complaint with Ajax is that it makes scripting the web much more difficult. I write scripts that grab content from the web and do things with it as well as scripts that post content to the web. I was trying to write one of these the other day for a site that used Ajax for the login form. If I still felt like it was worth writing, my script just became ten times more complex.
How do you link to content that is behind or otherwise encrusted with Ajax? How do crawlers find it? Without Ajax, you can look at the source of a page and get a good idea of what it's doing. With Ajax, you basically have to reverse engineer it (for an example, go look at the Gmail code).
The web should continue to stay one URL leads to one document which is a self-contained chunk of plain text containing everything you need to view its contents.
Ajax breaks the transparency and simplicity of the web for no good reason. It offers only increased responsiveness, which unless you are on a modem or something is minimal and mostly imagined by the user.
Look, I know some people are unhappy with the name Ajax. I understand that. I am not a huge fan of the word as used, myself.
But we need to get over it. That's the name we're using. There is no other word for it now. We can rant and rave all we want about how it should be called DHTML or DXHTML, or Dynamic Web Pages, or whatever. Truth be told, the word we use is almost entirely irrelevant so long as we are on the same page as everyone else.
In any case, we did need a need a new word. DHTML has been used for a long time, and describes such a huge variety of techniques that it's not terribly useful when we want to talk about the use of XMLHttpRequest usage and the recent movement towards more complex Javascript effects that abandon the dark-age IE5.5 and other early browsers.
Ajax is as good a word as any, and it's better that web developers have an identifiable term for that kind of tech, so that customers can refer to that general level of interactivity easily. Even if you don't use the exact "AJAX" model as described, when someone says "Ajax" we all know that we think about Prototype, Dojo, Google Maps and other apps along that vein.
Seriously, if you have enough spare energy to rant and rave about the terminology used in the web hype, then you need to find a better outlet for your energy.
Slashdot. It's Not For Common Sense
Why is it taking off where Java applets attempted similar things 10 years ago with great hooplah, and never really caught on?
Simple.
Its taking off because firefox can do it without any extra plugins.
"If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
I just skimmed through most of the irate postings to this thread and can't help but shake my head... seriously, I'm not being facitious. When are geeks going to learn that it is 'hype' that is partly responsible for a healthy chunk of a company's profit margins. Hype is also what drove the dotcom gold rush, but the reasons for the final bursting of the bubble in 2000/2001 are a lot more complicated (read some of Paul Graham's musings on the subject matter) and should not be simply attributed to 'irrational exuberance.' ;-) - no wonder we're all getting outsourced, we're simply too clever for our own good! I personally prefer to lose a few IQ points for a mansion on a lake, a bitch red Ferrari, and some more digits in my bank account...
The same people lamenting about this 'undeserved' hype are the first ones complaining that we're all being outsourced and that it's almost impossible to raise funding for an IT startup these days. So, here's a company that somehow coaxed a VC out of $16 Million (which in turn will create jobs for people like YOU!) and you're bitching and moaning acrimoniously about how you guys did that 4 years ago. If you are really sooooo smart, then go out there and grab a piece of the action! VCs are sitting on huge portfolio funds right now and have no clue what to do with them (well, almost
Exactly! Counldn't have said it better myself. As someone who works with network protocols a lot HTTP is a BAD protocol. It was fine back in 1993 when we had simple static pages with some text a few links. But for real applications with tables and list controls the stateless model is horrible. We need a cross platform application that provides sophisticated UIs that can be represented using a simple definition language but can hold state and only need to communicate with the server when the UI needs to load or store that state. I was hoping Java would effectively do this but it's UI is pathetically simple (AWT) or pathetically slow (Swing), it doesn't have very good control over the document and just getting the plugin to run in all browsers is a crap shoot.
First of all HTML, JavaScript and XML are not failures. They may not be ideal for whatever it is you think they should be doing, but as technologies they are incredibly successful. Secondly, AJAX requiring a 1 ghz processor is complete bullshit. I use google maps on my 400mhz G4 all the time, and I'll tell you that the operating system slowness itself is more of a source of frustration than javascript.
Oh wait, except if you use a decent toolkit you can write AJAX apps that work in 99.99% of new computers running any operating system, right out of the box. Shit, I guess we better go write some Java Applets or DirectX because AJAX is so horrible.
Okay, that's just outta left field. There's a huge market in between monolithic business applications and pure content documents. Using something like Java to do lightweight web development might satisfy your pedantic idea of proper coding practices, but it wouldn't make anybody more productive. Not to mention assuming that a specific language would somehow make people better software engineers.
Oh boohoo! You didn't perchance work on one of these superior technologies did you?
Well it makes it a good solution if you want to:
Unfortunately it doesn't do anything to: