Slashdot Mirror


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?"

14 of 233 comments (clear)

  1. You make few assumptions which aren't always true by mr_mischief · · Score: 3, Informative

    You assume that neither PHP nor Perl are being used to do desktop apps. Perl certainly is. Ruby, Java, Python, and several other languages are being used to do web development, too.

    In particular, it seems a shame to pigeonhole Perl. Using Perl and readily available libraries, one can develop console programs, GUI programs, daemons, or web apps. With Tk, SDL, OpenGL, WxWidgets, curses, GTK, Win32::GUI, or Prima, few languages have as many options for interface libraries last I checked. Just because Perl is very useful for web development doesn't mean it's not useful in other areas.

    In a fun twist, I had to develop an app that worked the same over the web or on a Windows desktop with no net connection and no installation. It's written in PHP and Perl with a little client-side JavaScript and runs an Apache+MySQL instance from CD. So it's a web app, but it doesn't require net access.

    And BTW, ADP (American Data Processing) and similar companies makes a lot of money doing payroll for other companies.

  2. Re:The real growth is embedded/mobile by fbjon · · Score: 2, Informative

    Don't forget resource-intensive apps like Photoshop, any 3D modeling, music&audio, and so on. There's lots of people making those, and they require a personal computer.

    --
    True confidence comes not from realising you are as good as your peers, but that your peers are as bad as you are.
  3. Yes, I HATE desktop development... by Nedry57 · · Score: 3, Informative

    For two primary reasons: 1) Installers. Writing installers sucks. The MSI "standard" is a bloated piece of crap, Installshield and Wise are ridiculously hard to get along with, and NSIS is a little too primitive (although by far the best installer platform I've found). You have to test the installer on every platform, ending up with stupid little quirks on Vista and x64 platforms. It's a nightmare, and patching/updating is a whole different nightmare. In the real world, there's no such thing as simple XCOPY deployment. At least for shrinkwrapped apps. 2) COM Interop. The Win32 API and COM combined is the crappiest piece of crap that ever crapped. I have nightmares about being forced to use Interop because they left out some trivial and silly thing from a WinForms control. I am speaking quite literally in saying that I have had nightmares. Seriously. I know, I know, working in Linux probably makes both of these problems more tolerable, if not completely invisible. But some of us must work in Windows. C'est la vie. I would take ASP.NET, or PHP, or Ruby, or Python, or any of those over crappy desktop Windows programming any day of the week. I'll even accept multiple-obscure-browser testing over COM Interop and installers.

  4. Re:You make few assumptions which aren't always tr by Anonymous Coward · · Score: 1, Informative

    And BTW, ADP (American Data Processing) and similar companies makes a lot of money doing payroll for other companies.

    As a matter of fact, I work for ADP, and one of the training videos I watched as part of my orientation said that ADP was founded precisely because doing payroll in-house was not always reliable. Basically, the founder of ADP knew of a company where the person in charge of payroll got sick, and no one else at the company knew how to do it. So they had to struggle to figure it out, and it became a great big mess with people wasting a lot of time to figure it out and employees getting angry about not being paid. Thus was born the idea of outsourced payroll, with the appeal being that payroll is outside most companies' areas of expertise, so it's simpler to just let a professional handle it.

    So ADP was founded on that idea. It also helped that this was in the 1940's and most businesses couldn't afford machines to do the calculations easily themselves, whereas a company that specialized in payroll could easily afford to buy mechanical calculating machines (and later, electronic computers) to crunch the numbers way more efficiently than a regular business could do it. It's hard to relate to this today, but even in the 1970's, a simple 4-function calculator cost about as much as an entire laptop computer does today (without adjusting for inflation!) so those expenses were not insignificant.

  5. It's not hate, it's headaches. by WoTG · · Score: 4, Informative

    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.

  6. Re:the problem with google apps by The+Bungi · · Score: 2, Informative
    you don't hire consultants to do payroll for you.

    Actually payroll is one of the most outsourced corporate functions, by far.

  7. Re:I don't see desktop apps ever going away entire by Koen+Deforche · · Score: 2, Informative

    Quote: "Maintaining state is a pain in the ass on the web and generally is not on the desktop."

    You must not have heard of libraries like echo2 or Wt for doing web development. They have the same API as desktop GUI libraries.

  8. Re:The real growth is embedded/mobile by Dogtanian · · Score: 3, Informative

    Ha ha... knew someone would mention that as soon as I heard mention of PS. I'm willing to bet that the online "Photoshop" will be extremely limited and wizard-based; at best it will use the core PS engine. I'm not saying it'll be bad, but it certainly won't compete with the full PS, nor even Elements; in fact, I doubt it'll even be as sophisticated as the now-defunct Photo Deluxe (a nice, but very limited PS-based product).

    --
    "Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
  9. Re:Firefox 3.0 by Anonymous Coward · · Score: 2, Informative
  10. Re:Firefox 3.0 by dk.r*nger · · Score: 5, Informative

    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.


    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.
  11. People hate WINDOWS desktop development by metamatic · · Score: 2, Informative

    From reading the answers, I think the true statement is that people hate developing desktop apps for Windows.

    The crufty GUI code, the horrible installers, the COM string and duct tape, the .NET version hell, all that stuff is specific to Windows development.

    Mac OS X application development is almost a pleasure in comparison. Even Java and Swing is nicer.

    Having done Windows, OS X, Java and web app development, I'd definitely pick Windows as my least favorite. But I'd take OS X or Java over web app development any day.

    --
    GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  12. Re:I don't see desktop apps ever going away entire by Mongoose+Disciple · · Score: 2, Informative

    I'm familiar. They do simplify state maintenance to a point and are appropriate for a lot of different things you could do with a web app, but I think you're kidding yourself if you don't think there isn't extra thought/work involved there and some extra performance concerns that you wouldn't need to have with an equivalent desktop app.

  13. Re:On-line Photoshop-alike by tigersha · · Score: 2, Informative

    The problem, yet again, is that "getting close to the simpler end of Photoshop" is saying that the TEXTAREA box in Firefox can compete with Indesign and solve all you typesetting needs.

    In a word, no.

    --
    The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism