Adam Bosworth has a blog post entitled AJAX reconsidered that hits right at the heart of some questions I've been asking myself about the renewed interest in using DHTML and server callbacks via XMLHttpRequest to build website applications. Adam writes

I've been thinking about why Ajax is taking off these days and creating great excitement when, at the time we originally built it in 1997 (DHTML) and 1997 (the XML over HTTP control) it had almost no take up.
First, the applications that are taking off today in Ajax aren't customer support applications per se. They are more personal applications like mail or maps or schedules which often are used daily. Also people are a lot more familiar with the web and so slowly extending the idiom for things like expand/collapse is a lot less threatening than it was then. Google Maps for example uses panning to move around the map and people seem to love it.

Secondly, the physics didn't work in 1997. A lot of Ajax applications have a lot of script (often 10 or 20,000 lines) and without broadband, the download of this can be extremely painful. With broadband and standard tricks for compressing the script, it is a breeze. Even if you could download this much script in 1997, it ran too slowly. Javascript wasn't fast enough to respond in real time to user actions let alone to fetch some related data over HTTP. But Moore's law has come to its rescue and what was sluggish in 1997 is often lightning quick today.

Finally, in 1997 or even in 1999 there wasn't a practical way to write these applications to run on all browsers. Today, with work, this is doable. It would be nice if the same code ran identically on Firefox, IE, Opera, and Safari, and in fact, even when it does, it doesn't run optimally on all of them requiring some custom coding for each one. This isn't ideal, but it is manageable.

I find the last point particularly interesting. If Web browsers such as Firefox had not cloned Microsoft's proprietary APIs in a way made it easy to write what were formerly IE specific applications in a cross-browser manner then AJAX wouldn't be the hip buzzword du jour. This brings me to Microsoft's next generation of technologies for building rich internet applications; Avalon and XAML.

A few months ago, C|Net ran an article entitled Will AJAX help Google Clean Up? In the article the following statement was attributed to a Microsoft representative

"It's a little depressing that developers are just now wrapping their heads around these things we shipped in the late 20th century," said Charles Fitzgerald, Microsoft's general manager for platform technologies. "But XAML is in a whole other class. This other stuff is very kludgy, very hard to debug. We've seen some pretty impressive hacks, but if you look at what XAML starts to solve, it's a major, major step up."

Based on how adoption of DHTML/AJAX occured over the past few years I suspect that Avalon/XAML will follow a similar path since the initial conditions are similar. If I am correct then even if Avalon/XAML is a superior technology to DHTML/AJAX (which I believe to be the case) it will likely be shunned on the Web due to lack of cross-browser interoperability but may flourish within homogenous intranets. This shunning will continue until suitable clones for the functionality of Avalon/XAML appears for other browsers. In which case as soon as some highly visible pragmatist adopts the technology then it will become acceptable. However it is unclear to me that cloning XAML/Avalon is really feasible especially if the technology is evolved at a regular pace as opposed to being let languish as Microsoft's DHTML/AJAX technologies have been. This would mean that Avalon/XAML would primarily be an intranet technology used by internal businesses applications and some early adopter websites as was the case with DHTML/AJAX. The $64,000 question for me is whether this is a desirable state of affairs for Microsoft and if not what should be done differently to prevent it?

Of course, this is all idle speculation on my part as I procrastinate instead of working on a whitepaper for work. 

Disclaimer: The aforementioned statements are my opinions and do not represent the intentions, thoughts, plans or strategies of my employer.  


Categories: Technology
Tracked by:
"Sleeper Hit of the PDC: Windows Presentation Foundation/Everywhere" (Dare Obasa... [Trackback] [Pingback] [Pingback]
"flagyl side effects how long" (flagyl side effects how long) [Trackback]
"scuola lingua" (scuola lingua) [Trackback]
"birdhouse distributors" (birdhouse distributors) [Trackback]
"business cards" (business cards) [Trackback]
"foto scolaretta sex sex" (foto scolaretta sex sex) [Trackback]
"bed and breakfast positano" (bed and breakfast positano) [Trackback]
"prom dresses" (prom dresses) [Trackback]
"blue cross of ca" (blue cross of ca) [Trackback]
"mouse pad" (mouse pad) [Trackback]
"I Want to Play the Price Is Right" (I Want to Play the Price Is Right) [Trackback]
"plants retail frisco%2c tx" (plants retail frisco%2c tx) [Trackback]
"invisibile ragazze inculate" (invisibile ragazze inculate) [Trackback]
"piu caldo fuoriclasse papa" (piu caldo fuoriclasse papa) [Trackback]
"street racing videos" (street racing videos) [Trackback]
"altro consumo it" (altro consumo it) [Trackback]
"lake compounce" (lake compounce) [Trackback]
"amore segreto" (amore segreto) [Trackback]
"amateur adult mpeg archives" (amateur adult mpeg archives) [Trackback]
"what is my computer hz" (what is my computer hz) [Trackback]
"girls gone wild" (girls gone wild) [Trackback]
"volagratis" (volagratis) [Trackback]
"song lyrics riding dirty" (song lyrics riding dirty) [Trackback]
"owner builder homes" (owner builder homes) [Trackback]
"handsome teen scopata" (handsome teen scopata) [Trackback]
"fast weight loss wellbutrin" (fast weight loss wellbutrin) [Trackback]
"free teen sex video" (free teen sex video) [Trackback]
"citizen wrist watch" (citizen wrist watch) [Trackback]
"ragazza ginevra" (ragazza ginevra) [Trackback]
"girls ugly" (girls ugly) [Trackback]
"cpa client newsletters" (cpa client newsletters) [Trackback]
"zyban side affects" (zyban side affects) [Trackback]

Monday, 06 June 2005 16:19:56 (GMT Daylight Time, UTC+01:00)
Bottom line is that it will be successful if it can provide demonstrable business value. If users of an avalon implementaion spend 10% more money than other users; show 15% less churn; spend 20% more time on the site viewing those ads etc.
Monday, 06 June 2005 16:33:36 (GMT Daylight Time, UTC+01:00)
I think we give Microsoft too much credit for "inventing" XMLHttpRequest. All we're talking about here is doing POSTs and GETs from JavaScript. ANd even then, Microsoft screwed it up royally by needlessly binding it to XML.

I suspect browser-based technologies will be "good enough" by the time XAML makes it into the world.
Monday, 06 June 2005 17:36:20 (GMT Daylight Time, UTC+01:00)
Xamlon has been hard at work for the past 18 months bringing AJAX type capability to all platforms and browsers using XAML and .NET. As as an example of what we're doing, take a look at some demos:

Especially our 'AFLAX' mapping demo -- AFLAX leverages Flash vs JavaScript/DHTML, therefore delivering a consistent experience everywhere.
Tuesday, 07 June 2005 01:12:10 (GMT Daylight Time, UTC+01:00)
Maybe if Microsoft made XAML an open patent unencumbered standard and helped it get multi-platform adoption, it would have a chance.
Wednesday, 08 June 2005 12:08:01 (GMT Daylight Time, UTC+01:00)
Yay! Pragmatism...

Dare I say, Dare that you are also a Pragmatic Inside-out Technology Type (PITT)

like I branded Bosworth on Friday.

I had you down rather as being part of the Dark Matter of Technology...

And what about the life in the proprietary town of Deadwood?

That seems to fit well with the Life in the B0rg Cube tag of yours...
Thursday, 09 June 2005 12:18:03 (GMT Daylight Time, UTC+01:00)
You mention the feasibility of cloning if the technology (XAML/Avalon) is evolved at a regular pace. I would think this would be a key concern with anyone adopting XAML as a browser technology, whether you're a browser developer or a web developer. As stated in Micah Dubinko's writeup of the recent XTech 2005, "At its heart, though, XAML is an interchangeable XML representation of underlying .NET objects."

Well, we've seen how the .NET classes have changed between .NET 1.0, 1.1, and 2.0. What's the cost of playing catch-up whenever Microsoft comes out with new/changed classes and changes in the XAML markup syntax?

And XAML will never become an open standard unless it's decoupled from the underlying .NET classes. A standard would mean Microsoft would be locked into a specific version of the .NET implementation, given that XAML is essentially a reflection engine. You'd need an abstraction layer to allow .NET to continue moving forward while having a clearly defined markup standard. Do you think that will really happen?

Friday, 10 June 2005 14:01:15 (GMT Daylight Time, UTC+01:00)
Marc,have you looked at SVG standard for example?SVG 1.2 is drastically changed from SVG 1.1 perspective-that's life,you can't escape changes.And IF you say-I wan't use all these new features provided by new standard,you'll see youself out of business some day.We need move forward and that's not problem of concrete platform such as Avalon or something similar.
Andrey Skvortsov
Saturday, 08 October 2005 23:53:05 (GMT Daylight Time, UTC+01:00)
The problem you foresee is a result of a 'fundamental Microsoft self infliction', a rather telling lack of self belief and a touch of paranoia that someone might actually come up with something better. Instead of 'reigning out' cross platform Windows forms back in '95, or even just sticking to the Windows platform, MS copied the Netscape browser to dish out web pages. After all, you're either cross platform or you aren't. In 2001 in spite of the opportunity that .NET offered, we ended up with 2 sets of controls which were separately derived and a dichotomy for UI dev. And at 2005 PDC, MS is talking about Atlas and AJAX and what ASP.NET is going to do. Here we are in 2005, XML and JavaScript. Oh dear, oh dear, oh dear...
Rod Macdonald
Sunday, 04 June 2006 19:22:12 (GMT Daylight Time, UTC+01:00)
wow !
Comments are closed.