基盤ソフトウェア研究 (その1)
前回は、Computational Thinkingについて書いた。いまや、学生のコンピュータサイエンス離れが深刻化し、学界と産業界は危機感を募らせているということで、そう言えば、昔にそんなことを発表していたものがあったな、と思い出した。2000年に当時Bell研にいたRob Pikeが「Systems Software Research is Irrelevant」というテーマで講演をしたときの発表資料である。
ちなみに、Rob Pikeといえば、UNIXやPlan9というOSの開発者の一人として有名で、Brian W. Kernighanと共著で書いた、「The Unix Programming Environment (UNIXプログラミング環境), 1984」や、「The Practice of Programming (プログラミング作法), 1999」も有名である。2000年当時はBell研にいて、「基盤ソフトウェアの研究は時代遅れになってしまった」と嘆いたいたわけであるが、2002年にはGoogleに入り、現在はプログラミング言語のSawzallなどの開発でバリバリ活躍している。
2000年のRob Pikeの嘆きを紐解いてみよう。彼の嘆く状況は今もちっとも変わってはいないことがよくわかる。彼は言う。「基盤ソフトウェア研究は主役ではなくなった。わくわくするような非商用ソフトのデモをいつから見ていないことか? 皮肉なことに、コンピューティングがイノベーションそのものになったときに、大学や多くの企業におけるソフトウェアとハードウェア両方の研究活動は、孤立化し、硬直化し、時代遅れになったしまった。そこには、いくつかの理由がある。回避可能なものや、地域特有なものもある。しかし、この状況を改善できる方法があるとすれば、コミュニティワイドな努力が必要である。」
「基盤ソフトウェア研究は、もはや斜陽の分野である。そもそも誰が新しいOSを必要としてるのか? 誰もいないはずである。しかし、ファイルシステム、性能、セキュリティ、Webキャッシュなど多くの論文が出ているのは確かだ。でも、学会以外の人は誰も注目していないのも事実である。ハードウェアは劇的に変化しているが、ソフトウェアは停滞している。」




