Before I start I should be clear that nothing I’m about to say is an official Microsoft comment or Microsoft views. It’s just my musings. I’m taking off my Microsoft hat for the time being.
It’s interesting to me to see the rise of apps (do we have to abbreviate them? Why not “applications”? Perhaps that’s another story) and how they compare to websites. Or, I suppose more accurately, I’m talking about information and functionality being delivered via an app as opposed to a website. The important point here is that while we tend to think of apps and the web as separate things, they are in fact fairly similar in terms of what they do from the user’s point of view. What I mean is that the end result is the same – that is, that they deliver some discrete value to you. They just go about it in different ways.
Now I’m sure everyone is pretty clear on what an app is, and what a website is, so bear with me for a bit because I still think it’s worth being really clear on the difference. As we all know an app – eg on a phone, or a tablet, or a PC – works like this (forgive the oversimplification): The developer writes the code, compiles it up, and it gets delivered to the target device, usually via some kind of store. When you launch the app it loads in its entirety and executes on the device, making calls across the network as required. It also interacts with the device eg using the camera, or responding to touch or mouse events, etc.
Why does any of this matter? Because we have become used to thinking in terms of apps and websites as if they are completely separate things that present themselves to us in a very different way. However as HTML5 becomes more sophisticated, and internet access becomes faster and more ubiquitous we are likely to see a significant blurring of the app/website difference.
Today, there are clear advantages to both approaches:
I don’t know if this is the way things are going to go. Will we see a gradual drop-off in apps over the next few years and a move towards web-apps? Or are apps here to stay for the long term?
I’d love to hear your opinions.
Well first off you are right web apps are great, I preach it all the time. But web apps can run offline just like native apps. You should look into leveraging the appcache. It's not exactly perfect but can be used to facilitate offline usage. See Steve sliders blog for more info on quirks. And for the record most native apps don't seem to understand offline mode anyway.
Hi Chris - agree that in some cases web apps can run offline but in my experience the process isn't as smooth and seamless as it could be. But it's a fair point, thanks.