Jaa


Client or the Cloud?

Paisano writes a punchy post about the death of desktop apps that I commented on and I wanted to share a bit more insight into where we’re taking the concept of Mesh in order to solve some of the problems that he identified.

Whilst the browser is great for some types of apps like collaboration, sharing, broadcasting it’s far from perfect.  The number one problem is speed.  A browser is slow.  Why do you think Google have been trying so hard to speed up their JavaScript engine? No matter how much tweaking they do they’ll always be slower though.  Client apps, i.e. ones that can harness the power of the device they are running on are much quicker, have richer experiences and can do things the browser simply can’t, utilize multi-core for example.

Look at Twitter, quite frankly their website is poor.  It’s constantly broken, slow, yesterday I tried to register an account – I got the fail whale.  Not good.  How then, are they so successful?  Why do people continue to use Twitter?  It’s about the APIs and the way you can develop applications on their service.  TweetDeck has been very successful because it provides a better experience for the service than anyone else – far better than Twitter.com even.  Could you build a website in AJAX that was as slick as TweetDeck? No, because the app has the browser in the way of that computing muscle.

When the walled gardens fall as services become more open and data portability becomes the norm, the one true differentiator will be user experience.  If I can get a better user experience on a client application then I will use it, period. 

image

Now, onto the second gripe.  With desktop apps (Silverlight 3, Air, WPF, Native etc) you have to install and configure them individually on different machines.  He’s right this is a pain and another example is when you blow away your machine and reinstall the OS.  After this you have to install all your apps and configure your settings to get back to the way you had it before.  This is time consuming.  I want to be doing other stuff instead!

This is where Live Mesh and Live Services (the underlying services for developers) comes to the rescue.  The premise behind Mesh is that people have data, applications, devices all over the place.  As the device explosion continues, keeping applications and data that people care about close to them is going to become increasingly difficult to do. 

Mesh makes that happen by providing applications that run online or offline, sync both user data and app settings between devices and the cloud, and leverage the local device’s horsepower to provide a rich user experience.

Comments

  • Anonymous
    January 01, 2003
    PingBack from http://www.charged.co.za/software-technology/client-or-the-cloud

  • Anonymous
    April 10, 2009
    Thanks for commenting on my post, sharing it and continuing the conversation. I agree it was a punchy post or at least I was when I went on that rant lol. I still stand by my main points of contention but agree that the browser as it is today isn't the answer either. I love what I've seen and tried with Microsoft's Live services including mesh. I also like silverlight more than Adobe Air. Anyway, the key should be to make re-installation as simple as possible. If these developers for desktop apps for webs services could include a way to store configuration files in the cloud then that would go a long way. We shouldn't have to reinstall and setup everything all over again on the same computer or on other computers. We also shouldn't have to jump through hoops to do so. For example, I know I can save tweetdeck's config file via dropbox then back down to other computers in order to have the same setup and groups on all computers but it's such a manual and tedious method. This can and should be seamless and automated. Technologies such as Live Mesh gives us hope that the distinction between web and desktop app will someday become impossible to tell. Pai