MicrosoftがWindows Vistaの発売延期を発表したことに対する反応が各所で見られる。過去のWindowsとの下位互換開発にこだわるが故に開発に苦しむMicrosoftと、思い切ってOS Xを過去のバージョンと決別させたAppleとを比較した内容が多いようだ。
The New York Times「Windows Is So Slow, but Why? 」
Windows runs on 330 million personal computers worldwide. Three hundred PC manufacturers around the world install Windows on their machines; thousands of devices like printers, scanners and music players plug into Windows computers; and tens of thousands of third-party software applications run on Windows. And a crucial reason Microsoft holds more than 90 percent of the PC operating system market is that the company strains to make sure software and hardware that ran on previous versions of Windows will also work on the new one — compatibility, in computing terms.
Windowsのユーザ数や関連しているハードウェアメーカーの数を考えると、互換性を保つというのは、新しい機能をOSに搭載することの何倍も労力のかかることであろう。この辺は自分も経験しているから分かる。おそらくVistaの開発にかけている時間のほとんどが、下位互換を保つ為の諸作業に費やされているはずである。しかもこういった仕事は、手間ばかりかかって「前進」を感じにくい仕事である為、僕なんかはMicrosoftのエンジニアのモチベーションが心配になってしまう。とにかく下位互換はGateのポリシーらしく、CNETの記事を読むと
CNET「相次ぐ製品開発の遅れで、マイクロソフトの頭上にたちこめる暗雲」
また同社は、すでに出回っている無数のWindowsマシンをすべてサポートしようとしていることから、そのための課題にも直面している。同社は、最新かつ最も素晴らしいOS上でさえ、最も古いアプリケーションが動くところを誇らしげに披露することも珍しくはない。
「われわれは、古いアプリケーションとの互換性を非常に大事にしている」と、Gates氏は先週行われたOffice開発者向けのカンファレンスで述べていた。
というコメントを残しているので、この方向性がしばらく変わることはないだろう。
会社の規模が大きくなってくると、そしてユーザが多くなってくると、新しいバージョンの開発と言えど、下位互換にまつわる作業がその中心となってきてしまう。このことは「開発者として、どんな企業に身を置くべきか」ということを考える上での、一つの重要な視点足り得る。