- 第20回 後編 高橋征義氏 日本Rubyの会会長

- 今回は、日本Rubyの会会長であり、株式会社ツインスパークでシニアプログラマを務める高橋征義氏にお話をお聞きいたしました。高橋さんとお話していると、意外なことにその興味の源泉はコンピュータやプログラムというよりは「言語」「言葉」というものにあるように思えました。そんな高橋さんのこれまでの足跡を2回に分けてお届けします。PC片手に、いろいろ調べながら2時間半にわたる長時間おつきあいいただきました。取材は、渋谷のダイニング「風」で行い、株式会社ウェブキャリアの前田道昂氏にも同席いただきました。※取材日は、2008年2月です。所属や役職などは当時のまま掲載しております。
-
職業プログラマとしての過ごし方は?
川井 社会人になって12、3年だと思うんですけど、その間はどのように過ごされてきたんでしょうか。10年もあると人生のターニングポイントみたいなものが2つや3つあってもおかしくないと思うんですけど、高橋さんの場合、いかがでしょうか?高橋 会社が変わったりはしましたが、仕事のやり方そのものは、あまりドラマチックに変わったっていうのはなくて、徐々にですかね。自分でコードを書くか、人にお願いするかっていうのは変わったりもしましたけどね。あんまりプログラミングも極めているってこともなかったですし、だからといってビジネスバリバリっていうこともなかったんですよね。
川井 もちろん、プログラミング自体は好きなんですよね?高橋 嫌いではないですけど、そんなに好きって言うほど好きじゃないですね。プログラミング以上に好きなものがないですっていうわけではないですからね。
川井 小説も好きだしってことですよね。プログラミングは仕事って感じですか?高橋 確かに仕事としてのプログラミングと趣味のプログラミングの違いはありますね。
川井 高橋さんの中では、それは本質的に違うんですか?高橋 あんまり変わらないといえば変わらないかもしれないですけど、どうですかね......趣味ではPHPを使いたいとかいうのはないというような違いはありますけどね(笑)
川井 それはありそうですよね。趣味になれば自分の好きな環境や開発言語ってことになるでしょうけど、仕事ですと、どうしてもお客さんの要望ありきだよねっていうところがありますもんね。高橋 まあ、それはありますよね。ただ自分ひとりで趣味で作るプログラムも共有することとかを考えて作るとそれなりの制約は出てきますけどね。でも、制約の質は全然違いますよね。制約条件が違いますというか。
川井 やっぱりユーザーのためのプログラムっていうのが気持ちの中にあるんですか?高橋 それはあります。
川井 昔からそういうお気持ちでやられていたんですか?高橋 仕事を始めてからですね。制約条件ってやっぱり外から来るものだと思います。それにどう対応するかという問題であって、自分の中にある条件じゃないですから。
川井 なるほど、よくわかりました。今後の方向性は?
川井 今後の方向として考えていることってありますでしょうか? 技術者をやりたいのか、ビジネスをしたいのかとか、そういうものってありますでしょうか?高橋 「特にないです」と言ってしまうと話が終わってしまいますよね(笑) もうちょっとWebに付き合っていこうかなとは思っています。Webで仕事を始めて、ずっとWebとつかず離れず来て、インターネットバブルを越えてWeb2.0ブームまできたっていうのがありますからね。
川井 Webの行く末をもうちょっとみたいって感じですかね。どうなっていくかの予想とかありますか?高橋 Webは変わるものだと思うんですよ。変わるところにどうやって付き合っていくかっていう点が常に必要とされているんじゃないかなと。だって10年で本当に変わっちゃうので。それを10年前に予測できますかと言ったら、できないですよね。予想はできないけれど、うまくやらないと生き残れない。残っていくにはどうするかってところですね。そういった意味では非常に刹那的な業界ではあるんだけど、その中でも変わらないものや蓄積されるものもあると思います。
川井 高い環境適応能力が必要とされるということなんですかね?高橋 そんなに毎年毎年ドラスティックに変わることはなくて、少しずつ変わっていって、気付いたら全然違う風になっているというものじゃないですかね。
川井 大きな波をキャッチしながら泳いでいるということですね。高橋 大きな波が来る来るって言ってて、やっぱりこないとかもよくありますけどね。これは来そうだからコストをかけて備えて、これは来なさそうだから無視しようとかっていう判断は都度都度必要になるでしょう。
川井 いろいろお話をお聞きしていると、ある意味スマートに世の中と付き合ってらっしゃるのかなって感じるんですが。高橋 いや、そんなことないですよ。色々大変だったんです(笑)
川井 それは日々の仕事の中でですか?高橋 ええ、そうですね。ベンチャーは本当に大変だって思いはとても強いですね。最初の就職先がベンチャーっていうのは色々厳しいので、結論から言うと私はたまたま運が良かっただけと思うんですよ。今、ここにいるのは、本当にラッキーだっただけで、ちょっと間違えると、普通にズタボロの人生があったんじゃないかなってこともわりとリアルに想像できるんですよ。
川井 前田くんもベンチャーだし、2人とも最初はベンチャーなんですね。 前田 そうなんですよ。僕も最初ベンチャーでズタボロにならないためにどうすればいのか悩んでいるんです(笑) 分岐点というか、何がポイントになったんですか?高橋 それは本当に人それぞれなので、うまくいく人もいかない人もいると思うんですけど、私の場合は手広くやっていたのが良かったですね。
前田 コミュニティの活動とかですか?高橋 そうですね。それとか、本を読んだりとかも含めて。
前田 仕事だけじゃなくて、自分が興味のあることにフラットに目を向けて、目の前の業務だけでなくバランスよくやるということですか?高橋 そうですね。手を広げようとすると、人のコネクションもできるので、いざっていう時に助けてもらえたりチャンスが生まれたりもするんです。でも、いざって言うときのためにコネクション作るっていうんじゃ駄目なんでしょうけどね。
川井 そうですよね。コネクションはあくまで結果的に生きるということですよね。高橋 何かに興味を持ったときに、自分で調べたりとか、試してみたりして、ものになったりならなかったりした結果、初めてある程度の知識が身について、プラスその分野に興味がある人と話が通じたりつながったりできるんだと思うんです。興味を持つことが先にあって、人との関係はたまたまおまけで付いてくるっていう状態ですね。
前田 そうすると、自分が好きなものを純粋に楽しむっていうのが基盤なんですかね。高橋 好きかどうかよくわからなくても、興味があれば首を突っ込んでみてもいいんじゃないですかね。もしも本当に好きなものがあればいいんですけど、「本当に好きなもの」ってそんなにあるものじゃないですよね。「本当にプログラミング好きですか?」って聞かれると、そうでもないですっていう話にしかならないですからね。(笑)
前田 高橋さんの場合もプログラミングやRubyに興味があったので、首を突っ込んでみて、結果的に今があるということなんですよね。高橋 まあ、私の場合は本当に時間がかかりすぎてはいますけどね。小学生の頃からプログラミングを始めて、まともにコードが書けるようになったのが就職してからですから、一体どれほど無駄をしているんだって感じですよね。Rubyを覚えるってときも、その頃は近道がなかったので、過去メールをあさったり非常に効率の悪い勉強の仕方をしていたんですよ。
前田 それはWebとかで調べるんですか?高橋 Webとか本とか。梅田望夫さんのいう「高速道路」もなくて、ぺんぺん草が生えている状態を彷徨って行くしかないですっていう風な感じの世界ですよね。
前田 そう考えると、今の僕らは高橋さんの本なんかを読んで、まさに高速道路を行っているってことですね。高橋 それはもう、どんどん高速道路に乗った方がいいですからね。ただ、マイノリティっていうのも重要で、マイナーなものっていうのは、やっている人が少ないんですよ。やっている人が少ないとすぐ目立ちやすいというか、それなりに身についていますっていう状態でも価値が生まれるんです。例えば今、Javaを勉強しましたとか言っても、相当勉強したくらいではどうってものでもないじゃないですか。なんだけど、Erlang (アーラン)でやっていますっていうと、ちょっとしたプログラムに毛の生えたようなものが作れるようになりましたっていうだけでも、それこそ「はてなブックマーク」で評判になったりするわけですよ。私自身は基本的にマイナー志向なので、マイノリティ路線による恩恵を受けてきたかなという感じがしますね。わざわざマイノリティーになれっていうのも変なんですけど、人が少なそうで面白そうなものがあればそこに首を突っ込んでみるのはありだと思います。あと、マイナーな世界だと、すぐ人のコネクションできるのは利点です。なんせ母数が少ないので「あ、話が通じる。感動!」とか言っているうちに、みんな友達に見えてくるんです(笑)
川井 それは、確かにありますよね。高橋 ネット黎明期にそういう話はよくあって、○○さんの本を読んでいるのは今まで一人も見たことがなかったのに、他にも読んでいる人がいたって分かって感動しましたみたいな会話がされていたんですよ。それって日本SFの歴史でも同じような話がありまして、最初の日本SF大会のときに言われた言葉で「みなさん、隣の人の顔を見てください。その人もSFが好きなんですよ」っていうのがあるんです。普通の世界だとほとんどいないSFファンが集まっているすごい場所ですってことで。SFとか漫画の世界はマイノリティがたくさんいて、マイナーな作家さんファンのMLやサイトがいくつもできたりしてました。やっぱりそういう点でのWebへの思い入れがあります。Webって情報の発信ができて、かつ情報の共有もできて、共有先に人がいてつながりあうことができるっていうのはすごい感動ですよね。同好の志がいるって感じで。
前田 マイノリティ志向とWebってそういうところではマッチした部分があったんでしょうね。高橋 いやもう、まさにそうですね。初期のインターネットは、それなりのマイノリティ志向の人にとっては楽園みたいな世界でした。そういう居場所がなかったところに歴史上初めてマイノリティのコミュニティが生まれる地盤ができましたって感じですからね。
川井 なるほど。高橋 そういう場を作れるインフラがインターネットだったってことで、インターネットそのものに対する興味がそんなに強いわけじゃなくて、その中にのっているコンテンツが好きでしたっていうのがあるかもしれないですね。そこまでの濃い繋がりっていうのは、今はあんまりない気がするので、その辺りは変化しているのかもしれませんが、初期の頃の衝撃は大きかったですね。
川井 いくら産業革命以来の大革命といっても、当然、次第に慣れて自然になっていきますからね。高橋 海外と繋がれるようになったのも大きな衝撃でしたね。
川井 やっぱり、距離という物理的な概念を克服した点が大きかったんでしょうね。そう言えば前回のセミナーでもそうだったんですが、高橋さんの口から技術的な話があんまり出てこないんで、意外な感じで皆さんこのインタビューを読むかもしれませんね。 前田 インターネットとか、Rubyとかにどっぷりってことではないんですね。高橋 そうですね。Rubyが目的ではないですね。
川井 その辺が面白いですよね。高橋 Rubyについては面白いというか、やっぱり言語そのものを自分で作るのはすごいなっていうのがありますね。言語って作れるんだって、とても衝撃だったんですよ。 たとえばfor文という構文にも意味がある、for文を作るべきかどうかという選択肢があり、それを選ぶ理由があるというのが驚きでしたね。
川井 このあたりもさきほどお話していたマイノリティの話と同じ軸なんですか? 人が少ないところに面白そうだから飛び込んでいったみたいな。高橋 でもその頃は、Rubyが特に少ないというより、LL全体、たとえばPerlの濃い人っていうのもあまりいなくて、言語に興味を持つ層全体、マイノリティですよね。言語について話す場なんて全然なくて、例外的にあったのが、RubyのMLと「JavaHouse-Brewers」くらいですね。Ruby自体のよさに惹かれたところももちろんあるとは思いますけど、でもちゃんとそれを分かっていてRubyを選んだというよりも、たまたまRubyをやって、Rubyをてこに他の言語も調べてやっとRubyの面白さが分かるようになったという流れなんですよ。結果的にはRubyは面白いし自分に合っているってことで良かったと思いますけど。Rubyとの距離の置き方、スタンスについてはそれなりに意識をしていて、今でも覚えてるのが「たのしいRuby」を書くときに、「Rubyはプログラミングを楽しくするための言語です」って書いたんですよ。なんですけど、私が作ったわけではないので、こんなこと書いていいのかしらんって実はすごく悩んだんです。でもそこはそう書かないと文章として駄目なんですよ。伝わらなくなってしまう。それで、私としては決心をしてそう書いたときに個人的に吹っ切れたものがあったように思いますね。日本でRubyについて語る役を引き受けるというのは案外難しいことなんです。どう考えても、まつもとさんがいるのになんで?みたいな話になるじゃないですか。「日本Rubyの会」を代表するのもそうで、まつもとさんがいるのに、なんでお前が出てくるのってなるわけですよ。ならないわけがない。表立っては言われないかもしれないですけど。だから、そこを引き受けるのはわりと大変で、何かしら吹っ切ることが必要なんですよ。普通はそこまで吹っ切らないですよね。実力があればある人ほど遠慮するとか、忙しくてできないか、そもそも興味がないか、そんなところだと思うんですよ。Rubyが好きならRubyのコードをハックしている方がふつうは面白いはずで、Rubyの本を書いたりとか、本を書いてまるでRubyのことはなんでも知ってますみたいに説明を書いたりとか、あるいは「日本Rubyの会」の会長をして、Rubyの世界で偉い人ですみたいな振りをするだとかいうことに普通の人はあまり興味を持たないはずなんですよ。
川井 「日本Rubyの会」の代表になったきっかけってどんなことだったんですか?高橋 誰もやらなかったので、しびれを切らしたっていう感じですね(笑)。まあ、イベントなども嫌いではなかったですし。
川井 最終的には高橋さんが手を挙げたんですよね?高橋 ええ。別に誰に作ってくれって言われたわけではないです。
川井 やってみてどうですか?高橋 あんまり真面目に運営できてないので、すみませんすみませんみたいな感じなんですけどね。
川井 今、「日本Rubyの会」での高橋さんの役割ってどんなことですか?高橋 なんなんでしょうね(笑)「日本Rubyの会」から来ましたっていう顔をすることですかね。窓口というか、顔があることって重要だと思うんですよ、誰だか分らない謎のメールアドレスがあって、そこに送ると誰だか分からない人々がいるのとは違うと。
川井 そうですね。威厳があるというか、MLに高橋さんの名前で流れで来るメールとか、なんか期待感がありますよ。あの「高橋征義です」って文句で始まるやつです。高橋 わたしは漢字でフルネームを名乗るという変わった挨拶を書く人なんですよ。
川井 分かりやすいし、いいと思いますよ。高橋 単に「高橋」って苗字が多いからなんですけどね。まあ、まつもとさんみたいにひらがなで展開するつもりはないです(笑)
川井 この世界では多いですもんね。ということは実務的に何かをやっているっていうよりも、イベントのときに前に出て喋るとか、そういう担当ってことですか?高橋 むしろ細々と雑用をしている方が多いかも。大きな実務は、きっちりやれる笹田さんや角谷さんにお任せしてしまっていますが、私はあんまり実務に向いていないので、実務よりも人がやらない変なことをやる係なんです(笑)
川井 やっぱりマイノリティなんですね。(笑)高橋 「やる」ってやっぱりみんななかなか言わないんですよ。言っちゃうと大変だし、実際大変ですからね。でも、言い出す人がいないと始まらないのも事実なので。
川井 この前、そろそろ会長も変わらなければいけないかなって話をしてらっしゃったと思うんですけど、それは本気でそんな風に思っているんですか?高橋 思ってはいますけどね。
川井 でも手を挙げる人がいないと。高橋 まあ、いなさそうです。別に「日本Rubyの会」がずっと続けなければいけないってことはないんですよ。そういう使命感は実はあんまり強くなくて、継ぐ人がいなかったら潰したらいいんじゃないかって思うんです。とはいえ、簡単に辞めますって潰しちゃうことはもう出来ないことは分かっているんで、そういうことはないと思いますけどね。「日本Rubyの会」が「日本Rubyの会」を続けること自体を目的とした会になったらもうきっちりと終わりにするべきだって思っているんです。
前田 今は、「日本Rubyの会」があることの意味ってどんなところなんでしょう?。高橋 やっぱり「るびま」があることも重要ですね。でも「るびま」は「日本のRubyの会」というよりも笹田さんが一所懸命やっているみたいなところもあるし、笹田さんの負担も減らさざるをえないでしょうし。それを含めて、あんまりうまくは回っていないですね。私は「るびま」では基本的に巻頭言を書く係なんですよね。
川井 文章を書くのがお好きだったらいいんじゃないですか。高橋 いや、本当に大変で大変で、毎号毎号締め切りに遅れて本当にごめんなさいすみませんっていう感じなんですよ。あれって、面白いですか?
川井 面白いですよ。高橋さんの人柄も伝わってくるし、みんなも楽しみにしていると思います。高橋 「プログラミング言語のWeb雑誌」の「巻頭言」にしてはおかしくないですかね? なんか常軌を逸している感じがしているんですけどね。
川井 そんなことないんじゃないですか。期待している人にとっては、あまり関係ないと思いますよ。高橋 そうですね。こういうものを期待している人にはこれほど面白いものはないだろうって思ってはいますね。
川井 そう思います。高橋 もう1つ重要なのが「Ruby会議」ですね。そもそもRubyの会自体が、基本的には会がイベントを主催するっていうのではなくて、イベントのように人が集まる場とか、勉強会ができる場みたいなものを提供するだけで、「日本Rubyの会」は何もしないし、意思を持たないというのが理想だと思っていたんです。でも世の中的にはやっぱりそうじゃないみたいで、場を作っただけだと、みんながなんとかしてくれるわけじゃないんですよ。でも「日本Rubyの会」は地方も含めて多くの中でもうまく行っている方だと思いますね。
川井 確かにそうですね。最首さんのところ(Rubyビジネスコモンズ)は異常に盛り上がってますね。高橋 RBCはいろいろ活動されてるようですが、あんまりRubyの会には出てきてくれないんですよね。でも、この前は活動の案内をMLに投げてくれてうれしかったです。
川井 Ruby会議には、今年は、協賛させていただきたいと思っていますが、あまり出せないと思いますが、よろしいですかね。高橋 あんまりスポンサーの方に、なにかすごいメリットを保証するわけじゃないので、出したいですって言ってくれる方に出したい金額を出していただければいいです。今年も「多様性」っていうテーマがあるんですが、いろんなところでどんな人が、どういう形でRubyに関わっているのか、Rubyに興味があるのか、Rubyを使っているのかっていうようなな話が聞きたいところなんですよ。そもそも「日本Rubyの会」のイベントにお金を払ってまで参加したいっていう企業がいること、その人たちがいったい何を考えているのかっていう話はすごい重要で、それは何かしらの形で一般参加者とみんなでシェアしたいところではあると思うんですよ。
川井 なるほど、それは生の情報ですもんね。なぜコミッターにならないのか?
川井 一つ聞きたかったことを思い出しました。高橋さんって、Rubyのコミッターではないですよね、なんでなんですか?高橋 いやー、Rubyを開発していないですからね。だって普通コミッターにならないですよ。
川井 なんか理由はあるんですか?高橋さんの場合、なろうと思えばなれるわけですよね。高橋 いやいやなれないですよ。ちゃんともっとコード書かなくちゃ駄目でしょう。私から見た開発コミュニティっていうのは、純粋に実力主義というか、実力と興味の世界なんですよ。興味がある人が、使えるパッチをボンボン投げていると、そのうちまわりがいい加減に痺れを切らして、自分でコミットしなさいっていう感じで、コミット権をくれる。そういう非常にいい循環が一般的にありまして、Rubyも基本的にそういう循環に支配されていると思いますね。
川井 高橋さん自身は、パッチは投げないんですか?高橋 そんなちゃんとしたパッチは作れないですよ、標準ライブラリに入れられるようなすごいライブラリは作ってないですし。
川井 あえて投げないんじゃなくてですか?高橋 違います。
川井 印象的には高橋さんはコミッターって感じに見えますけどね。高橋 いえいえ。普通にたくさんその辺にいるRubyistの一人なので。
川井 ちょっと信じられない話ですね。それは忙しいからあえてやらないっていうことではないんですか?高橋 いえいえ、暇でもできないと思いますよ。それにパッチや実装の話よりも、仕様の話をしている方がまだ好きですね。
川井 興味は、どっちかっていうとそっちじゃないっていうことですね。高橋 実力が伴ってないってことかもしれませんけどね。そもそもコミッターのスキルって、Rubyのスキルとはまったく違うんですよ。ライブラリのコミッターはまた別ですけど、Rubyのコアなコミッターは基本的にCのスキルから始まって、Cで言語処理系を作るのに必要なスキルがあるかどうか、ポータビリティがあるコードが書けるかどうか、とかそういうところをちゃんと気にしている人がなるんじゃないですかね。ただ、コミッターはコミッターで忙しいんですけどね。
川井 なるほど。有志が集まって何かをやるって難しいですよね。日々の生活でのいろいろ制約があるじゃないですか。それで食えるわけじゃあないですからね。高橋 まあ、どこまで深入りするかってことですけどね。笹田さんくらいまで深入りしてしまうといろいろ大変じゃないかと思います。そういうのは私にはできなさそう。
前田 僕はプログラミング初心者で技術を覚えなくちゃってことで結構逼迫しちゃっていて、プライベートを削っちゃっている状況なんですけど、そういう状況ってどう思われますか?高橋 何が好きかですよね。あんまり周囲に惑わされないようにって言いたいところなんですが、惑わされるのを恐れすぎると何もできない気もするので、たまには振り回されてみるのもいいんじゃないかとも思うんですよ。私自身はあんまりポジティブ思考って好きではなくて、わりとネガティブな人間なんです。多分、一芸に秀でた人っていうのはそれを中心とした話になると思うんですけど、私はあんまりそういう感じではないし、それは目指してなるものじゃないし、結局は無理だったっていうこともあると思うんですよ。その辺は狙いすぎてもどうかなって思うんです。一つ矛盾したことを言うと、流行っているところとか、人がたくさんいるところに行くのは良いことで、情報はやっぱり集まるんですよね。たとえば今であれば、Ajaxとかが流行ってましたよね。だからってAjaxをやりたいとかいうと、「もっと他に勉強すべきことがあるだろう」とか言われてしまうかもしれないんですけど、盛り上がっているところはやっぱりみんな興味があるし、それは初心者だけじゃなく、上級者でもそうだと思うんですよ。そうすると、みんなそこにリソースをつぎ込むので、深い情報や、分かりやすい情報も得やすいようになる。そして、あれよあれよと言う間に洗練されていく。個体発生は系統発生を繰り返す、みたいな感じです。だから、そこに初心者が首を突っ込んでみても、分からないなりに得られるものも大きいんじゃないかなと。最初は表面的な知識だけしか入らないということもあると思うんだけど、そこから深く掘り下げてっていうこともできなくはないんで、そういう流行っているところに行くのはいいと思うんですよ。そういうのがある一方で、人が少ないところに行くと、すぐ詳しい人になれますっていうかマイノリティならではの楽しみはありますっていうところもあります。どっちでもいいんじゃないのっていう感じですかね。
前田 多いか少ないところに行くと。両方メリットがあるって言うことですよね。高橋 そうですね。だから、好きなところに行ったらいいんじゃないのっていう感じですね。
前田 動かないのが一番、よくないってことですかね。高橋 ところが、またその一方で、ある程度腰を据えましょうっていうのもあると思うんですよ。時間をかけて分かるものもあって、すぐ分かる人もいると思うんだけど、なかなかそうじゃない人もいますよね。そういう人に対してあれもこれもそれもって言っちゃうとさすがに限度があるだろうっていうのと、限られたものの中で最大限に吸収してから広げるっていう方法も有効だと思うんです。私は札幌出身で、札幌はやっぱり東京に比べれば情報が少ないんですよ。でも、情報が少ないところではある程度情報自体がフィルタリングされているので、自分であちこち動き回って情報をかき集める必要がないんです。そういう状況は私にとってはすごく楽だったし、惑わされなくて済んだんです。情報が入ってこないところで、少ない情報を最大限吸収して自分のコアな部分が出来て、そこから情報の多いところに行ったときにはそれなりに分かるようになっていましたっていう感じなんです。
川井 自動フィルタリングの意味があるんですね。高橋 それは地方都市のメリットですね。まあ、地方都市って言っても札幌はそれなりにでかいので、ある程度情報も入ってくるんですけどね。それが自分の好きなジャンルじゃないと全然入ってこなかったりするんだけど、いろんなジャンルがあるので、ちゃんと入ってくるジャンルだとコアだったりとかっていうのはありますね。でもだからって、そこでずっとがんばり続けるのはすごく大変なことです。Ruby札幌の人たちの話を聞いたりするとやっぱり簡単なことではないようですね。地方は地方は難しい。
高橋メソッドについて
川井 最近、高橋メソッドを使わせてもらっているんですけど、意外と年配の方からうけるんですよね。そのあとに本を読んだんですよ。ああいうのを狙って作ったんですか?それとも結果的にああなっちゃったんですか?高橋 面白いことやりましょうっていうのってあるじゃないですか。特に大学のサークルはわりとそういうところがありますよね。ナウシカってご存知ですか?
前田 「風の谷のナウシカ」ですよね。高橋 北大って寮生が強かったせいか、わりと政治色が薄い大学で、普通の大学生でも立て看とかを書いているような学校なんですけど、新歓のサークルで受験生歓迎用に立て看を作りましょうって話になったときに、ナウシカの絵で看板を作って、横に「なぜ争うの?」って書いたりとかしたんですよ(笑)受験しに来た人にそれはないだろうって感じですよね。
川井 受験生は争っていますもんね(笑)高橋 まあ、そういう無意味なジョークを楽しんでいるような文化だったんですよ。あと、オープンソース系の人たちにも、下手でも変でもいいから面白いことやりましょうっていうカルチャーがあったりするわけですよ。そういうところで喋んなきゃってときに、変なこととか面白いこととかをしても、許容してくれるところ、むしろ逆に煽ってくれるところが多分にあって、そういう人たちの前だったからああいうものができたのかなと思います。
川井 あれは面白いですよね。時間の調整が慣れるまで難しくて、200枚準備して1時間喋ろうと思っていたんですけど、30分しか喋れなかったですよ。高橋 そんなものだと思いますよ。
川井 ですよね。なので1時間喋ろうとすると、400枚くらいいるんだと思いましたね。今度、会社の新しい期の方針の説明も、高橋メソッドでやろうと思っているんです。高橋 準備が大変ですよ。
川井 まあ、パワポならそんなに重くないし。高橋 パワポだと、300枚目のやつを100枚目あたりに移動して入れましょう、みたいな操作が大変なんですよ。
川井 なるほど、確かにそうですね。高橋 あれは、パワポのインターフェイスが悪いとは思うんですが、そもそもそういう使い方をする方が悪いのかもしれないですね(笑)
川井 そういうのを想定していないでしょうからね(笑)高橋 あれはたまたまできましたっていう感じですね。でも、あれは準備をすればするほど枚数が増えるんですよね。
前田 作っておけば、喋ることが頭に入ってなくてもいいんですよね。 川井 そうそう、作っちゃえば、あとはアドリブだけ。でも事前に自分でやってみないと分からないんですよね。喋りすぎると、喋ったばかりのことが次のページで出てきたりして慌てたりもしますよね。 前田 この前、無茶振りで、他人が作ったやつでプレゼンしろって言われたことがあっったんです。高橋 それはしんどいですね。
前田 ストーリーが頭に入ってないので、必死に読み込んでやってみましたけど、結果は惨敗でした。高橋 他人のは難しいと思いますよ(笑)
エンジニアの幸せって?
高橋 「幸せなエンジニア」っていう話がありましたが、エンジニアであることだけに幸せを求めない方が結果的に幸せなエンジニアになれる気がします。特定の技術分野を極めて幸せなエンジニアになれるのは少数だと思うんですよ。なれる人はよっぽどラッキーだと。なので、あまりその技術にフォーカスしすぎてしまうと、かろうじてサバイバルできたとしても、いい意味で尊敬できなくなるとか。駄目そうだと思ったときに無理にしがみつくと、自分も駄目になりかねないので、駄目なら駄目でいいんじゃないっていうくらいでいいと思うんです。それだけが幸せじゃないしねと吹っ切れた方が幸せなんじゃないですかね。
前田 こだわり過ぎないってことですかね。高橋 こだわるのも重要だったりもしますので、一概にはなんとも言えないんですけどね。
川井 そういう風に言っているのは、エンジニアって他の職種に比べて辛そうに見えるんですね。そんな風に感じちゃっているところがあるんですよ。エンジニアだけがハッピーになればいいっていうのでもないんですけど、少なくとも他の仕事と比べても引けをとらないよというものにしたいのはありますよね。まあ、若い世代は自社サービスの開発をできるケースが増えたりというのもあるので、最近の事情は違ってきているのかもしれないですけどね。高橋 この文脈で「エンジニア」、プログラミング寄りのエンジニアっていっちゃうと、圧倒的に業務系のプログラマとかSEとかっていう印象になっちゃうんですけど、別にそれだけじゃあないしって思いますね。Web系のたたき上げで来た我々からいうと、そういう世界でもなかったんで。黎明期は「Webってなんだろうね」「プログラミングってどうあるべきなんでしょうね」っていう人たちが試行錯誤しながらHTMLを書いたりCGIを書いたりする、それが普通で、上流も下流もないんですよ。間に広告代理店が入るような場合でも、代理店もコンピュータなんか知らないから「プログラミング言語なんて、動けば何でもいいですよ」っていう感じでしたね。だから、「下流で大変でした、早く上流工程ができるSEになりたいです」っていうのは、体感としてはなかったんですよね。感覚としてそういう世界にいなかったんです。なので、業務系の印象で、そこだけフォーカスされるのは嫌だなっていうのがあります。話だけなら昔はJavaをやっていないとまずいんじゃないかとか、SEとかSIとかがいいんじゃないのかなとか言われることはあったんですが、でもそれも気のせいでしたね。
前田 この世界で食っていこうとすると、やっぱりJavaはどこに行っても使われているし、あとは設計とかするようになったらUMLとかを勉強した方がいいんじゃないかっていうのが先に立っちゃうんですよ。高橋 当時、90年代の終わり頃から2000年の頭にかけてっていうのは、Perlもさほど尖ってなくて、PHPも出てきたんだけどまだまだいまいちで、Rubyってなんですかみたいな状況があって、その頃にWebのプログラミングで食っていくならもちろんJavaですよねっていう感じが大きかったわけですよ。でも実際にはそうでもなかった。
前田 「そうでもなかった」っていうのはどういうことなんですか?高橋 まあ、PHPでも、今ならRubyでも食えるわけですよ。つまり、LLでも、それなりのメンテナンス可能なサイト構築が可能になってきたと。あっという間にRubyが流行ってしまったり、そもそもPHPでもちゃんと書ける人の間では困っていないですからね。
川井 やっぱり変わっていくんでしょうね。なんでもそうだと思いますよ。高橋 世の中に出回っている情報とか、特に将来についての話は、あまり信用できないですね。みんなが言っているからといって正しいわけではないですよ。一部の人たちの声がでかいだけのこともありますから。もちろん、儲かるかどうかっていうのは別の話で、Javaの方が多くの人を儲けさせられるのかもっていうのは正直ありますけどね。まあ、Webで公開されるインタビューで言うのもなんですが、メディアとかWebの情報にあまりに振り回されるのもいかがなものかなって思いますよね。
前田 これまでに武勇伝に登場したハッカーの方って、これだっていう確固たるものがある方が多かったと思うんですけど、高橋さんの場合って、ちょっと違っていて、物事の「一長一短」っていう本質をすごく理解しているっていう感じですよね。高橋 私の世代だと「ポストモダニズム」の全盛時代なんですよ。よい意味での相対主義が流行っていた上に、SFの人って相対主義が大好きで物事を両面から見たがるんですよ。そういう世代的な影響は相当自分の中に感じますね。
川井 なるほど。でも高橋さんの場合、客観的に両面から見ているだけでなく、自分自身がどういう道に進んでも幸せになれるんじゃないかなっていう気がしますね。高橋 いや、それは本当にラッキーだっただけですから。
川井 でも、他の道に行っても、たまたまラッキーだったっておっしゃってるような気がしますよ。高橋 いやいや、難しいと思いますよ。
川井 自分の人生に対して懐がすごく広い感じがしますね。 前田 そう感じますね。高橋 もしRubyを知らなかったら、プログラミングのことも良く分からず、一生の仕事としてプログラミングが出来たかどうかも分からないと思いますね。プログラマ辞めちゃったってことも普通にあったかもと思うんですよ。
川井 僕の感覚では、プログラムをやめても、幸せになったんじゃないかなって思いますけどね。高橋 いや、実際前職の会社の経営が悪くなったのも20代の終わりから30代にかけてのときで、そのときはまだたいしたスキルもありませんでしたし。何もスキルがなくて30近くて、そんなに景気も良くなくてときたら、再就職するのも大変だと思いますよ。一番ひどかった時は、原稿料収入もそのまま生活費に回してたくらいですから、もしそういうのがなくて、借金するにも将来の見込みもないなら実家に戻ってぜんぜん関係ない仕事についてくすぶるだけ、というストーリーもそれなりのリアリティを感じるくらいです。
川井 さっき言ったようにネガティブシンキングなのでそう思っていますが、やっぱり上手くいっていると思いますよ。私は相当なポジティブシンキングですからね(笑)高橋 そういう意味では、今ならそれなりに成功してきているっていうのがあるんですよ。
川井 まあ、確かに他の世界で、そのレベルまでいけるかどうかっていうのはありますよね。高橋 今よりも上は、それは難しいだろうって思います。それなりに名前が出たり、本を出せたり、本当に英語が苦手で日常会話すらろくにできないくせに、海外でもプレゼンをさせてもらえるなんて、普通ありえないじゃないですか。
川井 それは、おっしゃる通りですね。なかなかないですよね。高橋 本当にラッキーだったと思っています。
前田 でも、タイミング、タイミングで自分から行動を起こしている結果ですよね。 川井 そうそう、自分で手を挙げていますからね。高橋 いや、タイミングが違って滑ったこともいっぱいあります。成功したものだけつなげていれば、毎回成功しているように見えるかもしれませんが、それは全然気のせいでです。まあ、手を挙げるタイミングもあるとは思いますけど。成功もしないのに何度も手を挙げていたらいろいろしんどいですしね。私はあまり打たれ強くないので、打たれないように気を配っているところもあります。何でもいいからとにかくブログを書けとか、打たれ強くなれとか、とにかく目標を決めて達成に向けてがんばれとかっていうのは、向いている人もいるんでしょうけど少なくとも私はぜんぜん駄目で、そんなこと出来たら苦労しませんし、人格改造まがいのことまでしたいとも思ってないんです。
川井 なるほど、私と高橋さんとでは、正反対ですね。打たれてもなんともないですもん(笑)高橋 そうなんですか。私は根が小心者なので、いろいろ策を練って、それなりに準備ができてから、そろそろいいかしらって考えてから手を挙げるという感じなんですよ。RubyのMLに入って発言するのだって、しばらくROMして、そろそろ大丈夫かなって感じになってからですからね。
前田 用意周到派なんですね。高橋 用意周到っていうか、石橋を叩いて壊そうとしてみるんです。それで壊れなかったら渡ろうかなって(笑)
川井 なるほど(笑)そんなこんなでいつの間にか2時間半になってしまいました。高橋さん、今夜は楽しいお話をいろいろお聞かせいただきありがとうございました。高橋 こちらこそ、ありがとうございました。 次に紹介したのは→荻野淳也氏(コントロールプラス株式会社)
- プロフィール高橋征義 氏 1972年生まれ。北海道札幌市出身、北海道大学大学院工学研究科修了(情報工学) 現在は株式会社ツインスパークに勤務し、Webアプリケーションの開発に携わっているかたわら、 2004年8月に「日本Rubyの会」を設立、会長を務める。また、プレゼンテーションの手法である「高橋メソッド」でも知られている。 Rubyに関する著作(共著)として「たのしいRuby―Rubyではじめる気軽なプログラミング」「Rubyレシピブック 268の技」、単独の著作としては「でかいプレゼン 高橋メソッドの本」がある。 たのしいRuby 第2版サポートページ http://www.notwork.org/sbcr-ruby/ Rubyレシピブック サポートページ http://www.notwork.org/rubyrecipebook/ 高橋メソッドについて紹介するページ http://www.rubycolor.org/takahashi/

