Monday, December 1, 2008

Web apps vs Desktop Apps

I think figuring out which is better between web-app & desktop app depends strongly on the deployment environment. I think in the end, it is a balance between control on one end, and standards at the other end, I'l explain.

If you have a lot of control over your deployment environment (ie, you know it's going to be 100% windows vista, or 100% Java6 or whatever platform of your choice) - you can choose to develop a solution as a desktop application.

If, however, you have little control over the deployment environment, web applications would be more relevant, as they cater to the least common denominator (valid HTML over HTTP at the least). Because of these standards, your application doesn't care (or shouldn't) whether the user is using IE7 on XP, Firefox on Mac, Opera Mini on a mobile phone or IE5 on Win98.

Some of the disadvantages of web-apps are not always present, for instance speed/availability when the server is running on a local LAN.

My favourite advantages of web applications
1.Deploying a web application is trivial - simply dragging a shortcut to desktop
2.Allows for more fluid deployment cycles - incremental development is effortless

I'm going to turn the security argument on it's head: say you want to convert a WMV video clip to a MPG format: Would you rather a) Download an video_coverter.exe executable by some guy in Russia or b) upload it to a video conversion website & download the converted file? I know my example is a bit contrived, but i wanted to show that the advantages of web-app/desktop-app depend on the scenario.

There are certain things web-apps can't do, obviously (like Printing & accessing local files in a directly). But for me, if there is a problem that can be equally solved by a desktop app or a web-app, i'l choose the web-app every time

No comments:

Post a Comment