Thursday, April 21, 2011


They say you don't get a second chance to make a first impression, but that depends on who you are.  Apple seems to have managed a couple of major architecture transitions and their own Vista without too much ill will, yet Microsoft was practically crucified for Vista with no architecture transitions.

Fair warning: many links in this post lead to tvtropes.

To be sure, Apple had the advantage on their architecture transitions that they were moving between chips that had significantly more performance, which greatly reduced the penalty of emulating the old chips; a 100 MHz PowerPC (that, at the time, Amiga Computing* boasted would run like a 200 MHz Pentium, or something like that) was rather adept at pretending to be a 40 MHz 68040.

Vista, on the other hand, was widely panned in the tech press, and subject to the same problems regarding driver availability as Mac OS X 10.0, if anyone remembers that.  "zOMG there's no drivers!"  And it was so bloated.  Well, on the machines of the day.  I don't really fault Microsoft for believing that PCs would continue getting faster and everyone would keep buying new ones for Vista, considering the market had been working that way for something like 15 years.  Multicore just threw them off their old, proven, and profitable game.

Anyway, in 2009, I got a new machine provisioned for me at my new job, the first one that wasn't cobbled together in-house out of spare parts, or handed down from the previous developer.  Unfortunately my boss forgot to check the "Vista Home Premium" upgrade, so it came with Home Basic and was thus ineligible for the free Windows 7 upgrade program.  So I've been using Vista for a year and a half, and it sucks.  Totally, it's... uh... er,  yeah.  There's actually nothing wrong with it other than the fact that it doesn't have full Aero so I don't get semi-transparent blurring titlebars, which actually means the title text is readable.  Yep.

Compare to my days of being a Tech Press Believer back in 2007, when I was worried (near to the point of tears, on one occasion) about building a computer for my then-fiancée 'soon enough' that I could still get XP for it, because Vista was so indescribably awful.

I didn't know then that Vista was actually a truly modernized OS, with a sane security model, and all the horrors of UAC were because 90% of Windows software was completely broken, and Windows of yore just didn't enforce proper coding at all.

Yet the tech press buried Vista under a negative wave of publicity.  It became Microsoft's New Coke.  The refrain of Windows 7, like Coke Classic, was essentially the message of "We listened."  Now in the se7en era, the tech-o-sphere passes around the Official Belief that "7 is what Vista should have been, and I can prove it because it's even actually called 6.1", somewhat oblivious to the fact that 7 is largely what Vista is.  Had 7 been released without Vista in between, how would it have been received?

Probably like KDE 4, Gnome 2, or Vista.  "There's no drivers and they changed everything! Whyyyyyyyyy!"  Because without the intervening release of Vista, many drivers at the launch of seven would have been in a similar situation as the launch of Vista: companies don't want to move on things until it's proven that they must, because preparing for futures that don't arrive is almost completely wasted effort.

An interesting point of divergence here between Apple's and Microsoft's approaches to OS X and Vista, respectively, is that OS X included an emulator for Mac OS Classic.  There was much more of a break between the environments, with the new not making any pretense of compatibility with the old beyond a sandbox.

With Vista, however, Microsoft faced a bunch of bad choices: either they could continue in XP's footsteps, releasing NT 5.(x+1), and continue taking heat for security**; they could try an OS X or NT 3.x-like break with history, and get flamed for lack of compatibility or performance of an XP Mode if they tried emulating it; or they could launch Vista as we saw it, breaking compatibility with drivers and bad (but widespread) coding practices to put necessary pressure on just about everyone to fix their broken stuff.

No matter what they did, someone would complain.  "XP mode" would inevitably be slower than running XP on the bare metal, and if Microsoft put in a lot of effort to paravirtualize it, doing so would make it possible for others to mimic that layer under it and run it on unauthorized systems.  On the security front, they could continue the "anyone can break the system completely" model of security inherited from their single-user days, they could keep silently failing like limited accounts on XP tend to, or they could add elevation prompts and face complaints about the necessary inconvenience with legacy programs.

People forgave Apple for OS X*** 10.0, but they didn't cut Microsoft any slack for Vista.  At least, the tech press and its devoted fans didn't.  The Mojave Experiment brings out another interesting similarity to New Coke: supposedly, when people were using a rebranded version of Vista, they rated it much more highly than Vista itself.  Likewise, Coke only went through with New Coke because testing showed that people liked it better.  But take the blinds off, and New Coke?  Eww!

In the end, 'success' (when defined as widespread usage of a product) is a result of perception of that product.  Substantially similar products may end up at very different outcomes simply because of a difference in perception between the two that gives one an advantage relative to the other.  Much-maligned Vista, a major and necessary improvement to Windows, underperformed because of widespread perception that it was Bad, among people who decided what to buy for their Fortune 1000 Company; whereas Windows 7 adoption is moving full steam ahead, such that it overtook cumulative Vista share quite a while ago now.

It makes me wonder how the scenario would have been played out if the tech press and their followers had not worked so hard to squelch Vista.  Would Microsoft have deployed some of the efficiency improvements found in Windows 7 as a service pack or "R2" to Vista, bringing the memory efficiency improvements into their older OS?  I doubt they would have overhauled the Taskbar so drastically, but as it was, the need to escape the "Vista = Awful" conception drove them to roll out a new brand for the OS as soon as they could.

* For a while after the end of Commodore, the Amiga IP staggered around, zombie-fashion, among companies that didn't really take much advantage of it.  One of the possible, wonderful futures of those days called for an Amiga resurrection around the PowerPC platform; formerly, it also ran on the 68000 series, like the Mac, so it's not as irrelevant or crazy as it sounds.  Then again, if they wanted to do anything like switch from bitplane to pixel-based graphics, it would have required seriously hardcore emulation compared to the Macs.  AFAIK.

** In reality, as the biggest and most valuable target, Microsoft needs a much greater level of security in order to result in similar exploit counts, which is how people like to simplify 'security.'  OSS proponents used to whine when someone totaled MS Advisories vs. Red Hat advisories for a year and concluded that Linux was less secure because RH issued more bulletins, since they issued them on a much wider range of software. However, even if you counted only "equivalent" vulnerabilities, you would find that bulletins-per-installation is higher for Linux because Microsoft has such a huge divisor on that metric.

*** I pronounce this "Oh Ess Ex," by the way, because "OS Ten Ten Point Five" sounds completely dumb, and nobody ever writes "OS X.5".  Though I'd call it "Oh Ess Ex Five" if they did, because nobody uses Roman Decimals either.  Maybe I should make a set of Perl modules so we can `use V::X::III` instead of 5.010_03 or 5.10.3, but then, Damian Conway probably beat me to it.

No comments: