Adam Bosworth responds to his son's post on Ajax Mistakes. Adam was one of the key people behind Internet Explorer.
My son (Alex Bosworth) posted a popular post a week ago on the pitfalls
of Ajax applications but he left out some of the features still missing
from Ajax applications:
First, printing is still hard. The browser has never grown up
to enable the page author to easily describe an alternate layout for
printing which is a shame. Why isn't there an “HTML” for printing which
can describe rotation, freeze column or row headers, and so on?
Secondly, the browser isn't a good listener to external events.
If you want to build an application, for example, to show you instantly
when someone bids or a price changes, it is hard. You can poll, but
poll too frequently and the application starts to feel sluggish and it
isn't easy to do this. What you really want is an event driven model
where in addition to the events like typing the page can describe
events like an XMPP message or a VOIP request or a data-changed post
for an ATOM feed.
Third, if you want the application to run offline, you are
essentially out of luck. I've written about this at length before in
this blog and don't need to repeat what is required in detail. To
summarize what I said earlier, a local cache, a smart template model,
and a synchronization protocol are required to build applications that
run equally well connected and disconnected and the way that the
Blackberry works is a role model for all of us here.