No, its not.
(From the way-back machine, a topic that has bothered me anew recently)
Its a great application platform, much more full-featured than the old mainframe terminal emulators that its going to replace, but is the browser the interface that I want to use for everything?
Let’s take Google Maps as an example. The basic map application is brilliant, and one of the most enduring example of a major new AJAX application (forget the fact however that Google’s directions are so often wrong). But does Google Maps work well on my Treo? No, that’s why Google wrote a phone-specific application that gave the best possible experience but accessed the same data and back-end servers.
I expect the same thing to happen for other productivity apps as well. I use a Mac because I appreciate the higher level of interface design that goes into the typical desktop application. Switching back to the browser represents a major shift back in the usability of my computer. Not that I don’t want my data accessible from other systems, but I’d much rather use a well-designed Mac app that is accessing that data on the back end.
Email is a great example. On my desktop I have a great rich-UI browser, on my phone I’ve got a mobile-optimized client, and when I’m away from both I can fall back to web-based access. How is this accomplished? A strong set of protocols that separate the data on the backend from the presentation on
the front. We should be designing first with these APIs in mind, and then focusing our energies on the best interfaces for where that data is most often accessed.
And that’s where I’m surprised that we’re not seeing more three-tier, multi-platform applications out there. A back-end network server for data storage and complex computation, a web services data access layer, and multiple rich-interface applications for acces, /including/ a browser-based version.
Yes, I think we should be developing applications by first thinking about the data access and storage, then layering the right interface on top of that. Another example of separating presentation from application, but planned in a way that makes it easy to build the best experience for network-based apps, without being tied into “the browser as a platform”.
Yes! I’d love to see better factoring of applications like you call for. Separate the data from the UI.
-Rob Relyea
Program Manager, WPF Team
http://rrelyea.spaces.live.com