後方互換性

Joel on Softwareを読んで、Microsoftがいかに後方互換性にこだわってきたのかを知って驚いた。ただそれには理由があって、OSベンダーにとっては前のバージョンのOSで動作していたアプリケーションが新しいバージョンでも動くということが商売上きわめて重要なのだという説明があり、言われてみればその通りだと思った。会社としては当たり前だが、いちばん利益につながると判断した決定を下したのであって、単なる善意でやったことではない。

ただ最近のMicrosoftは開発者にとっての後方互換性を切り捨てつつある。Visual Basicは.Netでがらりと変わったし、Win32APIはWinFXというものに取って代わられる予定らしい。これによってOSの機能にアクセスする際の抽象レベルが上がり、新たにプログラミングを覚える若い人には便利になるんだろうけど、ベテランのプログラマは開発効率の源泉である知識が突然無効化されることになって開発速度の低下を招くことになる。

新しいものを取り入れるためのは、それを導入するコストやその将来性をきちんと見極めてからにしろってことやね。新しいものを作ったり考えだしたりした人らはその利点だけをひたすらアピールするだけなので、ついつい興味をそそられてしまうんだけど、それを採用するリスクやコストを冷静に評価するように心がけないとあきませんね。