グイド氏への感謝を込めて

Python の生みの親であるグイド・ヴァンロッサム氏は、6 年半在職した Dropbox を退社し、引退生活に入ります。グイド氏は、入社当初より会社にとって逸材として期待されていましたが、実際 Dropbox への貢献は、CEO であるドリュー・ハウストンが最初の Dropbox コードを Python で書いた時からすでに始まっていたといえます。

Python を愛用しているのは、とにかく使えるからです。直感的で、すばらしくよくできた言語です。Python のこうした特徴は、共同創業者のアラシュと Dropbox の設計理念を考える際の大きなヒントになりました。

Dropbox CEO ドリュー・ハウストン

ヴァンロッサム氏とハウストンの出会いは、2011 年に元同僚の紹介で一緒にランチに行ったのがきっかけです。その後ヴァンロッサム氏は、Dropbox でさまざまな講演を行うようになり、Python のファンである多くのエンジニアと知り合いました。当時、Dropbox のサーバーとデスクトップ クライアント ソフトウェアは、どちらもほとんどが Python で書かれていました。Python は世に出て 30 年近く経っていますが、今も広く用いられ、世界で最も人気のあるプログラミング言語としての地位を保っています。

Dropbox はすべてを Python で開発している会社でした。ですからコードベースのどこに関わっても、間違いなく楽しめると思ったのです。

Python の生みの親である グイド・ヴァンロッサム

こうしてヴァンロッサム氏は 2013 年に Dropbox に入社しました。以来、Dropbox で Python による開発に貢献しただけでなく、Dropbox のエンジニアリング文化と社員にも、かけがえのない大きな影響を与えてくれました。始まりは、入社早々に彼が出会った若手エンジニアたちです。

少数の若くて優秀な開発者が巧妙なコードをたくさん書いていましたが、どれも彼らにしか理解することができませんでした。小規模のスタートアップ企業なら、それでいいかもしれません。

グイド・ヴァンロッサム

しかし Dropbox の場合は、事業の成長に伴い、新たに入社してきたエンジニアがそのコードを理解できないという問題に発展しました。巧妙なコードはたいてい短く、暗号のようで、書いた本人にしかわかりません。他の人はなかなか理解できないので、保守がほとんど不可能です。ヴァンロッサム氏はこれを「カウボーイのコーディング文化」と呼びました。彼は、開発した機能を早い段階ですぐ実装しようとする Dropbox の姿勢そのものは評価していましたが、このやり方では長く続かないことも知っていました。そこで、彼らしい穏やかな方法で考えを表明することにしました。

意見を求められるたびに、巧妙なコードよりも保守可能なコードのほうが大切だと説きました。もし私が、巧妙で理解不能なコードの保守を担当しなければならなくなったら、きっとコードを書き換えるでしょう。だから私は手本を示し、他の人にも協力を呼びかけたのです。

ヴァンロッサム氏は、エンジニアがテストに自信を持って臨めるようにすることで、Dropbox の開発部門にも多大な影響を与えました。開発チームは継続的インテグレーションにより、コードが変更されるたびに一連のテストを実行して、変更後のコードに問題がないかをチェックしていました。テストは失敗することが多く、その半数は単にテストのやり方が間違っているためでした。しかし、失敗した理由を理解しようとするエンジニアがほとんどいないという事実に、ある 2 人のエンジニアが気づきました。ヴァンロッサム氏はこのプロセスを改善しようとチームに加わり、失敗したテストはすべて修正するようにしました(修正できない場合はテストを削除しました)。また、テストのコードを書いたエンジニアが失敗の原因を理解できるよう社内ツールも開発しました。

さらに別のチームでは mypy への取り組みを開始しました。現在 Python の静的型チェッカーとして知られている mypy は、ヴァンロッサム氏が Dropbox で入社 1 年目に採用したユッカ・レトサロが開発したツールです。レトサロの博士号研究プロジェクトとして開発が始まった mypy は、彼がサンタ クララの Python カンファレンスでヴァンロッサム氏に出会ったことから、さらに発展することとなったのです。

私はヴァンロッサム氏に、今開発中のツールの話だけでなく、なぜそれを開発しているのかも説明したところ、着手はしていなかったものの彼も同じ問題について考えていることがわかりました。

ユッカ・レトサロ

ほどなくしてヴァンロッサム氏はレトサロを面接のため Dropbox に招き、レトサロは 2013 年に入社しています。しかしレトサロには他のプロジェクトもあったため、mypy は 1 年間、研究のためのプロトタイプから進展することはありませんでした。そこでヴァンロッサム氏は 2014 年の社内ハック ウィークで、レトサロが Dropbox の Python コードを使って実際のユースケースとして mypy をテストできるよう手助けしました。

あれは実に重要なテストで、そこからすべてが動き出しました。それまで mypy と Python を別ものとして扱っていたのですが、テスト以後、私たちは mypy を、Python の一部をなす公式規格にしたいと考えるようになったのです。

ヴァンロッサム氏は 2015 年に mypy チームを立ち上げ、最後の 4 年間はレトサロと協力して mypy の開発を進めました。その結果、400 万行ほどの Python コードをチェックし、20 万近くの型定義を改善して、エンジニアの作業時間を大幅に短縮することに成功しました。

ヴァンロッサム氏は mypy プロジェクトに多くの時間をつぎ込みましたが、その一方で、Dropbox と Python のコミュニティに女性を受け入れるエンジニアリング文化を築くことにも尽力しました。

私はフェミニストとして生まれ、母からフェミニストとしてのあり方を徹底的に叩き込まれました。その教えを守っていたので、Python の核となる開発チームに女性エンジニアがほとんどいないことが気になっていました。最初のころの Unix ハッカーはほぼ全員が男性で、仲間になってくれる女性はほとんどおらず、しばらくして女性の割合が非常に低いことに気づきました。こうして STEM 教育を受けた女性の話題に特に関心を持つようになりました。

グイド・ヴァンロッサム

ヴァンロッサム氏は Dropbox 在職中、多様性をテーマにしたイベントに参加するとともに、女性エンジニアの相談相手にもなりました。こうした女性の 1 人、スシュマ・ヤドゥラパリは、Dropbox の情報技術サービス チームのメンバーです。エンジニアを対象にした社内のメンター プログラムでヴァンロッサム氏と知り合いました。

Python のスキル向上を手伝ってくれるメンターがいればいいのにと思っていました。Python コミュニティが好きなので、オープン ソースに戻りたかったのです。Python コミュニティは、すばらしい場です。そこでフォームを入力し、送信ボタンを押しました。

スシュマ・ヤドゥラパリ

数日後、ヤドゥラパリのもとに、メンターがヴァンロッサム氏になったというメールが届きました。

目を疑いました。同僚にメールを見せて、何かの間違いではないかと聞いたのを覚えています。

退職前の最後の数か月、ヴァンロッサム氏とヤドゥラパリは週に 1 回ミーティングをし、プログラミングについてあれこれ話し合いました。しかし、最大の収穫は方法がわかったことではなく、自信がついたことと、自分で解決できるようになったことだとヤドゥラパリは述べています。

ヴァンロッサム氏にはとても親切にしていただきました。何を言っても何を尋ねても絶対に否定しません。おかげで、自分が 1 人のエンジニアとして認められていると感じることができました。驚くほど地に足のついた人です。自分なりのやり方で世界を良くしたいという思いが根底にあるのでしょう。Python でプログラミングを始めたときから、それが彼の哲学だったのではないでしょうか。女性社員のメンターも、その哲学を体現するもう一つの方法なのだと思います。

ヴァンロッサム氏が正式に引退しても、Dropbox や大きく発展した Python コミュニティへの彼の貢献が忘れられることはありません。Dropbox サーバーのコードを Python 2 から Python 3 に移行したのも彼の功績です。「優しい終身の独裁者(Benevolent Dictator for Life:BDFL)」としての役割からすでに退いてはいますが、Python コミュニティには常に居場所があることでしょう。

ヴァンロッサム氏は、何事も喜んで迎え入れる友好的なコミュニティの育成に成功しました。これからもぜひ Python コミュニティを見守ってほしいです。彼はそれほど大きな存在だからです。Dropbox から引退しても、Python コミュニティから正式に引退するわけではないのですから。

ヴァンロッサム氏の言葉です。

私が考えたちょっとしたハックが、こんなにも多くの人の人生に影響しているのを知って驚いています。Python ファンから、Python は今まで使った中で最高の言語だ、Python で人生が変わったというメールをたくさんいただき恐縮しています。すべては、人々の協力を素直に受け入れること、自分でやり遂げようとしている人を応援したいという気持ちから始まったことです。

私たちは、ヴァンロッサム氏が Dropbox の一員に加わってくれたことに心から感謝するとともに、引退後の人生が最高に充実することを祈りたいと思います。今まで本当にありがとうございました!

  • 0
  • 0
  • 2
  • 0