I like this theory, but would propose a variation:
The problem isn't necessarily that mobile devices aren't powerful enough to run browser-based apps. The problem may be that browser-based apps suck for other reasons. There are really only three ways to build one:
Plain old HTML pages over HTTP, with optional CSS. As has been said many times over the years, this is the IBM 3270 model with additional chrome.
Flash. Proprietary. Resource-intensive. No UI standards.
Javascript/AJAX. Better than it could have been, but relatively slow (modern JS interpreters are faster by leaps and bounds, but as usual their deployment rate is limited by the existence of IE), confusing to program, no UI standards, relatively poor tools (witness the recent complaints about Firebug), an evolving diversity of frameworks and practices that will take time to sort out. (The term AJAX is not yet five years old, and this stuff doesn't happen overnight.)
These problems, which have existed for years, have led some to predict that desktop apps would experience a resurgence. By and large, this hasn't really happened, because though many desktop apps are great they still suffer from some big problems: They're hard to install and keep updated (not as hard as they used to be, but the gold standard here is now the iPhone App Store) and they're dangerous (click on a phishing link that installs an app and you'll belong to someone's botnet).
The iPhone platform succeeds because: installation is a breeze, security is not much of an issue (every app gets screened by Apple; trojan-horse apps will, when discovered, be unceremoniously tossed out and their developers blackballed); there's a critical mass of customers that are on the same platform and using the same interface; there's a fairly coherent set of UI standards and practices as demonstrated by Apple's own apps; there's the full power of a native development language, platform, and environment that has been refined for years by dedicated engineers at Apple and NeXt.
I'm still not convinced that the iPhone platform will grow to the point that it poses a serious challenge to the freaking web. But the possibility exists. We'll see how well Palm succeeds in using web standards to sell mobile devices. We'll see how well and how quickly the browser platform continues to evolve.
I agree with many of your points. It is possible downloadable apps (such as in AIR, Silverlight, or just C/C++ apps built via direct code or cross compiled from a higher level language) will gain more traction that are just web enabled on the desktop (twitter apps for instance). It is nice to access the file system and rendering pipelines (which is needed for mobile apps since they are slower) but this also leads to a fragmented development platform.
I do believe that the ability to type in a URL and browser back and forward was a huge "killer app" feature of browsers. Not to mention the dream of combining media types into a sort of super information system with pages of all types of content.
Like you pointed out though, many of the features of the browser on the desktop seem to parallel those on the great iPhone/touch system and screen that has the same echo of that desire for information and media/games/applications. It is really fast and the updates are fairly simple now on the iPhone so it provides the user much of the same experience that the browser did and does.
The problem isn't necessarily that mobile devices aren't powerful enough to run browser-based apps. The problem may be that browser-based apps suck for other reasons. There are really only three ways to build one:
Plain old HTML pages over HTTP, with optional CSS. As has been said many times over the years, this is the IBM 3270 model with additional chrome.
Flash. Proprietary. Resource-intensive. No UI standards.
Javascript/AJAX. Better than it could have been, but relatively slow (modern JS interpreters are faster by leaps and bounds, but as usual their deployment rate is limited by the existence of IE), confusing to program, no UI standards, relatively poor tools (witness the recent complaints about Firebug), an evolving diversity of frameworks and practices that will take time to sort out. (The term AJAX is not yet five years old, and this stuff doesn't happen overnight.)
These problems, which have existed for years, have led some to predict that desktop apps would experience a resurgence. By and large, this hasn't really happened, because though many desktop apps are great they still suffer from some big problems: They're hard to install and keep updated (not as hard as they used to be, but the gold standard here is now the iPhone App Store) and they're dangerous (click on a phishing link that installs an app and you'll belong to someone's botnet).
The iPhone platform succeeds because: installation is a breeze, security is not much of an issue (every app gets screened by Apple; trojan-horse apps will, when discovered, be unceremoniously tossed out and their developers blackballed); there's a critical mass of customers that are on the same platform and using the same interface; there's a fairly coherent set of UI standards and practices as demonstrated by Apple's own apps; there's the full power of a native development language, platform, and environment that has been refined for years by dedicated engineers at Apple and NeXt.
I'm still not convinced that the iPhone platform will grow to the point that it poses a serious challenge to the freaking web. But the possibility exists. We'll see how well Palm succeeds in using web standards to sell mobile devices. We'll see how well and how quickly the browser platform continues to evolve.