Slashdot Mirror


Windows Loses Ground With Developers

An anonymous reader notes that InfoWorld is covering a survey of North American developers that claims that Linux is gaining share as the number of developers targeting Windows fell 11 percent over the last year. Evans Data has been conducting these surveys of client, server, and Web developers since 1998. Evans Data says that the arrival of Windows Vista likely only kept the numbers from being even worse. The big gainer wasn't developing for a Web platform, but rather for Linux and "nontraditional client devices." Windows is still dominant, with 65% of developers writing code for this platform. Linux stands at almost 12%, up from 8% a year earlier. The article says that Evans Data collected information on Mac and Unix development but did not include them in this year's report.

20 of 431 comments (clear)

  1. Ob.. by grub · · Score: 5, Funny


    ObSweatTardLink: Developer Music Video

    Awesome.

    --
    Trolling is a art,
    1. Re:Ob.. by PopeRatzo · · Score: 4, Interesting

      The migration of developers away from personal computers toward "nontraditional client devices" worries me a bit. The best thing about the rise of the PC was that it gave people access to a machine that could be configured to do a lot of different things, including "learn about making your own applications". I wonder whether all the "embedded devices" will also provide a coming generation with a platform from which to recreate their world the way PCs did for us.

      I love the Mac interface, but the thing I always loved about Windows was that it forced me to look more closely at what was going on than I may have wanted to. And that exploration of the nuts and bolts of an overcomplicated desktop OS gave me insights that I may never have gained had I stuck with the more opaque Mac OS. Of course, for those who want that experience today, Linux has it in spades. But as much as I loathe Vista and the company that has trumpeted this abomination on us, I'm glad that I had to learn about a "registry" and I'm glad I had to learn about shared libraries and memory management.

      As much as I'm sure that the devices that will contain embedded processors will provide us with utility and convenience, pleasure and all varieties of entertainment, I hope that the idea of an all-purpose, configurable, expandable box with a keyboard and operating system doesn't go away any time soon. And I hope that developers continue to create tools for us to use on those boxes.

      --
      You are welcome on my lawn.
  2. Client vs. Server Applications by chris098 · · Score: 5, Interesting

    I'm guessing the majority of the applications written to target Linux are server applications. It would be interesting to see if this can be explained by a result only in the server application space, or if more client applications are also being targeted at Linux. Of course, in order to find that out, one would probably have to pay to view the full report.

    1. Re:Client vs. Server Applications by fyngyrz · · Score: 5, Interesting

      We don't do server apps, and we considered linux quite seriously.

      We have abandoned windows as a development platform, but it wasn't linux that replaced it, it was OSX. Linux's lack of a standard GUI layer in the OS - modern menus, buttons, lists, even windows - is the primary issue for us. There are lots of things that are very attractive about linux, not the least of which is a large user base that we think would have an interest in some of the things we can offer, and so we do keep an eye on what is going on. But there is a long history of independent widget development projects with quite a range of capabilities, licenses and corresponding legal issues, and in some cases, prices for commercial use; there's no certainty there will ever be a standard graphics layer. In my opinion, which is only one fellow's outlook (though I do control my company's direction) this is a key factor.

      Both Microsoft and Apple have some pretty nice interface builders; that'd be a factor too, presuming that the embedded graphics eventually gets past xwindows and user-land layers on top of it. And by the way, I'm not advocating any of that be dropped; just that a standard be added to the OS that anyone can use in any way without any issues, just as one can use the fopen() call and know it'll be there and neither legal nor accounting will have to be called because the call was used.

      --
      I've fallen off your lawn, and I can't get up.
    2. Re:Client vs. Server Applications by jimstapleton · · Score: 4, Interesting

      I typically use QT as it works in just about anything.

      You can use GTK instead if you like. Or if you want something that works in anything, but looks different every version, you can always use WX.

      Add in a platform independant language like Python if your application is not extremely intensive (and sometimes, even then), and you have an extremely nice setup for anyone to use.

      And QT has a very modern (and more importantly, customisable) look. It comes with a little app, and you [the user], can set GUI appearances that the developer left as default, to look like Windows, MacOS 9, MacOS X, and QTs native, amongst others. It also pulls the system default colors for various field types, which is extremely nice.

      --
      34486853790
      Connection too slow for X forwarding? Try "ssh -CX user@host"
    3. Re:Client vs. Server Applications by LWATCDR · · Score: 4, Insightful

      "Linux's lack of a standard GUI layer in the OS - modern menus, buttons, lists, even windows - is the primary issue for us."
      It shouldn't be. The solution is really simple
      Qt if you are going to GPL your code and want to code in C++
      Qt if you don't want to GPL your code and code in C++ just pay Trolltech for the none free version.
      GTK if you want to code in C or C# GPL or not since you can use it under LGPL.
      GNUStep if you really want to use Objective C and don't mind being different.

      I mix Qt and GTK apps at will on my Linux desktop. For many applications your choice between GTK and QT really doesn't matter. Okay I hate GTKs file dialog Qts is a lot better IMHO but even that isn't a really big issue. I use Eclipse CDT which uses SWT-GTK for it's interface on Suse 10.1 running KDE. No big problem.

      The lack of a standard windowing tool kit just isn't a big deal. Frankly I suggest just going with QT and then you can make your code run on Windows, Mac and Linux with very little effort at least as far as the UI goes.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    4. Re:Client vs. Server Applications by Srin+Tuar · · Score: 4, Insightful

      Wow, that is an amazingly uninformed post.

      X-windows together with any of the popular graphical toolkits is every bit as fast as windows GDI primitives, and very similar to what apple's DPS does to draw widgets. The old fashioned integration of graphical primitives directly into the operating system is exactly what everyone is trying to get away from, as it tends to make everything suck. Take one look at beryl and youll see the future of eye candy is going to be coming from the free software camp.

      Now, in addition to that, you are taking the licensing issue 100% backwards. With any OSS toolkit, the terms and source are 100% disclosed, and many times simpler than proprietary licenses. The toolkit you choose will be around forever as surely as if you own it yourself. I don't suppose you have ever read one of MS or Apple's EULA's, but to sum them up you are essentially placing yourself and your company at their mercy when you develop for their platforms.

      If your reason for choosing proprietary products is because you plan to make proprietary products, that at least would make sense. But keep in mind that the product model for software is receding into history, and you may need a change of business model in the forseeable future.

    5. Re:Client vs. Server Applications by Cyberax · · Score: 5, Interesting

      No, you can't (effectively).

      You can have your code under BSD license, because it's less restricting than GPL. But if anyone tries to use your application as a part of a commercial closed-source project, then they will be violating _GPL_ license of QT. Which, sort of, defeats the whole purpose of BSD license...

      You can have QT in BSDs without GPLing the whole thing because of the 'aggregation' clause in GPL.

  3. Perhaps Its just gotten easier.. by cybrthng · · Score: 4, Interesting

    I know more "indy" developers that code irrespective of the platform. Programming is just different these days - what took an entire staff can now be done efficiently with just a few. Is the market downsizing or has growth in the field shrank or is it more platform agnostic? How do you determine a windows coder vs a universal or only a linux/unix coder?

    Windows has some of the best tools out there - software as a whole has matured to a level that there hasn't been anything "new" and its been mostly upgrades. No wonder the market has shifted. Just because there are more developers in other environments, doesn't mean the market has dried up, just that it has matured.

  4. Linux is not another Windows by mcrbids · · Score: 4, Insightful

    What we're seeing here folks is a diversifying technological ecosystem. Windows does not "fit all", and neither does Linux. (Though arguably, Linux does fit lots more than Windows does)

    Linux will never replace Windows, because nothing else ever will. Windows is an artifact of a time when having a single platform was more important for development than having the best platform. Now that the industry is maturing, the needs are rapidly becoming commodities behind standards-based interfaces (TCP, XML, etc) while the platform itself is becoming less and less relevant. The Internet met a need that Microsoft simply couldn't provide, and now the cat is out of the bag. Vista is Microsoft's attempt to lock users in before erosion gets too bad, and it's pretty evident how well that's going.

    Windows' market share will slowly erode, slowly being beaten by an increasing number of products, services, and wares on an increasing number of platforms.

    Go standards!

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
    1. Re:Linux is not another Windows by quanticle · · Score: 5, Insightful

      We are far more productive just sticking to one set of code for one platform, because there are no good languages out there that work for any platform.

      Excuse me for being naive, but why not Java? Its not like Java carries any performance penalty as compared to C# - both are JIT compiled languages that are run by a VM. Java has excellent developer tools as well: both Eclipse and Netbeans have matured as IDEs.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
  5. Linux is a better target for new developers. by jellomizer · · Score: 4, Insightful

    Windows is satrated with third party apps. Anything you do for windows will most likely compete with someone elses program and you will have an uphill battle to get adoption. Linux there is a huge gap of programs that it needs allowing programmers a better chance to get a good foothold as a key app. Or the more ambition the next killer app. Making software for windows will either be medocre at best (In terms of sales) or if it is a really good app Microsoft will make a clone of it and imbed it into windows so you don't have a chance of competing, or discredited for some other application. Linux apps have a better chance of getting some staying power and your new app may get some ground.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  6. .net anyone? by hxnwix · · Score: 4, Interesting

    By day, I code in WTL, Win32API and (regrettably) MFC. Like a great many, I wonder whether .net is pushing developers away from Windows.

    This mess is drawing Microsoft's attention away from the C/C++ layer, where it's sorely needed, and into what, as far as I'm concerned, is comparable to Visual Basic. Put simply, neither my employer nor I are interested in writing in a proprietary, bytecode-interpreted language. If we have to abandon our C/C++ investment, it certainly wont be for a proprietary java knockoff. It will be for the real thing, allowing us to slowly drift away from Windows.

  7. Blowing off VB6 burned some bridges by Maxo-Texas · · Score: 4, Interesting

    The way Microsoft ended Vb6 with no easy upgrade path to .net both irritated developers here and stranded some of them in vb6 with no path to .net. Some of them trained to java (tho they would have preferred .net).

    --
    She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    1. Re:Blowing off VB6 burned some bridges by dedazo · · Score: 5, Interesting
      Partly true. In my personal experience the vast majority of VB6 developers are using... VB6, actually. Which is why the VB6 IDE is supported under Vista, but Visual Studio 2003 is not.

      The lack of a clear upgrade path from VB6 has forced companies to hold off on porting, upgrading or even replacing "legacy" VB apps for a lot longer than they otherwise would. The standard average lifecycle for a LOB app in most corporate environments is about 3 years. We're going on 5 now, and unless Microsoft pulls a rabbit out of the hat somehow, these people are probably not going to go to .NET. They'll go to Java or some other technology, at least those that have the option, because some don't. Microsoft has made it really hard for a lot of folks and they're going to end up paying for that in the long run.

      Microsoft squandered the mine gold that was the enormously huge VB developer base. They should have released a follow up to the COM-based VB6 platform with improvements and provided a clear timeline for the jump to the .NET CLR. Instead one day they just announced VB6 was dead, being replaced by something that is arguably better but completely incompatible, at least from a practical standpoint.

      --
      Web2.0: I love when people Flickr my cuil and digg my boingboing until my google is reddit and I start to yahoo
  8. Different niches by athloi · · Score: 4, Interesting

    For mainstream and corporate software, Windows may continue to rule, but the biggest leaps I've seen in development have been in the niches where Linux has prominence. Audio, networking, manufacturing and server-side work is booming for Linux.

    In a perfect world, this article would distinguish between development "for pay" and all development.

  9. New Ballmer Chant by Junior+J.+Junior+III · · Score: 5, Funny

    Developers! Developers! Developers! De-- hey where'd everybody go?

    --
    You see? You see? Your stupid minds! Stupid! Stupid!
  10. Re:Nice but worthless data by swillden · · Score: 5, Insightful

    If I carefully pick my 400 to survey I could post a completely legit survey

    If you carefully pick your 400, your survey isn't legit.

    --
    Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  11. Developing for Linux is just easier. by Dr.+Manhattan · · Score: 5, Interesting
    One of the reasons that Windows has the kind of IDE and debugger support that it 'enjoys' is because it needs it. Developing for Windows is nearly unmanageable without that kind of support. The Windows API is huge, complex, only occasionally and accidentally orthogonal, and in my experience mostly very poorly documented. I'm not the only one who thinks so:

    "Today we are ready for the official release of the .NET Framework 2.0. Tabulating only MSCORLIB.DLL and those assemblies that begin with word System, we have over 5,000 public classes that include over 45,000 public methods and 15,000 public properties, not counting those methods and properties that are inherited and not overridden. A book that simply listed the names, return values, and arguments of these methods and properties, one per line, would be about a thousand pages long.

    If you wrote each of those 60,000 properties and methods on a 3-by-5 index card with a little description of what it did, you'd have a stack that totaled 40 feet."

    Meanwhile, the entire POSIX spec, suitable for fully implementing a POSIX system including the utility apps, with commentary and rationales for design decisions, fits in about two and a half feet of binders.

    Intellisense is practically mandated if you want to work with an interface as baroque as Win32. And it's nice even when you're working with your own defined classes and structures. But it has its own drawbacks, as Petzold notes:

    "For example, suppose you're typing some code and you decide you need a variable named id, and instead of defining it first, you start typing a statement that begins with id and a space. I always type a space between my variable and the equals sign. Because id is not defined anywhere, IntelliSense will find something that begins with those two letters that is syntactically correct in accordance with the references, namespaces, and context of your code. In my particular case, IntelliSense decided that I really wanted to define a variable of interface type IDataGridColumnStyleEditingNotificationService, an interface I've never had occasion to use."

    I develop for many platforms at work. It's a core part of my job. I mostly enjoy writing code for Unixish platforms, and tolerate the Windows stuff. The APIs on Unix are small, well-thought-out, have few if any side effects, and tend to be thoroughly documented. I find very few interfaces on Windows have even a majority of these traits, let alone all of them.

    I've rarely felt the need for more debugging support than Linux comes with. The problems tend to be simpler and more easily uncovered. Eclipse is nice, and appears to take many of the good things about Visual Studio and leave much of the bad behind. For some projects, it's very useful. For others, it's overkill.

    Another item worth reading - the whole book, really - is The Art Of Unix Programming. For a Windows developer's perspective on the book, see here. Needless to say, I don't agree with everything he writes there, but you might find it interesting.

    --
    PHEM - party like it's 1997-2003!
  12. Vista hurt the numbers, not helped by caywen · · Score: 4, Interesting

    FTA: "The arrival of Windows Vista likely only kept the numbers from being even worse." I think that Vista actually hurt the numbers. Not so much Vista itself, but in Microsoft's post-launch execution. Microsoft's big developer hotness is supposed to be all these great .NET technologies. But the lack of Vista adoption might be putting the brakes on developer enthusiasm because Microsoft is failing to lead the way in showing the end result benefits of it. COM didn't really catch on until Microsoft started demonstrating how hot it was through dogfooding and releasing applications architected on it. With it came a greater degree of modularity and flexibility that they demonstrated compellingly well with IE, Office, Visual Studio, etc. To this day, Microsoft hasn't delivered any real WPF+WCF applications - at least none that a significant number of people care about. They should be pumping out amazing applications that can be showcased on Vista, causing developers to envy and copy them, and causing customers to actually want Vista because of the hotness the developers *and* Microsoft are offering.