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?"
Web apps are fun and all... Until my comcast tech decides to flip my interweb switch to OFF for 5 hours.
Then i'm glad i don't rely on ajax apps or anything to get work done. While corporate customers enjoy a level of reliability that the average home user doesn't even dream of, being chained to the internet, yes, being chained to hotspots or cell towers for mobile internet is a drawback that the average user can't consider.
While php and perl are great, people like to think they're somewhat self reliant, and relying on outside sources is good every so often, you don't hire consultants to do payroll for you.
The web apps are like consultants, you bring them in for activities that is too expensive to implement and are only needed for on demand, but you don't have them do mundane activities that you could hire someone full time and not lose money on.
Is it sad that I am more likely to recognize you and your posts by your sig than your name or UID?
I prefer desktop development. Web development gets frustrating with its nooks and crannies of brokenness. If standardized Javascript and CSS were as ubiquitous as C/C++/[anything else desktop], that might someday change... but probably not.
Turning coffee into code.
Haven't upgraded to notebooks yet? Laptop programming is so 2001.
WASTE - The Secure P2P
But for some reason I can't stand Web Development at all but *love* desktop applications. My coding of choice is C#.Net or Java and i've written numerous small but useful applications that are in use at my place of employment and a few former jobs. Most of these apps are networked and use client-server interactions, but only on the intranet, not out on the internet.
I am asked quite often though, "Well why don't we just stick this on a web page and then we can get it from everywhere!" and I usually demur some and note that we dont need it to when anyone on the intranet can get to it anyway and there is no reason for some of these apps (or data) to be accessible outside of the corporate intranet.
For some reason, I just don't like ASP.Net or PHP or JavaScript, i've written small interactive web things in them, but it takes me way longer to accomplish something useful on a website than it does doing a desktop application. I suppose this probably has to do entirely with familiarity, but I also hate how slow websites typically are when you do something overly graphical or complex, whereas it runs great on the desktop application locally.
"To strive, to seek, to find, and not to yield." - Tennyson
No, really, they do. They like solving problems. Having to implement the solution is the boring part, no matter how it's going to be done.
I wonder if I use bold in my signature, people will notice my posts.
You're never going to get the performance on the web (for most things) that you can running locally. Equally, while tools and frameworks for faking it have gotten a lot better, maintaining state is a pain in the ass on the web and generally is not on the desktop.
It's like when Java came out and some people said we'd never write C again. There are things Java is good for and has taken over, just as there are things web apps are good for and has taken over, but there is still a place for desktop apps just as there is still a place for C.
The kind of bold, sweeping statements made by this article aren't much more than flamebait in a pretty dress.
This web app stuff is a fad (I hope). It was really popular in the late 1990s as well. Eventually the weight of developing in the unreliable and limiting multi-purpose browser gets to be too much, and desktop apps come back into vogue. Ajax makes things a lot nicer than ten years ago, but people expect more as well. Some things can be done really well using Ajax but it's not the solution for everything.
iTunes is a dedicated desktop app that uses internet data intelligently, but Apple made a good choice not depending on a browser. Compare Google Maps to Google Earth, which is more responsive and flexible? And then there's the comparison of something like QuickTime or Windows Media players and the pseudo video players written in Flash with bad control responsiveness and limited functionality.
I develop two things for a living. I work on a server back-end, and on the web front-end. The back end is easy. It's all Java, it's fun to develop for (there is challenge in some things, for example).
Then there are tons of front-end things I do. I hate them. It's developing the same code OVER and OVER (since we basically make copies of some parts to be used numerous times) and the glue code always has to go in there and is a pain. Then there is the scripting. Besides making things display right (which is a pain across numerous browsers), there is the functionality. "We want a select all checkbox." "When you update this date, it should update that date, unless this date is before than date except when...". Javascript is HIDEOUS. Can we just replace it with Python or Java even PHP?
Our problems are all user based. The users want it to work like a desktop application, but want it to be web based. It should respond fast and do all this checking and such, but it can't be a real application. You should be able to move forward and backwards without things going weird (can be tough to do in the stateless-ness of the web) but it can't be a real application.
We want an application, but we want it to be web based. We want it fast, but it must be made in HTML and Javascript. Blah blah blah.
I would LOVE to do more desktop applications. I wish I could.
I wish users would get over this stupid "lets put everything on the web" stuff. There is a fair amount of what we do that I can see being web based (like most of the reporting type stuff external users use). But all the management stuff we use in house would be a much better fit to a real application than the web applications we are using now.
Please, PLEASE.... bring desktop applications into vogue. Java allows right-once-run-anywhere to just as high a degree as HTML/JavaScrpit, if not more. Takes less bandwidth. Can run much faster. Can do client side stuff easier.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
Web apps are great, except...:
Why not just leave the web to things that require the Internet and keep applications on the PC?
GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
I'll believe it when I see it.
Sorry, I just can't be optimistic about this. You shouldn't be, either.
Look - today's web browsers can't even really get offline web page caching right. We're about a decade into the WWW revolution, yet browsers still can't passively save all of our web accesses and show 'em to us again when we're offline. I'd love to have my browser cache all of Slashdot's articles, and BoingBoing's, and Fark's links, for later offline browsing... yet it can't do that. The best we can get is RSS, which, frankly, is crap... it's like Gopher in HTML.
If browsers can't tackle the very simple task of caching routine HTML for offline access... what gives you confidence that it will cache complex AJAX applets with even minimal usability?
- David Stein
Computer over. Virus = very yes.