In short notes, Apple is rising among the power users who are disgusted by a ream of security failures under Windows XP, and are buying into the (incorrect) hype about how broken Vista is. So more bandwagon-jumpers appear, the most notable being today’s post from developer Peter Bright:
Windows is dying, Windows applications suck, and Microsoft is too blinkered to fix any of it–that’s the argument. The truth is that Windows is hampered by 25-year old design decisions. These decisions mean that it’s clunky to use and absolutely horrible to write applications for. The applications that people do write are almost universally terrible. They’re ugly, they’re inconsistent, they’re disorganized; there’s no finesse, no care lavished on them. Microsoft–surely the company with the greatest interest in making Windows and Windows applications exude quality–is, in fact, one of the worst perpetrators. ^
People are jumping on the bash Windows bandwagon, and like most trends, this is only partially true. It’s a trend to bash Vista, too, but back in real life, many people are enjoying it and using it productively. And it’s an attempt to circumvent some of the problems described in his article.
Maintaining backward compatibility is a beast but it’s essential for business. They predicted the mainframe would die by the early 1990s, but it’s going stronger than any time in the last fifteen years because of legacy applications.
Data portability is expensive, and exponentially so when custom formats are used, and they’re often necessary.
The real problem is that most people are not paying attention to what they’re doing, most managers are clueless, and most customers, oblivious. People are making junk software because they can and get away with it, but there are some excellent applications, although they’re in the minority.
A Honda is no Mercedes but people still buy them because they work for their needs. It’s the same way with most software, and with Windows, there’s the perception that for things like real-time audio drivers, you’ll install a third party one.
I agree Microsoft could do better, and I think it’s great that people are putting pressure on them, but I refuse to buy into the trend, especially since Apple has claimed superiority since 1984 and has been wrong every time.
I agree that Microsoft should emulate their older software, and if you look at the history of what they’ve done, they’ve slowly done this and have done it before with cmd.exe, which is not DOS but acts just like DOS, but better. They’re just more cautious because, unlike Apple, they pay attention to legacy needs and the needs of consumers who aren’t graphic artists who want to spend top dollar on new, pretty hardware.
Bright does mention one area I have harped on for years:
or example, many of the functions in Win32 require the caller to give a buffer to the function to store some data, and often that buffer has a size that’s dynamic. Typically, the API can figure out how big the buffer needs to be, but the caller can’t. A sensible software developer strives to solve the same problem the same way each time. It makes things easier for everyone concerned; it’s easier for the software developer (because he only has to design one approach to doing it), and it’s easier for people using his code (because they only have to learn one approach to doing it). There’s no good reason to do it different ways. Yet Win32… Win32 does it in different ways. ^
But I started harping on it when I was a Macintosh developer, because their interface and APIs were inconsistent. Windows has through accretion over time and some poor corporate decision-making followed that same path, and that’s why it’s time for Vista to leapfrog us away from XP, and for Windows 7 to run a new API with win32 in isolation.
That decision will have massive repercussions. For one, once you’ve got something coded to work with Windows, you can keep updating it with little effort, and it costs you very little. Recoding will cost everyone quite a bit of tasty cash. For another, customers are content with XP and its applications, even if to my mind they look and operate like something out of the 1980s, but faster. It’ll be a fun showdown.
I find it sad that power users migrate to Macintosh instead of Linux or FreeBSD for two reasons. First, what makes the Mac stable at all (absent its flaky backward-compatibility APIs) is the FreeBSD core upon which it’s built. Second, moving to Apple is moving to a shop that’s even more closed and dictatorial than Microsoft. Open source software is often not so great, but a lot of it is quite impressive, and closed source software for UNIX has mostly moved to the point where you can install it on a Linux and/or BSD box.
I remain agnostic about technology. Linux, for all of its greatness, has its flaws and flaws in its business model that make it laborous to use. FreeBSD has a community that sometimes sabotages itself so violently you have to wonder what they’re thinking. Microsoft has its own flaws, and Apple too many to count, starting with its complete lack of direction, its hardware lock-in, its snooty users, its careless attitude toward user rights, and most of all its pompous image.
When I think of returning to the good old days of computing, where the fun of technology came before the marketing decisions designed to appeal to the numb and dumb masses, I think of a new frontier like what Linux and FreeBSD offer. Nothing will be as easy as with a Win XP box, but you get to play, and preserving that sense of joy in work is more important oftentime than finding a boring standard to which we need to conform.
[...] people get frustrated with Microsoft and buy Apple, they’re not reflecting a sense of faith in Apple as much as they are suggesting that the [...]