I think this prototype of an open web app system from the folks at Mozilla is quite interesting. First thing to note is that it works currently on Android and iPhone devices even in the prototype version they have up. Not mobile specific rendering on some Android devices, and there are a few issues with links in overlays, but the core is working.
Lots of folks have been pining for a system that mashes together the best parts of the app store model with the good parts of the web. There’s lots of stuff that doesn’t work so well with the app stores (someone else telling you what you can release, having to filter all your releases through someone else in order to get them out to market, a lack of crosslinking and organic discovery). But the app stores have managed to provide a level of success in mobile that’s also pushed the boundary quite a bit. They provide payment mechanisms that seem to work much better for developers than previous attempts have, and they’ve gathered together a critical mass of users so that the folks who do see success see it at a significant level. We’ve gone through the native apps vs web apps argument in the past and touched on the app store vs web distribution issues as part of that.
So as far as putting a stake in the ground and trying to move us toward that model of app development, fantastic! Happy to see the effort. There are some parts I need to poke around with a bit to understand better. There’s a section about mobile usage that touches on offline applications, which I think is going to be one of the most major issues. It’s not immediately obvious to me if we could get apps installed via this mechanism to appear as icons on the iOS homescreen. Folks like OpenAppMkt have their method, which seems to be detecting the launch type and asking the user to install the app by walking them through the web clip process. I’m assuming the same process would need to happen for offline use of apps installed in the dashboard? So far I haven’t seen how the AppCache handling would be triggered by the manifest install, though maybe that’s just my ignorance of the AppCache. If there is some magic that happens there it would be great to see in the demo. An offline friendly dashboard and example app or two would go a long way to exemplifying the utility of the system from the mobile end at least.
I’m struggling to understand what’s going on in the AppClient code, there’s stuff going on in there I’m just not familiar with yet. I think it’s cross-document messaging, but I need to do some more studying before I’m sure. The distinction between authorization URL and the web app URL is kinda bugging me. It means I’m not necessarily buying an app when I perform a paid download, I’m licensing right to an app from a particular store. Not exactly the model I think we want to end up with. But then again, we don’t really have an alternative to compare it to that works in a distributed fashion like this.
So, awesome start, looking forward to seeing this evolve. Now I definitely need to step up updating myself on web tech, horribly behind.