The World’s Leading Resource on SOA / Web Services
Sign-In | Register
   
 
Dion Hinchcliffe's Web 2.0 Blog
  
Dion Hinchcliffe
Web 2.0, Ajax and SOA Power Panel with Dion Hinchcliffe and Jeremy Geelan
Click above to watch a SYS-CON Power Panel discussion on Web 2.0, Ajax, and SOA with Dion Hinchcliffe, Jeremy Geelan, and other industry notables including SOA Web Services Journal Editor-in-Chief, Sean Rhody. Taped on Dec 7th, 2005 from the Reuter's TV studio in Times Square.
Hinchcliffe & Company
Hinchcliffe & Company, a leader in Enterprise Web 2.0, is helping organize the first major East Coast conference on Web 2.0 and the New Internet in the enterprise. Do NOT miss this unique opportunity to learn about the disruptive business influence of the next generation of the Web. Learn how it is creating major challenges and opportunities for organizations around the world.
The New New Internet
This Web 2.0 blog has arranged for readers to obtain $50 off the standard conference rate.  Use promotion code 'dionh' during registration.
Search
 

Why Ajax Is So Disruptive
Yesterday I wrote an invited response in the Ajax Developer's Journal to Jeffrey Zeldman's off-kilter but widely read (i.e. Slashdotted) take on Web 2.0.  In it I claimed Zeldman had way too much focus on Ajax as a Web 2.0 ingredient.  All these trips around the proverbial mulberry bush while we are witnessing a rapidly growing greater awareness of all things Web 2.0 in the mainstream.  Heck, even CIO Magazine has started talking about Web 2.0, which means its really arrived if they think people up in the rareified air of executive management need to know about it at all.

But I often deempasize Ajax because I think a lot of people equate Ajax with Web 2.0, which just isn't the case.  Ajax can be an important plank in Web 2.0-friendly software.  It provides a robust, interactive, high-intensity, cross platform user interface in the browser.  And it demands Web services in order to function at all (which encourages web sites to make an API out of their service from the get go.)  In this way and others, Ajax tends to drive people down the right paths from the beginning.  This includes making applications available anywhere at the invocation of a simple URL and a ready-to-use toolkit to create mash-ups (Ajax must have Web services on the back-end, yours or others that you've redirected.)  But great Web 2.0 software doesn't require Ajax at all; del.icio.us, for example, which I don't believe has any Ajax.

Anyway, it's easy to forget we have a long way to go in the next generation of the Web. Years and years.  As Shel Israel put it so pointedly yesterday, "Web 2.0 isn't dead. It's just barely being born."  And smart folks that study the big picture of all this realize seismic things are afoot.  That our personal and work lives are being transformed with surprising speed and ease to this new world of pervasive, online, collaborative, aggressively integrated, two-way software.  Patrick Cormier recently had some good observations that the old creaky, slow-moving, and unresponsive software of old is going away.  It just can't compete with this vibrant, dynamic way of creating, delivering, using, and leveraging software as a service.  It's not a new way, as he observes, good software tended always to be built this way, just not so consciously.

But I assert that Ajax encourages, even enables, software creators down a path that is inherently disruptive to the greater software world.  Here's why:


Ajax's Disruptive Influences


  • The End of Software Upgrades, Fixes, and Security Patches: This is one of several major advantages that pervasive software gives you.  Since Ajax software delivers an application fresh to your browser each time you load the URL, you're always getting the latest version, with all fixes and updates, automatically.  Any back-end software experiences the same seamless upgrades.  Traditional native software will never be able to compete with this and people will get very used to never having to update or patch again (often converting their data along the way.)

  • Software and Data Available Wherever You Go: How many of us are tired of synchronizing their personal, work, and family computers with the latest software and files?  I know I am. I love it that great Ajax software like Writely lets me have my software, and all my data, wherever I am at the click of a URL.  I can effortlessly share it with others when I want and I never have to spend any of my time copying files to thumb drives, e-mailing things to other accounts, etc.  It makes life so much simpler and easy.  Traditional software can do some of this, but it's just so much more seamless the Ajax way.  And because Ajax apps generally require no installation of software, you can run your apps and get your data anywhere you find a browser: at an Internet kiosk, cafe, library, friends home, etc.

  • Isolated Software Can't Compete with Connected Software:  Ajax software is delivered using the entire Web as a platform.  That means it can (with a little proxy on the server, provided by the Ajax developer) talk to and use any service out on the greater Web.  This has facilitated a dizzying array of mash-ups. And it means that software created from scratch is going away, as it should.  The best software is now highly integratd into the Web and leverages the rich landscape of services that can be found there.  Small example: The terrific Web 2.0 start page, NetVibes, now has Writely integration.  Never mind more classic examples like Housingmaps, which is an Ajax application that integrates data from two entirely different places on the Web.  Stand-alone software can compete in a limited sense here actually, but Ajax encourages and enables this way of thinking by forcing the software developer down the path of using lightweight Web services from the outset.

  • Deprecation of  the Traditional Operating System: It used to be that software was tied to a given operating system, since much software uses a specific OS as a platform. Yes, Java doesn't do this but it falls into the category of being its own platform for this discussion.  The issue is that Ajax software is almost completely operating system neutral.  Ajax applications use the Web itself as their platform and just need a browser with JavaScript and XmlHttpRequest.  And to be sure, some browser compatibility testing must be done, but that will issue will likely only decrease as Ajax development tools provide the browser abstraction automatically.  In the end, whether a user is running Windows, Linux, MacOS, or something else entirely doesn't matter.  Ajax is even on mobile devices now.  This is enormously disruptive to the gigantic operating system industry which generally depends on being the most compelling platform for their target audience.  That just isn't the case any more.  The Web is that compelling platform for an increasing number of people.

  • Software That Is Invisible: This is a harder to define one but it's one that I notice personally with Ajax and Web 2.0 applications in general.  I just get work done, I don't even notice the software anymore.  I'm writing this in an Ajax editor as a matter of fact and one thing I realize is that I never worry about if I have the software installed that I need, whether I have the security permissions, if my data is nearby.  All of these concerns slip away and I'm getting done what I need to get done.  Increasingly, as I use Flickr, Writely, Google Reader, HipCal, del.icio.us, my web mail client, and others, I just don't even notice they are there just there when I need them.  And I'm not spending time maintaining them, installing them,  or synchronizing data.  Those days are gone and I just don't want to go back.  Traditional native software will never compete with this, it's way too high maintenance, low quality, and clunky.  That's not to say you can't do abomidable things with Ajax but the Web just routes around the bad implementations.  That's much harder with just a few choices for usable native software.


None of this doesn't mean there aren't important issues with Ajax.  They are increasingly being solved, but include the need for high-speed, quality connectivity, security and trust concerns, the ability to easily switch providers if your online software provider goes out of business or just starts to suck, and others.  But none of them is big enough to outweight the enormous disruptive forces that Ajax brings to bear.

And if you want to see this Ajax software personally, take a look at these lists of Web 2.0 software here and here.  Not all are Ajax, but a large number are.

Why do you think Ajax will or won't be one of the biggest software development stories of 2006?
Ivan Spark made this comment,
"The End of Software Upgrades, Fixes, and Security Patches" - this feature is closer to client-server technology, not AJAX.

"Ajax software is delivered using the entire Web as a platform" It's the main feature of Web 2.0, many of modern internet writers think a lot about AJAX and it's nearly equal for them the term Web 2.0. This things are not the same. It's good article, but in many cases i'll better use Web2.0 instead of AJAX (it's only Asynchronous Javascript and XML over HTTP, not more).

With best regards, Ivan Spark.

Russian web 2.0 community

comment added :: 19th January 2006, 12:43 GMT-05 :: http://blogs.mail.ru/community/web2.0/
Rob Gonda made this comment,
Great post!

Some of it applies for RIAs in general, not only Ajax.

Best,

-Rob

comment added :: 19th January 2006, 13:54 GMT-05 :: http://www.robgonda.com
Otis Gospodnetic made this comment,
I agree with the Ajax != Web 2.0. Simpy doesn't currently use _any_ Ajax, yet it has various other elements that people wold call "Web 2.0".

However, some of the above i not 10)% correct. Ajax doesn't always deliver seamless upgrades. Pretty much any web application, regardless of its use of Ajax, provides that, because the bulk of functionality lives in some data center somewhere. Also, some purely client applications also have seamless upgrades - Azureus (popular BitTorrent client), for instance, does this REALLY well.

Availability of data everywhere - again, this is not really due to Ajax, as is due to the open APIs that let outsiders programmatically pull data out of a service. Here is an example API. Those who use an API like this may use Ajax in the UI later, but don't have to use it, and your data will still be available anywhere you go.

Ah, I see now that your list is actually a list of Ajax _influences_, which then makes the list right! :)

comment added :: 19th January 2006, 15:23 GMT-05 :: http://www.simpy.com/
Dion Hinchcliffe made this comment,
Yes, I do agree with all commentors so far.

I certainly realize you can get varying degrees of these benefits with other Ajax-like technologies. And I glad commenters are making that point extra clear.

But Ajax provides these capabilities in a special way that most (and probably all) of the others cannot.

1) Ajax requires no extra software, plug-ins, or support for "special" standards. As long as you have Javascript, CSS, DHTML, and XmlHttpRequest you are ready to go. This makes the OS and even browser a matter of only minor concern for the developer. And it lets Ajax be the most pervasive, most available, most portable solution.

2) Yes, APIs and software as a service existed long before Ajax, but again, what's special about Ajax is that it channels software creators down the right path from the beginning. For example, you MUST have an API to provide an Ajax app (private or not), and you can put highly-portable, always up-to-date code either on the server or the client. This partitioning wasn't desirable except for relatively unpopular solutions like Java Applets, until Ajax came along with a solution that requires nothing extra and relatively tiny, tight code.

I'm actually not arguing against any of these points because they are correct. I just wanted to clarify that I think Ajax has the greatest potential of all existing techniques for delivering these advantages.

Thanks much for reading and taking the time to comment.

Best,

Dion

comment added :: 19th January 2006, 16:09 GMT-05 :: http://web2.wsj2.com
DivByZero made this comment,
Are you sure you're talkin about Ajax ?

All the points you've mentioned are about web applications in general, not Ajax :)

Security patches & Updates: each time you load the URL, you're always getting the latest version .... Yeah sure ... because someone is updating the server side scripts like with any other software, surely not because Ajax allow the software to autopatch itself.

comment added :: 19th January 2006, 17:43 GMT-05 :: http://www.divbyzero.org
Pete Stoppani made this comment,
As far as I can tell, the only thing that AJAX brings to the table is that it significantly improves the user experience by avoiding the round trips to the server as the user input data that affect other fields/data on the page.
comment added :: 20th January 2006, 00:12 GMT-05 :: http://nirwana42.blogspot.com
Daniel Strickland made this comment,
I agree, mostly. I don't agree that AJAX (or webservices) is "disruptive" (http://en.wikipedia. org/wiki/Disruptive_technology). Web services are simply another piece to the puzzle. Client software will not go away. There are a lot of good reasons and situations for a client program to have all necessary data locally and to not be a part of a larger system.

Your choise of "disruptive" implies that the old way of doing things is going to go away. I can think of several applications on my computer that I do not want to "grow up" or become web services (Calculator and Photoshop for example).

comment added :: 20th January 2006, 09:17 GMT-05 :: http://www.cloudbrain.com
David Heinemeier Hansson made this comment,
Ajax applications doesn't need an API more than you can say that the application itself is an API (with GETs/POSTs from the browser). Lots of Ajax applications doesn't use XML per se. The suite at 37signals is an example of this.
comment added :: 20th January 2006, 13:01 GMT-05 :: http://www.37signals.com
Dion Hinchcliffe made this comment,
David,

Yes, I would definitely state that the GET/POSTs back to the server from the browser, as long as they are data-based and not presentation based (i.e. not HTML), absolutely represent the application programming interface (API) of the Ajax application.

Interestingly, whether that API public or private actually may not make a real difference since folks will reverse engineer the good ones. In other words, if you use Ajax, you tend to have a public API whether you like it or not.

I agree with you however that lots of Ajax applications don't use XML, nor should they. In my recent open service models article, I stated that JSON, REST, RSS are likely candidates but there are many others.

And thanks much for stopping by, I do appreciate your time.

Best,

Dion

comment added :: 20th January 2006, 14:27 GMT-05 :: http://web2.wsj2.com
Phillip Holmstrand made this comment,
It's my guess that AJAX (in XMLHttpRequest form) won't be the preferred method of building client driven web 2.0 apps because of the cross domain limitations.

JSON using javascript on-demand on the other hand doesn't have the same cross domain issues.

Example: I created a batch geocoding service using JSON and Yahoo's new JSON output compatible REST geocoding service. The requests to Yahoo's service come straight from the end-user's web browser, so the 50,000 geocode per IP limit can be applied at client's IP. I think its a pretty cool example of things to come: http://www.batchgeocode.com

Cheers! -Phillip

comment added :: 21st January 2006, 11:50 GMT-05 :: http://www.batchgeocode.com
Simon made this comment,
AJAX is definely != web 2.0

i often see a lot of ppl misunderstand the whole concept of the web 2.0 they either fall towards the CSS Layout or the AJAX and use that to define web 2.0. Personally, i think web 2.0 is like a concept. A new way of web dev using existing tools. Really, CSS Layout has been around for years, AJAX, heck, that's been around since the first time iframe, javascript and server-side script worked together. Now days, we have XMLHttpRequest, but the truth is, this has been around for years also, just nobody really paid too much attention to it. Until Google's Gmail, MSN Space, and other big sites start re-exploring these tools, we start turning heads and say, hey that's pretty cool. The tools aren't new, they are just be re-explored.

The way i like to look at AJAX is thinking of it as a simple concept. How to apply this concept into applications is really what ppl should focus on.

comment added :: 21st January 2006, 15:07 GMT-05
Michael Mahemoff made this comment,
Just posted a link on Ajaxian (http://ajaxian.com/ archives/why-ajax-is-disruptive).

Small note: Delicious does use Ajax for tagging (h ttp://ajaxian.com/archives/showcase-delicious-sugg est). Hardly a killer app for them, but nice to know there's some Ajax even in Delicious :->.

comment added :: 23rd January 2006, 00:04 GMT-05 :: http://ajaxpatterns.org
theCreator made this comment,
Great post!
comment added :: 23rd January 2006, 01:48 GMT-05 :: http://www.stockalicious.com
Michal Migurski made this comment,
I agree with a few other commenters that these disruptive features are continuations of Netscape's early promise to "reduce Windows to a set of poorly debugged device drivers". More on my site at http://mike.teczno.com/notes/dion.html.
comment added :: 23rd January 2006, 11:40 GMT-05 :: http://mike.teczno.com/
Julien Couvreur made this comment,
All the points you make do not apply specifically to AJAX, but to web pages in general. People have been calling the web disruptive for years and especially during the dot-bomb era, for the same reasons that you list.

Regarding upgrades and patches, the situation is not as clear cut as you're presenting it. First, the browser needs increasingly many upgrades and patches. Second, you have many "rich clients" that are becoming smarter about updating themselves silently.

There is a another issue which you haven't discussed: privacy and lock-in. Web applications are one step further than desktop apps when it comes to these.

comment added :: 23rd January 2006, 11:51 GMT-05 :: http://blog.monstuff.com
Dion Hinchcliffe made this comment,
Yes, it's true, people have said many of these very same things before about Web-based software. But I believe that until now it couldn't deliver. With Ajax, you can now find software that does almost anything traditional software can do, and in just as satisfying a way, and usually more.

What I mean is that Ajax applications are the first Web software that truly feels like the software we already have, yet live directly from the Web but require no new technology.

I agree it's a subtle difference and in the end Web 2.0 techniques like Ajax are synergistic effects; a whole that is significantly greater than the parts.

Finally, Julien, your comments are right on but I would suggest this is a new wave of disruption. If you're not sure about this, recall Ra y Ozzie's disruption memo from last year. The big guys are feeling it as a new force and responding. Directly because of this, Ajax is one of the harbringers of this new disruption.

You are also spot on about privacy and lock-in. This is something I've written about previously. There will be a backlash this year if there is a major outage of Web 2.0 software or if a big vendor goes under. If this happens, provider switching and open data formats will come to the forefront, as it should.

Finally, I appreciate all the comments, please keep them coming!

Best,

Dion

comment added :: 23rd January 2006, 12:48 GMT-05 :: http://web2.wsj2.com
mikepk made this comment,
I think Ajax is very important for exactly the reasons you list. I've been working on a software tool for the next generation of web applications called YAJAF!.

Interestingly I was thinking of opening up the framework and solicited feedback on that course of action. I've gotten almost none. The things you list seemed obvious to me, but I think I may be 'too close' to it. I don't think people really realize how important the dynamic web application really is.

On a related note I think the current generation of high reliance on "web effects" and radical user interfaces will pass. The "every application is completely different" reminds me of the DOS days of GUI programming. Xerox Parc, Apple, and Microsoft standardized the interface that we've all internalized over the years, and the current "press the glossy bubble with eyes to launch the application!" seems like a giant step backwards in terms of usability.

I've been a bit discouraged by the lack of feedback on my work but I still believe in my framework and think it's the wave of the future for Ajax style applications.

comment added :: 24th January 2006, 17:43 GMT-05
Jon made this comment,
I hate to rain on this parade, but I don't understand how any of the features mentioned were introduced by Ajax- I could do all of those things through a regular server postback before new revelations were announced by people who spend most of their free time staring into an LCD monitor.

Now granted I would have had to perform a post-back (please, don't panic) and had my screen "refresh", if one can bear to imagine that. I think AJAX is a very cool thing that improves UE somewhat and may introduce new types of applications in the future, but don't see much more than hype today. Google Maps needs AJAX but most of today's applications simply do not.

comment added :: 24th January 2006, 23:03 GMT-05
guido made this comment,
One more reason: no one can steal your software if it runs on your server, anyone can use it for a small fee, but no one can copy it (unless someone breaks into the server).
comment added :: 25th January 2006, 05:08 GMT-05
Kirk made this comment,
Nice post and many good points. However This notion that the world is a completely connect place is far from reality IME. I have blogged about my experiences of using Lufthasna's in flight internet service and it was a good experience but I would certianly not want it to be a requirement that I was attached in order to be able to perform basic tasks.
comment added :: 26th January 2006, 05:32 GMT-05
PJ Brunet made this comment,
For the "Wherever You Go", Meebo is going to be handy, especially if you're at an internet cafe or something like that... Good thing I have my passwords memorized ;)

http://www.meebo.com/

comment added :: 2nd February 2006, 02:22 GMT-05 :: http://www.knowingart.com/
PJ Brunet made this comment,
For the "Wherever You Go", Meebo is going to be handy, especially if you're at an internet cafe or something like that... Good thing I have my passwords memorized ;)

http://www.meebo.com/

comment added :: 2nd February 2006, 02:48 GMT-05 :: http://www.knowingart.com/
Web 2.0 is about participation! Visitors are strongly encouraged to leave comments on Web 2.0 topics
name: email:
url:
help on wiki syntax
Trackback
Trackback URL: http://web2.wsj2.com/read/trackback/1608543.htm
http://guidone.bloggers.it/ajax/web_20/web_utilities/la_forza_di_ajax.htm
Blog:
Date: Wednesday, 25 January 2006 10:10 AM

You can reach me at:
email:
dion (at) hinchcliffeandco (dot) com
Skype/AIM: dhinchcliffe

This blog is created and maintained by the author of the page and in no way associated with SYS-CON Media or Web Services Journal. The author of the blog assumes all liability and responsibility personally for the content of the page.
www.blog-n-play.com is a registered trademark (78553120) of SYS-CON Media.