メディアによって作られたあらゆるステレオタイプにも関わらず、シリコンバレーで開発者として成功するのは至難の業だ。価値ある人間関係を作り上げる事ができ、その努力を見える形にできた一握りの最高のプログラマ達だけが、トップの会社で高賃金の仕事を得たり、立ち上げた会社への投資を受けたりする事ができる。そんな困難を乗り越え、しかもこの素晴らしいイタリアのシチリア島から出ずに製品を作り上げ、それに伴う評判を得る事を想像してみて欲しい。それはほとんど不可能事に近い。しかし、Redisの作者であるSalvatore Sanfilippo(antirez)は、それをやってのけたのだ! Salvatoreは、シチリアの小さな村から現代のWebでも最も人気のあるコンポーネントの1つを作り、業界の人々や企業と確かな関係を作ってきた。Salvatoreは自身の偉業を自慢するのは好まないが、私は彼が並はずれた才能を持つ特別な人物だと信じてきた。この業界の人でないなら、彼にまつわる話がいかに途方もない事なのか理解できないかもしれない。また、彼の作ったソフトウェアであるRedisが、あらゆるWeb開発者が使う基本的なコンポーネントである事も知らないだろう。Salvatoreへのいくつかの質問を通じて、彼の物語をより深く理解し、そこから学ぼうとする全ての人々にその物語を伝えようと思う。お楽しみあれ。
Franco : やあ、Salvatore。君について少々、そして専門家として面白い話を聞かせてくれないか。
Salvatore : やあ、Franco。僕の専門性は、計画立てて培ってきたというより、長い間情熱をかけてきた結果というべきだね。80年代の前半、父が趣味でコンピュータに熱中していた関係で、僕は6歳の時にBASICで簡単なプログラムを書き始めたんだ。しばらく趣味としてコンピュータに情熱をかけてきたんだけど、最終的に20歳の時、建築学を専攻していた大学を辞めて、セキュリティ会社で働き始めたんだ。その間、僕の最初のオープンソースソフトウェアであるhpingを書いて、今はIdle Scanと呼ばれているTCPアタック対策に取り組んでいた。ITセキュリティの分野は、カネが流れ込むようになってある時すっかり変わってしまったので、取り組み方を変えなければと感じた。そして、プログラミング言語にのめり込むようになって、カーネルスペースでいくらかのコードを書き、ある時LinuxCare Italyに加わってしばらくの間活動した。それから「Web 2.0」が始まって、ここイタリアでもブロガーの間でそれについてたくさんの意見が交わされた。でも、イタリアでは何も開発されなかったんだ。それで、友人のFabioと一緒に会社を立ち上げて、アメリカでとても人気のあるものと似たようなWeb 2.0のサービスを2つ作ったんだけど、テレコムイタリアとのパートナーシップのおかげで、かなりのユーザを集める事ができた。数年後、3番目のプロダクトを作る事を決めて、それがリアルタイムなWebログのアナライザだったんだ。伝統的なDBはそういう類のタスクには向いていなかったので、僕はRedisを作り始めた。VMware、その後Pivotalというスポンサーシップのおかげもあって、結局それがメインの仕事になったというわけなんだ。
Franco : 僕が思うに、君は何度もアメリカに渡る機会があったと思うんだけど、君はイタリアに住む事を自ら選んでいるんじゃないかと思う。君の経験から、アメリカに行かずにイタリアで働く事で得られた利益と、妥協せざるを得なかった事って何だい?
Salvatore : それは本当に色々な次元の事が、矛盾する色んな要素で決まっていった事なんだ。アメリカでのテクノロジーのエコシステムは驚く程素晴らしいもので、何もかもが「簡単に」起こってしまうように感じられる。そこには、自分にはとんでもない事ができてしまうと信じている多くの人々がいる。それこそが、自分はどうせ失敗するだろうとほとんどの人が思っている(そしてそれ故に多くの場合全く新しい事を始めようとしない)、このイタリアに欠けているものだ。しかし一方で、良質な生活がある。生活の質の99パーセンタイルを考えた時には特にそうだ。イタリアに住む人のほとんどは、うまく行かない時も政府の助けを借りて、そこそこの暮らしができている。そう、企業が心地よいエコシステムを持つには重すぎる、あの政府と同じ政府だ。それから、妻と僕は、両親に孫と一緒にいさせてあげるのが一番いいと思っているのも、離れがたい一因だね。シチリア島やイタリアのあらゆる事が好きだというわけではないんだけど、物事に対するアプローチの方法に関して、僕のやり方とアメリカ式の間には文化的なミスマッチがあると感じてもいる。このイタリアで動き続け素早く進化していくのに物事を組み合わせていくのは、人々に何が良くて何が悪いのかを直感的な形で理解してもらえる様な良きお手本になるのと同じ事だと感じている。まあそれにしても、北イタリアかロンドンか分からないが、将来的には移住する事になるのかもしれないけれど。
Franco : 君のプロフェッショナルとしての成功に、イタリアそしてイタリアの文化はどんな役割を果たしたんだい?そして君のその話は他の事にも当てはまるだろうか、それとも例外だろうか?
Salvatore : イタリアの文化は、僕の作ろうとしているものに大きな位置を占めている。僕が作るものの大きな特徴のひとつが、「変わっている」——つまり過去のどんな問題解決法とも似ていない、という事だ。そしてそれはイタリア人の一般的気質でもあると信じている。それから、僕は物事をシンプルにしようとしているけれど、一方で細かい部分もあるべき姿にしたいと思っている。ソフトウェアを書くプロセスというのは、自家製の靴を一揃い作るのとそう違う事ではないと考えているんだ。実際他の何かをする時でも、それは例外ではないだろう。デザイン、シンプルさ、センス、そして細部へのこだわりといった千年にわたるイタリアの文化は、テクノロジーの世界でも太刀打ちできるよう活用していけるはずだ。でも、楽観的考え方の欠如、投資、高いレベルの組織体制、起業時の複雑さ、そしてテクノロジーを作り、例えばファッションがそうであるようにそれを輸出していくための「フレームワーク」が欠けているといった色々な問題でそれは実現されていない。
Franco : 君は今までずっとオープンソースプロジェクトに関わってきたわけだけど、技術者じゃない読者に向けて、オープンソースプロジェクトへ貢献する事は、楽しみだけじゃなくてプロフェッショナルとして成長するいい方法でもある理由を説明してくれないかい?
Salvatore : オープンソースは、見るのにお金を払わなくていい映画のようなものなんだ。しかも、自分が主役を演じられる可能性もあるという。これで、(貢献具合が)丸見えになる。オープンソースに関わると言っても、商用ソフトウェアと同じくらい高品質であるべきだし、長期間にわたってメンテナンスされ、開発されなくてはならない。OSSも他のビジネスと同じなんだ。一夜にして成功するなんて幻想でしかなくて、長年に渡る仕事の積み重ねだ。こういった事の副作用として、貢献が他から見えるようになる事で、IT企業でよりよいポジションにつく事ができたり、起業時に出資してもらえたりといったような効果があるわけだ。ビッグなものにするのに「思いつきで」開発されたOSSというはあまりないだろうが、「お金を払ってくれるかどうかに関係なく、私のユーザは私の顧客である」という考え方に立てば、ひとたび企業が君達のコードを使い始めたら、それは彼らのビジネスの価値の一部になるという事だ。彼らは最終的にはお金を払ってくれる事になるかもしれず、そうしたら君達は止めはしないだろう。とは言え、プロダクトベースのビジネスは難しくて、「いい給料」を超えてスケールするシンプルなビジネスモデルなんてないというのも事実だ。より簡単な方法はサービスを売る事だけど、それはそれでリスクがあるし、それなりの人員をそろえなければならなかったりもする。お金を稼ぐ事が目的なら、プログラマにはもっとシンプルで効果的な方法が確実にあるはずだよ。
Franco : 今までオープンソースは、企業ビジネスと競合するアプローチだと思われてきたけれど、最近はどんなハイテクプロジェクトでも欠かす事のできないものだという認識に変わってきているよね。この変化の理由は何だと思う?そして、将来のオープンソースが果たす役割や機会と言ったものについてはどう考えているんだい?
Salvatore : 企業ビジネスは、ある種の生理的反応としてOSSに友好的に適応したんだと感じている。(OSSは)問題だと捉えられたが故に、企業ビジネスからは敵対的に見られたんだ。でもその戦いは(企業からすると)いくつかの点で勝ち目のないものだった。無料で、多くの場合高品質で、ドキュメントが豊富で、大きなコミュニティを持っているといった、乗り越えるには小さいとは言えない点だ。それで、直接の戦いには企業ビジネスは負けたわけだ。さらに加えて、開発者達の考え方がOSSの方を向くようになった事や、管理職がベンダロックインを恐れるようになったのも原因だ。その結果企業の人々は、一般的になったOSSを提供する事で、そういったソフトウェアを使う大組織から利益を上げられるんだという事に気づいたわけだ。と言っても、「我々のソフトウェアはオープンソースだ」という台詞がそのまま、例えばLinuxの様に何もかも自由だという事を表しているのではない。それは開発モデルの話であり、お金を払わずに情報を見つけられるという事であり、ライセンスの詳細を表したそのものだ。サービスを売る事、組織体制、上位ユーザ向け機能といった要素と、完全に自由な開発モデルを採用する事の間には、微妙な綱引きがあるものだ。
Franco : テクノロジーに対する情熱を持ち、飛び立つ機会をうかがいつつ専門家としてのキャリアを作ろうとしているイタリアの若者達に、何かアドバイスはあるかい?
Salvatore : 僕からのアドバイスは、何かをやろうとする時にそこに親がお金を払ってもいいと思うくらい若い、その時を利用しようという事だ。両親は、若者達の最初のベンチャーキャピタルであり、若者達がエネルギーに満ちあふれるその瞬間に投資しているのだから。もうひとつのアドバイスは、ずっと勉強し続けてはいけない、専門性を高めるためにはしっかりとそのための最大年数を決めるという事。最後に、たくさんの事が進んでいるように見えるイギリスやアメリカの人々と比べて、劣っているところがあるなんて思わない事。より優秀だったりより仕事ができるかどうかの問題じゃない。他人がやっていることのコピーじゃなしに、新しいものの創造に挑戦するのが、よい戦略なんだから。
質問に答える時間を取ってくれたSalvatore Sanfilippoに感謝を表する。SalvatoreあるいはBAIAにもっと質問がある場合は、気軽にコメントを残して欲しい。