連載のはじめに
この連載ではソフトウェアに関する優れた文章を書いている世界の開発者を、その人の書いたエッセイの翻訳とインタビューを通して紹介していきます。第1回目はJoel Spolskyを取り上げます。
Joel Spolsky氏
Joelのことはご存知の方も多いのではないかと思います。ニューヨークのFog Creek Software の創業者であり、以前はMicrosoftでExcel のプログラムマネージャを務め、Junoでは数百万のユーザが使うメールクライアントを開発し、イスラエル国防軍のパラシュート部隊にいたこともあるという経歴の持ち主です。
ブログ黎明期の2000年に書き始められたJoel on Software は開発者向けのブログとしてずっと高い人気を誇っており、このサイトの文章からは5冊の本[1] が生まれました。一番新しい本『More Joelon Software』( 図1 )は日本語版が最近出たところです。
図1 More Joel on Software
Joelは起業家向けの雑誌Inc.Magazine にも"How Hard Couldit Be?"というコラムを連載しており、これはWebで読むことができます。
やはり有名な開発者/ブロガーであるJeffAtwoodとともに昨年から始めたプログラミングのQ&AサイトStackover ow.com(図2 )は、フォーラムにWiki やDiggのようなメカニズムを組み込んで、内容が陳腐化せず、おもしろい質問や質の高い回答が自然と上がってくるしくみになっています。このサイトは短期間でとても大きく成長しました。
図2 Stackoverflow.com
JoelはJeffとともにソフトウェアについて語るpodcastを毎週このサイトで公開しています 。
Fog Creek Softwareの主力製品はFogBugz で、評価の高いバグトラッキングツールです。それからCopilot というユーザの遠隔サポートを行うためのサービスがありますが、これは2005年の夏休みに4人のサマーインターンが一から開発しました。そのときの様子はドキュメンタリーDVD になっています。今年も何か企画しているとのことで、楽しみです。
今回紹介するエッセイとしては、最近書かれた『プログラムマネージャになるには』を選びました。プログラムマネージャというのはMicrosoftの製品開発において重要な役割を果たしてきた、製品の外部仕様に責任を持つ役職です(会社によっては、成果物が基準や手続きに合っているか確認する役割が「プログラムマネージャ」と呼ばれていることもあります) 。
インタビューでは、このプロジェクトマネージャのことと、Joel自身のキャリアにおける重要な決断についてお聞きしました。
[1] 『Joel on Software』 /ISBN4-2740-6630-4/ 青木 靖 訳/ オーム社/2005 年12 月日本語訳刊行、『 BEST SOFTWARE WRITING』 /ISBN978-4-7981-1581-8/青木 靖 訳/翔泳社/2008 年2 月日本語訳刊行、『 ソフトウェア開発者採用ガイド』 /ISBN4-7981-1582-7/青木 靖 訳/翔泳社/2008 年3月日本語訳刊行、『 More Joel on Software』 /ISBN978-4-7981-1892-5/青木靖 訳/翔泳社/2009 年4月刊行、『 User Interface Design for Programmers』 /Apress/2001年6月刊行( 日本語訳は未発売)
Interview to Joel Spolsky
――あなたは経験から学び取るのがすごく上手だと思うのですが、それには何かコツみたいなものがあるのでしょうか?
お褒めいただけるのはうれしいですが、実際本当にそうかというと疑わしいですね! どうも私は慎重過ぎるところがあります。何かをやろうと腹を決めるのに延々と時間がかかります。本当は何年も前にやっているべきことなのにね。私がもうちょっと積極的でリスクを取るタイプの人間だったら、もっと成功していたんじゃないかと思います。
――これまでのキャリアを通してあなたがした一番重要な決断は何だったと思いますか?
私はたくさんの良い決断をしたし、たくさんの悪い決断もしました。ずっと昔のことになりますが、父にこう言われたことがあります。
「決断を下すための十分な情報なんて決して手に入らない」 。これは良い考え方だと思います。ぐるぐる同じところを回り続けるのはやめて、十分な情報がなくともとにかく前に進み、決断するようにしています。
"Joel on Software" を書き始めるというのが、私がかつてした中で一番価値ある決断だったと思います。これによって何百万という人たちに、自分の学んできた教訓を伝えることができました。
あとから思うと、私がキャリアをMicrosoftから始めたというのは幸運なことでした。そこでとても多くのことを学ぶことができたからです。当時は、良いソフトウェア製品を安定性を持って繰り返し作り出せる会社というのはそんなにありませんでした。
――イェール大学を出たあと、進む先としてMicrosoft を選んだのはどうしてだったんですか?
それはちゃんと計画していなかったためでした。私は2つの会社しか考えていませんでした。Microsoft とOracleです。この2つではMicrosoftのほうがずっと良い選択に思えました……。給料が良かったし、( シアトルの)生活費は安く、おもしろそうな製品がたくさんありました。1991年当時、イェールの学生を積極的にリクルートしていた会社はこの2つだけだったのです。応募したくなるような小さな良い会社だってあることに、私は気付いていませんでした。
私は経営コンサルティングの仕事というのもちょっとだけ考えたことがありましたが、面接で失敗しました。でもこれは幸運だったと思います…。もしかしたらとんでもない選択をすることになったかもしれません!
――会社を起こすときにニューヨークを選んだのはなぜですか?
それはニューヨークに住んでいて、そこが気に入っていたからです。ニューヨークは実質的にアメリカで唯一、車なしで生きられる町です。ここにはすごくたくさんのおもしろいものがあり、すごくたくさんのおもしろい人たちに出会えます。
それにソフトウェア会社を始める場所としても悪くないと思います。この地域に住む1,700万の人々の中には優れたプログラマだってたくさんいます。よその大学を卒業した人も、ニューヨークなら喜んで越してきます。若い人が新たに生活を始めるには本当に楽しい場所なのです。だから私たちにとっても優秀な学生を採用しやすくなります。
――自分の会社をやることの一番良いところは何でしょうか?
ボスがいないこと! 何をしていいとか、何をしちゃだめだとか言う人間が誰もいないのです。
――では自分の会社をやることの一番しんどいところは何でしょうか?
ボスがいないこと! どうすべきだとか、どうすべきでないとかアドバイスしてくれる人が誰もいないのです。
Fog Creekを始めるにあたっては、ほかにも難しいことがありました。
自力でやっているスタートアップとして、私たちにとって一番困難な課題は資金調達とオフィスの費用をどうまかなうかということでした…。ニューヨークではオフィス空間はとても希少で高価です。それにオフィスの増築にはすごくお金がかかります(ニューヨークで手に入るオフィス空間の多くはまっさらで空っぽなコンクリートの器で、中身は自分で用意する必要があります) 。
それからもう1つ私のしたくないことは、あまり働きの良くない人をクビにするということです。何度かはしなければなりませんでした。ほとんどの場合、その人たちはほかの、もっと彼らに合った場所を見つけてうまくやっており、それはみんなにとって良いことです。だからそんなに気に病むべきじゃないというのはわかっているのですが、それでもこれは私の仕事の中で一番いやな部分です。
――プログラムマネージャを採用するときには、どんなところを見るのでしょうか? それはプログラマの場合とは違っていますか?
プログラムマネージャは、一般にプログラマと比べると、デザイン、他人の理解、それにコミュニケーションの点で優れている必要があります。それからソフトウェアに関してより広い知識が求められます。プログラマの場合はスペシャリストでも良いわけですが、プログラムマネージャは対人能力について際立って優れている必要があります。プログラミングについても知っているべきですが、プログラミングのスーパースターである必要はありません。
――プログラムマネジメントとユーザインタフェースデザインという視点で見たときに、とても良い仕事をしている会社や製品の例があれば教えてください。
例ならすごくたくさんあるので、1つだけ挙げるのはためらわれます。そのほかのたくさんのものを除外することになるからです。それにある会社が使いやすい良い製品を出していたとしても、それが適切にプログラムマネジメントが行われているためなのか、ほかの理由によってなのか言うのは難しいでしょう。
Microsoft 製品には優れたプログラムマネジメントチームの成果とも言えるものがいくつかあります。Windows 95が現れたときのことを覚えているでしょうか? あれはプログラムマネジメントの勝利でした。Windows 3.1と比べてみれば、ユーザにとって多くの点ですごく改善されていることが一目してわかります。その多くはJoe Belfioreのような非常に優れたプログラムマネージャたちによってデザインされ、推し進められたのです。同様に、Microsoft AccessはAdam Bosworthという偉大なプログラムマネージャの存在によって成功を収めました。
Microsoft 以外でも、素晴しいユーザビリティとユーザインタフェースデザインを備えた製品がたくさんあります。たとえばGmailがそう。しかしGoogleにプログラムマネージャがいるのかどうかは知りません(プロダクトマネージャと呼ばれる人たちはいますが、それが同じものなのかは定かでありません) 。
良いユーザインタフェースデザインがどういうものか全然わからずに作られた製品が成功することもあります。その製品が本当に問題を解決してくれるなら、ユーザは多少の不便を喜んで我慢するのです。
Appleの製品の多くは、もちろん非常によくデザインされ、とても使いやすくできています。しかしこれはあまりによく知られていることなので、ここで再びエレガントなiPodについての講義を始めて読者を退屈させたりはしないことにしましょう。
――あなたがJeff Atwoodと始めたStackoverow.comは大きな成功を納めていますが、何がその要因だと思いますか?
Stackoverow.comが成功したのは、素晴しいコミュニティのためです。素晴しい貢献者がたくさんいて長時間熱心に働き、質問に答え、回答のレーティングをし、質問の記述がより本質的なものになるように推敲しています。このユーザのコミュニティが成功のための何よりの要因です。彼らなくしては成し遂げることはできませんでした。
――あなた自身はどんなブログやサイトをご覧になっていますか?
Google Readerでたくさん購読しています。私がよく見るのは、知っている人や一緒に仕事する人のサイトですが、何かおもしろいことがあれば多くの人がそれをリンクするので、そこから知ることができます。
あとHacker News (図3 )はよく見ています。ハッカーの好む技術的なトピックがリンクされていることが多いですが、ハイテクスタートアップに関するビジネスの話題もよく出てきます。このサイトはコメントのクオリティが非常に高いです。
――Fog Creek 製品には日本語版の計画はあるのでしょうか?
よくローカライズされた製品を作るには多くの労力がかかるということが、経験的にわかっています…。文言の翻訳だけでは十分でなく、その国での販売やサポートを行う子会社が必要になります。将来のいずれかの時点でそうするだろうとは思いますが、それを申し分なくやれる時間と資金ができるまでは手をつけないつもりです。
図3 Hacker News