The Mobile Web
We web people always come up with complex reasons for the web’s failure on mobile - technology (“if only we had a camera!”), openness of the ecosystem, or number of developers for example. All of these are head fakes. A sort of ‘if we build it they will come’ attitude that tech people are prone to when they need to justify tech they have fallen in love with. 
The real reason is much simpler but harder to accept: consumers just don’t want it.
The average session length on a phone is 4 minutes. In such a short session, the time it takes to navigate to a web app and wait for it to load can use up 25-50% of your session time. Whereas a well built native app can be found and launched in a few seconds.
Native apps are simply more convenient than web apps; they fit better with how people actually use their phones. There are other benefits as well - many of which could be easily fixed, such as memory management or device access - but the high order bit is speed.
Ultimately all great technology innovations are driven by consumer demand for convenience. If you have consumer demand, technology, developers, all the other things we worry about will follow suit.
Does this mean the web can never win? Hardly! But this framing gives us a much better way to think about when and how the web might win once again.
If native apps are more convenient than the web today, in what ways are they not convenient? One obvious issue is the time it takes to find install the app before you can use it. This is particularly painful for transactional-based activities such as shopping, news, or buying services.
This is an area where the web - at least in theory - should be able to win because apps don’t need to be installed first.
However, it can’t be through a web browser. The cost of navigating to these services is simply too high.
This is why I am interested in services like Google Now - which offer a form of passive discovery that have the potential to eliminate the navigational cost of the web. It’s not a complete solution, but a step in the right direction.
It’s easy to imagine a world in the future where task-oriented applications can be consumed on demand instead of installed first - perhaps downloaded in the background before you actually need them by a discovery service that pays close attention to your current context and predicts your future needs.
This is the way the web will eventually win - not as the web as we know it today - but in the form of a new product that is more convenient than native apps today for certain activities.
Initially the apps will probably suck compared to their native counterparts. And maybe only a few people will know how to build them. The service may be open or not. It doesn’t matter to consumers - as long as it’s the fastest, most convenient way to get things done on their phone - they will demand it. The rest will follow.
1. I am guilty of this too. See my previous startup [Strobe] and many years of efforts to build native-style apps in the browser.
2. Incidentally, this also explains why the web is more useful on tablets. Tablet sessions are twice as long and more more discovery oriented. For this type of usage, the web is more competitive.