未来のいつか/hyoshiokの日記

hyoshiokの日々思うことをあれやこれや

Netscapeがすごい会社だった頃の話(1996年前後)。

夏休みなので、たまたま読んでいたCoders at Work プログラミングの技をめぐる探求という本の中にJamie Zawinskiのインタビューが載っていた。この本は著名なプロラグマを集めたインタビュー集で、Unixを創ったKen ThompsonやらDonald Knuthやらすごい人たちが登場している。

その中でJamie Zawinskiはそれほど著名でもなければ誰もが使っているすごいシステムを開発したというわけでもない。私が彼の名前を知ったのはNetscapeのソースコード公開時にMozilla.orgを仕切っていた頃なので、20年近く前である。

彼はxemacsの開発者としても著名で、当時GNU Emacsではなくてxemacsを日常的に使っていたので馴染みにある名前だった。xemacsとGNU Emacsはのちにマージされるのだけど前者が今で言う所のバザール型開発で、後者がRichard Stallmanを頂点とする伽藍型開発だった。(その当時はそのような名前はなかった。のちにEric Raymondが「伽藍とバザール」というエッセイでそのようなソフトウェア開発方法論について書いた)

Netscape社は1995年くらいのインターネット商用化の黎明期に突如登場した破壊的イノベーションを具現するベンチャーだった。

今でこそウェブブラウザーは当たり前だが、1993年頃にNCSAにいた若者たちが作ったX Mosaicというブラウザが世間を席巻していて、それを作ったマークアンドリーセンらが立ち上げたのが、Netscape社だった。Microsoft社はWindows 95を発売したばかりでインターネットの可能性については過小評価していた。

突然変異と言ってもいいベンチャーがNetscape社だ。

当時私は、Oracle社で日々コードを書いていた。大きなソフトウェア会社の典型的な大規模ソフトウェア製品開発現場の一員だった。CIという言葉はなかったけど、毎日ビルドして毎日テストして毎日デバッグしてという日々を送っていた。

Netscape社とOracle社はビジネスの領域では全く競合していなかったので、インターネット面白いよねーと無邪気に感じている日々だった。

ビルゲイツ率いるMicrosoft社は当初はインターネットの可能性を過小評価していたが、すぐにそれの重要性に気がつきあっという間に方向転換をする。それがWindowsへのブラウザのバンドルである。

当時のソフトウェア製品はパッケージを電気製品を売ってる販売店やパソコン屋から買ってきてCDとかに焼かれたソフトウェア製品をユーザーがいちいちインストールするものだった。WindowsなんかもCDで買ってきてPCにいちいちインストールする。

さすがにそれだと面倒なので、PCベンダー(DELLとかIBMとか)がWindowsをあらかじめインストールした製品を売っていた。逆に言うとWindowsをインストールしていないPCも普通に売られていたのである。

Windowsが圧倒的なシェアを持つとPCにはWindowsがおまけで付いてくるように見えるのであるが、Windowsの画面にいろいろとバンドルされるものが出てくる。その一つがウェブブラウザーである。

サードパーティーのソフトウェア製品を作っているベンダーはいかにしてMicrosoft社と競合しないかと頭を悩ますのは、MSがWindowsに競合製品をバンドルした瞬間、そのビジネスモデルは終焉を迎えるからである。

今でこそ、そんなことは当たり前だろうと思うわけであるが、ウェブブラウザーがない時代にウェブブラウザー製品を一から作ってその市場を開拓した側から見ればたまったものではない。いかにしてMSに見つからないで波風を立てないうちに市場を占有するかというのが当時のソフトウェア製品ベンダーの戦略であった。

幸いなことにOracle社はMSと競合しないこともなかったがデータベース製品の主戦場はエンタープライズサーバー(主にUnix市場)だったし、当時はまだWindows NTもそれほど力を持っていなかったのでブラウザ市場ほどの競合関係にはなかった。

(時代背景を説明すると長くなるね)

さてNetscapeである。創業のメンバーがほとんどNCSA/Mosaicから来た。創業者にはSGI CEOを歴任したJim Clarkがいる。彼がNCSA/Mosaicのメンバーに声をかけて創業したと言われている。

Jamie Zawinskiはその中でNCSA/Mosaicのメンバーではない初期の従業員だ。新規にブラウザを作っていくのだが、セカンドシステム症候群にもかかることなく最初のバージョンは完成する。(セカンドシステム症候群というのは組織が二つ目の製品を作るときに完璧を求め不必要に複雑化する現象を言う。人月の神話を書いたブルックスよって広く知られるようになった)

ザウィンスキー 私たちは宗教的なくらいにデッドラインに集中していました。もし6ヶ月以内に完成できなかったら終わりだと思っていました。(p15)

(聞き手)最初にリリース日を決めたら、スコープか品質を限定する必要がありますね。どのようにしたんですか。

ザウィンスキー 機能については長い時間をかけて話し合いました。まあ、長い時間ではありませんでしたが、長い時間に思えました。1日に一週間分のことをするような生活をしていたからです。機能を削り落としました。ホワイトボードにアイデアを書き出し、線を引いては消していきました。6人か7人くらいでやっていました。正確には覚えていませんけど、部屋に頭の良い自己中な連中が集まって、一週間くらい怒鳴りあっていたんです。

一週間が長い時間という時間感覚がそのスピード感を表している。スコープと品質を限定するという常識が共有されている。素人がやると人員がいない、人員追加だという話になるが、プロがチームを作ると徹底的に話し合って、機能を削り落とす。それができるのがプロだ。

チームは少数精鋭だ。ピザを食えるくらいの人数に抑えるということでピザチームと呼ばれることになるのだが、スモールチームでデッドライン優先の製品開発をする。その現場感がハンパない。

Netscape 0.96がダウンロードされていく様子を眺めていく。200万ダウンロードされ人々が自分の書いたソフトウェアを動かしていく。信じられなかった。報われた。(ダウンロードした)彼らの1日が自分達がした仕事によってより面白く、より快適で、より楽なものになった。

その当時のことを私は日記に書いている。(1998/09/03のシリコンバレー日記)
http://web.archive.org/web/19990417035415/http://www.best.com/~yoshioka/d/98/i980903.html

実のところシリコンバレーにいてもベンチャーに勤めているわけではないから,そのクレージーさっていうのは実感していなかったりする.
http://www.jwz.org/gruntle/nscpdorm.htmlにネットスケープ社のJamie Zawinskiのエッセイがある.彼はネットスケープ創業時からのプログラマで,Unix版のネットスケープを開発した.

それをざっと読んでみよう.従業員が20人とか30人のころの話である.時は1994年夏から秋にかけて.インタネットが爆発する直前である.

これは古きよき時代の話である.時は痛みを和らげ,実際より物事を楽しかったように見せる.だけど誰がすべてのものは楽しくなければいけないといったのだ.痛みは人格を作る.(時には,製品だって作るのだ)
スタートアップで働きたいって?この物語はひょっとしたらおとぎばなしとして聞いてほしい.

Tuesday, 26 July 1994, 4am.

俺がモザイクで働きはじめてから一月とちょっとたった.良く眠れない.というか,家に帰っていなかったりする.

ルーとロブがひがなラジコンの車を組み立てて遊んでいる.うるせーったらありゃしないぜ.

...

マークは俺にSGI版をIrix5.3の出荷と同時に出せと言っている.それって2ヶ月以内ってことだ.俺と来た日にゃ,まだコードはほとんど書いていねーし,本当のところ出来るか出来ねーかなんてことはわかりゃしねー,それに全体像だってわかっちゃいねー.俺にうんといわせるのなんかマークにとっちゃ朝飯前ってことだ.だけど俺だって失敗したくなかった.掛け金はすげー高かった.世界中が俺達がやるかやらないか注目してたんだ.

Thursday, 28 July 1994, 11pm.

昨日は会社で寝た.机の下で2時間半爆睡したぜ.朝の11時から1時半まで.起きた時気がついたのだけど,カラーマップとディサーリングについてのミーティングに遅れちまった.ま,どーでもいいっちゃいいんだけど,ミーティングを遅らせただけだから.実際,仕事し過ぎでぶっ倒れているやつ抜きでミーティングをするつーのは不可能だってことだけどね.

Sunday, 5 August 1994, 5am.

家に帰った.前帰ったのはっていうと,...,39時間前だ.疲れてはいなかった.気力回復ってやつだ.

...

原文見てみて下さい.めまいがします.シリコンバレーのスタートアップ.

そんなこんなのクレージーさはその後ビジネス的にはMSに負け今やNetscape社はない。

Netscapeはそのソースコードを1998年に公開し、オープンソース(OSS)という革命・破壊的イノベーションを引き起こした。

OSS、クラウド、シェアリングエコノミー、フリーミアム、IoTそのような言葉すらなかった時代の話である。

Jamie Zawinskiのインタビューを読むだけでも価値がある一冊だ。若いプログラマにお勧めしたい。熱いよ。