Apple has been going at it with Adobe ever since they decided they wouldn’t include Flash in their iPhone and iPad devices. If you missed the whole thing, you can probably catch up by reading a post that Steve Jobs wrote explaining their decision.

Eat it, Adobe.
The post set off an Adobe hate-fest on Twitter, one which in turn set off a guy named Joe Hewitt, who actually has a lot of insightful thoughts on the state of the web today (TechCrunch has a nice synopsis for anyone who hates trying to figure out twitter streams). One of his tweets linked to an incredible post, from which I stole my title. Here’s the punchline:
“The modern web had over 10 years to reach parity with desktop applications, and it couldn’t even hit that. Now it faces extinction as innovation in native applications accelerates.”
That hits home, doesn’t it? Most of the web apps we use aren’t REALLY being innovative, they’re just trying to emulate the desktop, and FAILING. Now that developers have the option to write applications on a way better platform, why wouldn’t they? Apple knows it, developers are figuring it out, and what’s more, if you take a few minutes to think about it, you know it too.

Separated at birth? (by about 10 years)
At the moment, your internal monologue might sound something like this: “but what about HTML5, Al? Everyone will just use that when it comes out and then the web will be awesome again!”
If that’s what you’re thinking, you should ask yourself this: “Does HTML5 have native support for multi-touch? Or gestures? Or accelerometers?” (the answer in all cases is no). Apple’s development platform supports all of those features now. Flash will undoubtably add support for these features rather soon. HTML5 will add support for these features…when a committee decides that they belong (read: don’t hold your breath).
The fact of the matter is, HTML5 is just another platform (just like Flash, just like Apple’s development platform), and as a platform, it has its own pros and cons. It’s great as a baseline, but new features are added way too slowly for us to use it as the upper bound for functionality when we’re thinking of new apps to make.
So what do we do? How do we deal with all this platform war rubbish?!?
1. Use the right tools for the job. If your main goal is wide adoptance, use something like HTML. If your main goal is snazzy new features, use Apple’s dev platform. If you’re looking for something in the middle, go ahead and use Flash. The technology you use will depend on YOUR goals, and not the goals of Apple or Adobe. I actually believe that more choice is a good thing; there’s a better chance that there will be a technology which matches your needs.
2. Stop trying to support everyone. Find out who your target market is, and do your best to support them. If you’re building some sort of highly-interactive website for socially-connected users, I think it’s safe to drop support for users who don’t use javascript. On the other hand, if your website caters to the 60+ crowd, maybe you should think about not having javascript at all.
3. Vote with your support and dollars. At the end of the day, Apple and Adobe are both slaves to their customers. That includes the application developers. If you’re a developer that truly believes that Apple made a mistake in dropping Flash, then build your Flash apps and stop worrying about iPhone users. If you’re a user who MUST have Flash, then don’t bother buying an iPhone.
Conclusion: whether you’re a developer or a user, choice is GOOD. A platform that isn’t ubiquitous is not useless. At the end of the day, WE decide the future, not Adobe and not Apple.