People Don't Hate to Make Desktop Apps, Do They?
Annie Peterson writes "Paul Graham has been making the argument that desktop development is dead — That's his premise for declaring Microsoft dead as well, and he claims that no one out there likes to develop for the desktop anymore. But that's not true, or is it? Desktop development is easier, faster, more productive, and infinitely more enjoyable — right? The question is, since web apps were originally built on desktop applications themselves, have the tables flipped? Or is it just wishful thinking?"
If it's technically possible to choose either a web based app or a desktop app, I would pick the web every time.
Tech support sucks big time. It's far, far, far easier to maintain, upgrade, distribute a web application than it is to manage a desktop application. A couple major web browsers and a couple major plugins pretty much covers every testing and support situation that you will face -- especially for intranet type situations.
For desktop situations there are a million variables: installers, bugs, spyware, permissions, operating systems and versions of OSs, non-existent user backups, differing service pack and patch levels... the list goes on. Most of these really aren't your problem as a software developer or publisher, but in reality, they often become your problem. That's in addition to the nightmare of supporting different versions of your program.
If the web can be applied to a situation, there should be no surprise that people will develop for the web.
I'm not sure why I should adjust my expectations to technology according to your misuse of technology.
Todays browsers don't get offline caching of Slashdot right, because Slashdot is an online application, and says so:
HTTP/1.1 200 OK
Date: Tue, 10 Apr 2007 12:48:30 GMT
Server: Apache/1.3.37 (Unix) mod_perl/1.29
SLASH_LOG_DATA: 07/04/10/011220
X-Powered-By: Slash 2.005000152
X-Fry: I don't regret this, but I both rue and lament it.
Cache-Control: no-cache
Pragma: no-cache
Vary: User-Agent,Accept-Encoding
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
In order to read Slashdot offline "right", you need to break HTTP. And we all know what happens to naughty boys who breaks standards.
Offline webapplications will work offline because they will be designed to work offline. They will get safe caching of resources and a stateful browser-DOM-object to save data to. It's not exactly rocketscience.