I say HTML5. App Stores are great but they will change dramatically over time to direct delivery from the developers. Developers themselves will use HTML5 so they can break the dependence on App Stores and the distribution fees associated with them.
When Apple originally released the iPhone all applications were supposed to be network based. There was a big hue and cry until Apple relented and allowed developers to develop directly for the phone.
With the evolution of technology it is time to go back to the original direction of the iPhone. The real benefit will be that they will not have to develop for any specific phone and can support any and all of them with one application.
That is the real goal of any developer.
One thing going on the background here is that the underlying technology for browser apps to compete with desktop apps is still pretty raw. HTML5 gives you local storage, but that’s a new technology. What do you use it for? Do you sync it with an Oracle backend? How do you resolve conflicts between the local data and the cloud data? Not that this kind of problem is unsolveable, but that the technology is immature.
6 thoughts on “HTML N vs local apps”
I’m thinking about using HTML5 to build a desktop application I can run as a portable app from an usb stick, provided I have a portable Firefox on it – the alternatives could be go native or using Java or AIR but withou installing runtimes it is difficult – the only problem I would have to solve is really datasync with a remote store when online
Any thoughts on how you’ll resolve the datasync?
The problem set is a lot like source control. CVS? SVN? Git?
In the late 1990s / early 2000s, I did a lot of remote database replication / sync web applications with Sybase database products that were quite mature and excellent. You could actually do syncs on web files (e.g., between local sites running on laptops and sites live on web) by storing web assets in the database.
And, I imagine that the techniques and policies used by those Sybase apps are what people are going to have to recreate for really robust HTML remote storage.
I am sure some frameworks ala jQuery will eventually come into being that let you just set some parameters in a JS config file, and have it handle everything.
But, until then, people will need to figure out partitioning of data, and which partitions sync in which directions (cloud to remote only, two-way, remote to cloud only).
And then there are some partitions that can be state-based-sync’d (just sync to current state–this is like what a VCS does) while others might have to be transaction-based-sync’d (replaying all of the non-sync’d transactions, in order).
And, then of course, you also need a conflict resolution mechanism and error correction for failed syncs!
The “real goal of any developer” is to build awesome apps they’re proud of and making a living doing it.
Beyond the technical capacities of native vs. web apps, I think we underestimate the value of the ecosystem of small app business that Apple has created with the store.
Sometimes the web makes things free as in “liberated” but sometimes it makes things free as in “worthless”.
I don’t want to turn into a closed source anti-freedom reactionary, but there’s got to be some place in here for a business model for app makers.
What could we put in HTML5 that would support that?
So far, the only one I’m seeing is in B2B or Geek2Geek plays like Salesforce and GitHub. Everything else is venture capital pump-and-dump bullshit.
Greg, did you ever come across http://micropledge.com ?