For some time now, there's been something that's quite worrisome for me. The whole evolution of the web standards movement was to deliver (1) lower overall cost of development (we could re-use components as people built them once) (2) increase consumption (by making documents more accessible and (3) be future-proof (by sticking to a standard, we can evolve to future platforms).
For me, my biggest hope was that by adopting standards, it'd be easier to transition away from the desktop, whenever it'd happen. The XHTML document itself would become one massive bucket of microformats, which would let programmers go out, parse the data, and create this rich semantic web of information. FOAF was one of the earlier document formats I can remember that was supposed to do this.
Let's posit, for this post, that the web is quickly evolving into an "applications" economy. On the enterprise side, you're seeing Salesforce push Force.com, which are enterprise applications in the cloud. On the social front, you see Facebook dominating with Facebook apps (Zynga, the largest application provider on Facebook, may net up to $100mil this year). And in the mobile space, Apple is killing everybody with the App store.
I don't know enough to talk about Force.com (although I really should, given my job background), but it's a bit scary that neither the Facebook ecosystem (flash apps) or the Apple ecosystem (Cocoa) are building atop the web (by that, I mean XHTML + Javascript + CSS).
Gruber writes:
It's worth recalling that Apple had a similar idea to WebOS for the
iPhone, where certain apps would run as Dashboard-style widgets,
written in HTML, CSS, and JavaScript. Apple abandoned the idea in the
six months between the iPhone’s January 2007 announcement and when it
went on sale at the end of June, concluding that performance for such
apps was unacceptable and that they should go native Cocoa across the
board. And Apple was only going to do it for small apps, like Weather,
Stocks, and Calculator, not the flagship apps like Calendar and Mail.
On the other end of the spectrum, Ballmer:
"Let's face it, the Internet was designed for the PC.
The Internet is not designed for the iPhone. That's why they've got
75,000 applications — they're all trying to make the Internet look
decent on the iPhone."
Steve Ballmer is absolutely correct. But the conclusions he's drawing are incorrect - Apple has 75,000 applications specifically because the web couldn't provide the rich functionality. And when it couldn't, it wasn't extendable in a way where it could be. How does this portend for the future?
I can tell you that when we worked on the iPhone application for MindTouch, I was gung-ho on utilizing Safari and its primary interface. But after it was all said and done and I saw the Facebook app, I wanted to redo the whole thing natively inside the iPhone for the best experience possible. Ahh!
If I'm starting a new company from the ground-up, I'm now faced with a dilemma: do I focus my attention on writing for the Apple ecosystem (subject to the wrath of the Apple app gods), or do I go with the generic route of building for the web and hoping that sticking to standards helps me become more future proof?
I do know the launch around Amazon's Kindle required TONS of work on their website since the Kindle interacts directly with their website and not through custom protocols. Was it worth the cost for them? (I don't know) Will companies continue to do this?
Perhaps I'm just disillusioned, but it seems that the web standards movement really failed in moving rapidly enough to ensure that the bounds that were being pushed could be handled inside the browser.
(Although I can say one HUGE benefit of applying web standards was that when IE8 and Chrome were released, it was very nice that websites "just worked". No work involved there!)