Rubyist Hotlinks 【第 3 回】 かずひこさん

はじめに

Rubyist Hotlinks は、毎号、著名な Rubyist にインタビューを行っていこう、という企画です。基本的には、前回のインタビュイーに、その次のインタビュイーを紹介していただくことになっています。ということで、前回のインタビュイーの前田修吾さんからのご紹介で、今回は、かずひこさんにインタビューさせて頂きました。

なお、このインタビューは、まつもとさん、前田さん同席の場で行われました。 というわけで、時々お二人の鋭いツッコミも入っています。

かずひこさんのプロフィール

kazuhiko-top.jpg★シャア「名字が付いてない」☆一兵卒「あんなの飾りです。偉い人にはそれが分からんのです」

大阪で生まれ、高校は神戸、大学は京都と京阪神を股にかけた青春を送る。 卒業後はグラフィックデザイナとして働く傍らオープンソースソフトウェアの制作にはげみ、その縁がめぐりめぐってまつもとさんに目をつけられて、今年 8 月に株式会社ネットワーク応用通信研究所に転職。

家族は夫人のゆうなさん、だけれど、来年 3 月まで単身赴任の予定。

好きな言葉
「遅くてもしないよりはまし」
尊敬する人
高林さん・たださん・まつもとさん
ホームページ
かずひこ空間

インタビュー

聞き手
ささだ
語り手
かずひこさん
野次馬
まつもとさん、前田さん
日にち
2004 年 8 月 30 日
場 所
株式会社ネットワーク応用通信研究所 本社

好きな言葉、尊敬する人

ささだ
好きな言葉、座右の銘はなんですか?
かずひこ
実は高林さんと一緒なんですが「遅くてもしないよりはまし」というやつでしょうか。`better late than never’ だったかな?1
ささだ
(「しないほうがまし」とメモメモ)
かずひこ
いや、「しない方がまし」じゃなくて「しないよりまし」。「遅かったらしない方がまし」なんてそんな投げやりな。
ささだ
「遅くなっちゃったけどやってみたらよかった」ということはありますか?
かずひこ
転職を決意したのが 31 歳。で、実際にこっち2で働きだしたのが 32 歳だったんですが、もうちょっと早かった方がおもしろかったのかな、と思う半面、これより遅くなくてよかったね、ということですね。
ささだ
やはり、こちらに来て、面白くなったのでしょうか?
かずひこ
そうですね。たとえば、これがもうあと二年後とかだったら、本当にそれを実行できる勇気があったかどうかもわからないし。でも、やっぱり早い方がいいとは思います (笑)
一同
(笑)
かずひこ
だから、若い人は何でもさっさとチャレンジした方がいいんじゃないかなと思いますけど、それでも「遅くてもしないよりはまし」と思っています。
ささだ
尊敬する人は?
かずひこ
せっかく「るびま」ネタということなので、今こうしてここにいることに大きな役割を果たした人のご紹介になるんですが、おおざっぱに言うと 3 人いて……最初は、そもそもフリーソフトウェアやオープンソースのコミュニティに誘ってくれた高林さん3。次が Ruby への入口を作ってくれたたださん4。最後は松江へのきっかけを作ってくれたまつもとさん5
まつもと
目の前で監視してるから言わざるを得ない (笑)
かずひこ
一応 3 人とも尊敬していますよ。念のため。
ささだ
このお三方とはどんな感じのお付き合いでしょうか?
かずひこ
高林さんは電子辞書オープンラボ6の主宰をしてらっしゃって、僕はその頃電子辞書系のソフトウェアを Perl で書いていたので、「それだったら一緒にやりませんか」みたいな感じで声をかけてくださったのがきっかけです。たださんは、tDiary 7 を使うようになったから Ruby を読むようになったので、という感じですね。
ささだ
で、まつもとさんと。
かずひこ
はい。
ささだ
すごい豪華な顔ぶれですね。
かずひこ
うん。でも運がよかったとは思っています。自分がちょっとやろうとしたアクションに対して、いろんな幸運も重なって、そしていい結果がついて来たという感じですね。

生い立ち

ささだ
では、生い立ちから。
かずひこ
生まれは大阪の羽曳野市という田舎なんですが。
ささだ
はじめて書いたコードとかは?
かずひこ
五歳くらい離れた兄がいてて、コンピュータに興味を持ってたので、小学校の三年くらいには、雑誌に付いてたコードを打ち込んでたりとか、それを自分でいじったりとかはしてました。
ささだ
それでどんなことをされていたんですか?
かずひこ
PC-8001mk28 というやつで BASIC をいじったり、Z809 のアセンブラを書いたりしてましたね。でも、その後、中学から大学の三年生くらいまでは、一切コンピュータに関らずに、はい、堅気の人でしたよ (笑)
ささだ
かずひこさんは、以前はデザイン系のお仕事されてましたよね。デザインの方にはどうして?
かずひこ
大学の専攻は建築だったので、その延長でデザインの方に。
ささだ
じゃあ、その間は何やってたんですか?
kazuhiko05.jpg
かずひこ
普通の青春時代を送ってました。高校はずっと男子校だったんだけれども、テニス部に入ってたりとか、放送部だったり、新聞委員会だったり、何かそういうメディア系のことをやっていて……いや、すごく普通の人でしたよ、別に。
ささだ
でも、それ、何か計算機触ってる人が普通じゃないような (笑)
かずひこ
いやいや (笑)
前田
自分で普通って言う人は怪しいですよ。
かずひこ
やばいー (笑) えーと、大学で修士に行った時に、研究室でワークステーションを触ったりしたので。
ささだ
建築のまま上に進んで?
かずひこ
うん。で、修士の時に、計算機使いながら建築の設計支援などをやっている研究室だったんで、ワークステーションの管理をやってて、管理しながら使っているプログラムの中を覗いたりとか、だいたいそんな感じ。私の場合、そういう意味では、建築が専攻で、デザインが専攻だったわけじゃないんですね。
ささだ
デザインと建築ってぜんぜん別でしたか?
かずひこ
そうねえ、この間までやってた仕事は、建築の時にやってたこととぜんぜん別だから。物の大きさも違うし。
ささだ
あ、ではその話を。修士で建築のことをやって来て、その後は?
かずひこ
修士の時は大学でそういうことをやりながら、個人的には興味はデザインの方を向いていたので、それで就職も選びました、っていう感じですね。
ささだ
デザインの方で就職されて、どういうお仕事をされてたんですか?
かずひこ
主にはグラフィックデザインで、パッケージ10を作ったりだとか、ポスターのデザインをやったりとか、そんなことをやってて、で、夜な夜なとか週末とかに何かプログラムを書いたりだとか……そういう風な感じで二重生活を送ってました。
ささだ
それが、逆転したわけですか、ここへ来て。
かずひこ
そうですね (笑) おおざっぱに言うと。逆転したっていうのもあるし、あと、ゆうなもデザインをやっているから、自分一人で二足の草鞋よりも、夫婦で二人三脚みたいな感じで、それぞれやって行くのも面白いかもっていうそんな感じ。

主なソフトウェア作品

ささだ
代表作っていうと……いっぱいありますよね。
かずひこ
えーっと、結構節操ないんですが。代表作……難しいですね。たぶん、一番有名なのは、五百円で雑誌に付いて来たマイペディアという辞書を変換できるっていう mypaedia-fpw かな、Perl ですが。今は……そうねえ……辞書引きソフトの let me see… と家計簿ソフトのももんが家計簿は今でも毎日使っているので、そのあたりにしといてください。
ささだ
Momonga は中心のお一人ですよね。
かずひこ
あ、ももんが家計簿と Momonga Linux 11 はぜんぜん関係なくて、あれは単に家計簿ソフトの名前がももんがと言っているだけなんです。
ささだ
Momonga のプロジェクト自体は代表作じゃないんですか?
かずひこ
うーん、あくまでもプロジェクトの一員ですからね。あえて代表作と言うならば、Momonga のキャラクタを描いたくらいでしょうか。
ささだ
あ、あれ、そうなんですか。
かずひこ
うん、うち12の代表作ということで (笑)
ささだ
では、お二人ともデザイナ関係?
かずひこ
京都で働いてた時は、同じ会社で二人ともデザイナをしていたので。
ささだ
あ、社内で。
かずひこ
社内で……いきなりそこらへんまで飛びますか。社内で、そう、はい (笑)
ささだ
へえ……で、かずひこさんはデザイナとプログラマ、どっちなんですか?
かずひこ
そうですね……まず、私の中ではその二つがあんまり違うもんだとは実は思ってないんです。表現手段はもちろんぜんぜん違いますけども、表現しようとすることとか、想いとか、そのあたりは根っこが共通だと思っていて。デザイナっていう職業もある種エンジニアだと思っていたし、もともと art って技術だったり芸術だったりするわけだし。そういったこととかも含めて、あんまりその二つを区別してなくって。

Ruby について

好きなメソッド、嫌いなメソッド

ささだ
好きなメソッド・嫌いなメソッドは?
かずひこ
好きなメソッドはイコール三連発でしょうか。
ささだ
===?
かずひこ
それがソースの中にあると、かわいくて、何かいつもなごむので。
ささだ
そうなんだ。
かずひこ
あくまで見かけですが。他の言語にはあるの?
まつもと
Icon 13 にはあるけど、ってそんなマイナーな。最近見かけるようになったような気がする。 Groovy14 にもあるし。
かずひこ
ああ。
まつもと
あれは Ruby からの影響なのかなあ。
かずひこ
== は別にどんな言語でも出て来るし。
前田
いや、そんなことはないっすよ (笑)
かずひこ
一般人な言語には出て来るし (笑)
まつもと
Groovy の === は Ruby の equal? になってたような気がする15。identity equal というか。
前田
あの辺は微妙ですよね。== と eql? を分けるべきかどうか、とか。
ささだ
Lisp 系の言語には == はないですよね。
まつもと
== はない。うん。
ささだ
関数型系。
かずひこ
なるほど。
まつもと
えっと、eq か、eql か、equal か、= か、そんなにあるなよ。あ、equalp もあるか16
かずひこ
また、飛びましたが (笑) ビジュアル系としては見た目重視で === がお気に入りです。
ささだ
スペースシップ演算子(<=>)は?
かずひこ
ああ……微妙にかわいいっぽくて、あんまりかわいくない。
ささだ
やっぱりこれ(===)がかわいい?
かずひこ
そう。あと、スマイリーみたいな演算子が出て来たらもっとなごむのにとか思ったり (笑)
前田
何に使うんですか?
かずひこ
何に使うんでしょうね (笑) で、嫌いなメソッドは……そうですねえ、色々とあった17ので eval なんですが。
一同
(笑)
かずひこ
でも eval が嫌いだというより、String#inspect が “#” もエスケープしてくれたらよかったのに18
前田
でも String#inspect はデバッグ用のもので、そういう用途には使わないような。
まつもと
もう一ついるんだよね、きっと。eval すると元に戻るような文字列化。
前田
昔、そういうのが欲しいって言ってて、名前が決まらなかったんですよね。 stringify はどうか、とか言ってて。
ささだ
Lisp の read と write ですよね、結局。
まつもと
そうそう。
かずひこ
dump だったら日本語が読めないのが嫌だっていうのがあって、inspect 使ったら、”#”をエスケープしてくれなくて、地雷踏んでどかーん。とか言い出すと長いので、eval が嫌いということに。ていうか、使わんでいいなら、使わんでおこうと。
ささだ
YAML が安心して使えれば。
かずひこ
そうそう。
前田
YAML が安心かどうかも怪しいですよね19 (笑)
かずひこ
けど、Hiki20 の場合は、設定ファイルの eval をやめて YAML あたりにしたら、人間が読めて、その気になったらちょちょっといじれて、まあ、それなりに safe に eval できる、と。
ささだ
それが前田さんへの答え21なんですよね。
かずひこ
はい。
前田
YAML になるらしい、と。 でも YAML で安全かはよくわかんないですけど。
かずひこ
けど、YAML でダメだったらそれは私のせいじゃない (笑)
前田
それが正解かもしれない (笑)
ささだ
YAML の別実装もあったらよさそう22な気がするんですけどね。
かずひこ
今の Hiki は、$SAFE = 4 にしてスレッドの中で評価したりとか、ごにょごにょやっていますけど、Thread#join するのを忘れていて、実は高速リロードしたら認証をパスできることがあったりとか、色々問題が (笑)23
ささだ
やっぱそういうとこはベタに書いちゃだめですよね。フレームワークか何か使わないと。
かずひこ
というわけで、そんなことをしていますという感じですね。

Rubyist になったきっかけ

ささだ
Rubyist になったきっかけは…… tDiary ですか?
かずひこ
そうですね。もともとはハイパー日記システムで日記を書いていたのですが、tDiary に乗り換えたのは、簡単に言うと、tDiary の開発コミュニティが面白そうだと思ったからです。それはひいてはたださんとかの人柄みたいなところかもしれないですね。それで tDiary に乗り換えて、その頃から、自分がちゃんと使うものはできるだけ開発に参加しようと思ってたので、tDiary のコードも読んだりとか、ここをああしたい、こうしたい、とかやっているうちに commit 権をいただいて。で、tDiary を隅から隅まで読んでたら、それなりに Ruby のコードも何となくわかってきて。
ささだ
やっぱり、Ruby は tDiary を実現するための言語?
かずひこ
そうですね (笑) 「あの、tDiary にいるやつでしょ、Ruby って」 (笑) 私にとっては実はそんな感じかもしれない。

Ruby とわたし

: kazuhiko01.jpg

ささだ
tDiary がきっかけで Rubyist になって、それで、現在は?
かずひこ
現在も基本的には Web アプリケーションみたいなもので使う言語として。私の最近のプログラミングネタって、家計簿にしても let me see… にしても、ほとんど Web アプリばっかりだったので、Ruby で Web アプリを書くと気持ちいいかもってのが今の付き合いです。
ささだ
Web アプリケーションで、インフラみたいなので使ってるものってあります?
かずひこ
最近ちょっとそのへんを業務命令で調査中だったりするんですが、WebObjects の仕様をベースに鈴木さん24という方が作っていらっしゃる CGIKit というのがあって、これの設計が面白いなと思って、使うというよりは、CGIKit のソースをなめ回していますね25。色々な比較をして、これがいい、これが嫌、とかやっているところですが、まだちょっとあんまりまとまってないので、その結果はまた後日ということで。
ささだ
Python だったら Zope26 でいいやみたいな雰囲気があるじゃないですか。そこまで確固たるものは Ruby にはまだないですか?
かずひこ
そうですね。たくさんあるわりには、この自分で作ったフレームワークを使ってこのサイトは動いていますみたいな、そういうマーケティング的な話はほとんど聞かなくて。Ruby on Rails はそういう事例なども紹介してたりしますけど、実はフレームワークって作るのは楽しいけど、使ってもそんなにうれしくないんじゃないのかという疑惑があったりして。
ささだ
どうなんでしょうね。マーケティングが下手なだけなのか、ほんとにその人だけ用になっているのか。
かずひこ
ほんとは Web アプリケーションをバリバリ書く人たちがそのへんの発言をしてくれた方がいいと思うんですけどね。あんまりそういう発言が聞こえて来ないな、という感じですね。
ささだ
そういう人たちは、そもそも Python とか PHP とかに流れちゃうんですかね。
かずひこ
ただ、それぞれの会社で、会社独自のフレームワークみたいなものを作って、とくにそういうフレームワーク自体の存在は知られてないけれども、中では実は Ruby 動いているんだよ、みたいな、そういう話はあるんだろうなとは思います。
ささだ
ほんとに、アプリケーションをぱっと作れる何か定番のフレームワークがあるとうれしいですね。とりあえずこれ、というような。
かずひこ
そうですね、はい。何か一個でも評価が落ち着いて、これいいよってことになったら、Zope じゃないけど、みんながそこに集まってきて、またフィードバックがあってとかで、コミュニティとかが形成されていくのかなとは思っています。

Ruby の好きなところ、嫌いなところ

ささだ
Ruby の好きなところと嫌いなところは? Perl とか使われてたわけですよね?
かずひこ
ああ、そうですね。もとが Perl だったんですが、この間ひさしぶりに辞書系で Perl のスクリプトを書いていたら、ほとんど覚えてなくって。覚えてないだけじゃなくて、調べながら書いてたら、こうむずがゆくなって、いつの間にか Ruby な体になってしまったんだな、と思ったんですが、思えば自然に書けるところがきっと好きなところなんだと思います。
ささだ
とくに嫌いなところはないですか。
かずひこ
そうですね。ささださんが Ruby を速くしてくれるならぜんぜんオッケーです。27でも、嫌いなところとかは今のところないですね。そんなに濃ゆい付き合いをしてないだけかもしれないけど。
ささだ
かずひこさんで濃ゆくなかったら……。
かずひこ
いや、Ruby でいろんなことやっているわけじゃないので、Ruby でできることの、ごく一部のところしか使ってなくって。限られたクラスの限られたメソッドだけ使っているみたいな感じなので。だから、1.8 になってから大量に増えたライブラリとかほとんど見たこともないっていう感じ。YAML くらいでしょうか (笑) REXML も時々使うかな。

Ruby を使った事例

ささだ
Ruby を使って成功だったとか、上手く行った事例は?
かずひこ
ももんが家計簿を作る時に、月ベースだし、ある意味日記みたいなものだよね、ということで、フレームワークとして tDiary を使おうと思って、tDiary のコードから出発して、いらないところを消して、いるところを追加して、とかってやったら思いのほか簡単に家計簿が作れました。Ruby を使って成功だったという例というか、tDiary をパクって成功だったという感じで (笑) まあ、実際、私にとっては、Web アプリケーションの教材として、結構 tDiary は役立ってました。

Ruby のキラーアプリ

ささだ
そうなると、自分にとっての Ruby のキラーアプリはやっぱり tDiary ?
かずひこ
うん、そうかな。あと、ほんとに tDiary はいろんなテーマがバラエティ豊富にあるので、家計簿でも let me see… でも tDiary のテーマが意味もなく使えたりするし、最近開発に参加している Hiki も「何か tDiary のテーマが使えるらしい」「Ruby で書いてあるらしい」というのが、最初使いはじめた理由なので (笑) ああ、tDiary の呪縛からやっぱり逃れられないかも〜 (笑)

Ruby の習得

ささだ
Ruby の習得は簡単でしたか?
かずひこ
最初は Perl だったので、はじめて Ruby の本を読んだ時は「何じゃこりゃあ」って。
ささだ
ブレースがないところとか?28
かずひこ
ひっかかったっていうか、ほんとに「イテレータって何?」っていう感じだったので、それが何かすごく新鮮で、よくよくわかると、「へえ、面白い」という感じでした。簡単って豪語できるほどにはまだ習得してないと思っているので (笑) まだまだ勉強ですが。

プログラミング全般

Ruby 以外の利用言語

ささだ
Ruby 以外のプログラミング言語は? Perl ですか?
かずひこ
大昔は C をちょっとかじってたりとか、辞書関係で C で書かれた eblook29 っていうやつのメンテナンスを手伝ってたり、Emacs Lisp で書かれている lookup30 とかのメンテナンスに関わってたりとかするので、何かといろんな言語を読むことはありますけど、積極的に書ける言語はやっぱり Ruby くらいですね。
ささだ
他の言語で何か好きな言語ってありますか? 使ってるかどうかは別にして。
かずひこ
前のお二人と違って基本的に言語オタクじゃないので (笑) あの言語はどうだ、この言語はどうだ、って言えるほどのものは知らないです。あ、でもこの前の LL Weekend なんかで、あらためて Squeak31 とか面白いなって思ってて、素人目にも「すげー」とか言わせて、玄人にも「すげー」って言わせられる言語ってけっこうすごいなとか思いました。

興味を持っているテーマ

ささだ
今興味を持っているテーマは?
かずひこ
デザインの時にも、プログラミングで何か作る時も、人間のコミュニケーションっていうのが自分の中では大きなテーマで、辞書だったりフォントだったりにしても全部そうやし。
ささだ
人と人と、ってことですか、それとも人と計算機?
かずひこ
結局、人にとってのインタフェイス。あ、コミュニケーションじゃなくてインタフェイスっていう方が近いのかな。まあ、日記とかだったらコミュニケーションやけど、やっぱり人と人っていう感じですかね。やっぱり最後に大切なのは人だと思いますので。
ささだ
そういうのに関する技術としてプログラミングとかデザインを、と。
かずひこ
うん、そういう感じでしょうか。

フォント

ささだ
フォントにもすごく興味を持たれて、いろいろやっていますよね。
かずひこ
はい。
ささだ
フォントへの関心は、デザインをやってた関係で興味があるってことですか?
かずひこ
そうですね、デザインの時にそのへんが主に興味の対象だったので、コンピュータの方でも自分なりに何かできることないのかなっていうことで、いろいろやっています。でも、そっちは私よりもいろいろやっていい成果をあげている人がいらっしゃるので、あくまでそのサポートという感じですが。
ささだ
フォントのデザインって私はぜんぜんわからないんですけど、それまでされてたデザインとは……同じところもあれば、違うところもあると思うんですけど。
かずひこ
日本語の場合って並じゃない根気が要求されるんですが、それが私にたぶん一番欠けている能力なので (笑) 一つのモチベーションとか方向性をひたすら維持できる根気っていうのがいるので、あんまりそういう人の邪魔をしないように。そういう人の成果をどうやって公開するか、とか、フォント関係のプロジェクトはもっぱら「サポートして行きたいな」という感じでやっています。

Momonga Linux

ささだ
あと、最近、家に帰ってからは何を?
かずひこ
何やってるんだろう……最近は会社の延長のことをやっていることが多いんで。
ささだ
ああ、さっき言ってた調査とか。
かずひこ
うん。あとは、Momonga Linux の方のパッケージメンテナンスをやってたりだとか、そっちの Web のシステムをちょっといじったりだとか、やってたりします。
ささだ
Momonga は 1.0 が出たんですよね?
かずひこ
おめでとうございます。
ささだ
おめでとうございます。
かずひこ
はい (笑)
ささだ
あれは、最初はどんな感じで?
かずひこ
Kondara32 の時からやってたのですが……きっかけは何だったんだろう。あれも、そうですね、tDiary と一緒でコミュニティが面白そうだから Kondara を使いはじめたっていう感じで、あとはいろんなことがあって Momonga Linux が立ち上がった時も、一緒に力になりたかったので参加して……そんな感じですね。
ささだ
Momonga はもう OK っていうか、普通に使えるディストリビューションになりましたか?
かずひこ
1.0 がどういうものかっていうのは……私は結局開発版の先っちょを使い続けているので、1.0 のクオリティっていうのは実はあんまりよくわかってなかったり (笑)
前田
そこはオフレコにした方がいいんじゃないですか (笑)
ささだ
私も Momonga 使ってるんですが、問題なく使えていますよ。
かずひこ
じゃあ、そんな感じで書いといてください (笑)
ささだ
(笑)
かずひこ
開発ツールがほとんど Ruby で書かれているので、そのへんをこれからもっといろんなものを作っていって、Ruby が好きな開発者にとって面白いディストリビューションだったりコミュニティだったりしたらいいのかなって思っています。お待ちしております。

日常生活など

普段の仕事

ささだ
プログラマになられて、最近の普段の仕事の内容っていうのは、さっきの調査?
かずひこ
調査っていうか、Web アプリケーションを Ruby でどうやって書いていくか、たとえば、どうやったらもっと効率良く作っていけるかとか、メンテナンス性のいいものを作っていけるかとか、一人だけじゃなくて何人かで作る場合はどういう風な開発スタイルが一番いいのかとか、そんなことを今はやっています。あとは、さっきちょっと話題になった検索どうのこうのとか、まつもとさんのメールオーガナイザーとかで出て来たネタもちょっとやったり。あとは、うちの会社って、新卒で入ってくるとても若い人と、私みたいに中途で入って来る人っていうのがけっこう混在してて、スキル的経験的にもばらばらだったりするので、そういう人と人との間を繋いで行きたいなとか、そんなことに気を遣いながら働いています。
前田
ありがとうございます (笑)
ささだ
そのあたりは前田さんと違いますね (笑)
前田
いやいや。
かずひこ
いやいや、違わないですよ、前田さんとはさっきもそういう話をしていて。
まつもと
投げやりなのは僕だけだ (笑) やるやつは自分でやれ、と。
前田
まつもとさんとも、週一回くらいみんなでお昼食べながら話しましょうよって言ってたんですけど、もうお昼までに来られなくなってしまって (笑)
まつもと
また来るようにするから。
shugo05.jpg
かずひこ
お昼はだいたいいつも 30 分くらいでごはんを食べて、その後ミーティングと称して、いろんな話に花を咲かせつつ、気がついたら二時半とか、そんな感じです。
前田
情報交換 (笑)
ささだ
会社で Ruby 教室を行う、というような話を聞きましたけど、それもその一環として?
かずひこ
そうですね。自分で勉強しなさいってのはもちろん当り前なんですが、きっかけ作りとかやっぱり大事だと思うし、一緒に勉強したら、一人で悩んでてぜんぜん解決しなかったことがあっさり解決ってこともあるだろうし。仕事って XP33 とかバリバリやってたらそういうのもアリなんでしょうけど、さっき前田さんが言ってたみたいに、基本的にそれぞれ一人でやっている感じが多いので、もうちょっとみんなで時間とか経験を共有する機会が欲しいかなということでやっています。

生活スタイル

ささだ
生活のスタイルの方は?
かずひこ
今は一人暮らしというか単身赴任なんで、けっこういい加減なんですけれど、だいたい朝 8 時から 10 時の間に起きて、9 時から 11 時の間に会社に来て、で、ごはんを食べて。
ささだ
お昼ごはん?
かずひこ
そうそう、お昼ごはん。で、昼食後のミーティングをして (笑)
前田
いったい何時間働いてるんだ (笑)
かずひこ
で、仕事に戻って。
まつもと
いいじゃん、人の倍効率が良ければ。
かずひこ
(汗) で、だいたい夜はお腹がすいたら帰ります。あとは、今は一人暮らしなんで、家でも気軽にコンピュータを開けますから、コードを書いたりとか、ソースを読んだりとか、って感じですね。ゆうなと一緒に暮らすようになったらまた変わって来るでしょうけど。
前田
毎朝 9 時に出社とか?
かずひこ
いや、それよりは、どっちかというと、家に帰ってからあんまりコンピュータを触れなくなる (笑)
前田
会社にいる時間が増えたりして (笑)
まつもと
「帰るとできないから会社にいよう」 (笑)
前田
かずひこさんは奥さんには何やってるかわかっちゃうんですかね。仕事って言ったら「ああ、そうなの」っていう風にはならないんですか。
かずひこ
そうですねえ、IRCしていたらとりあえずさぼっているってバレますし。
まつもと
うちは、僕が何やってるかわかんないと思う。
前田
うちもそうですね……とか言って。
かずひこ
IRC とメールの区別も付かない?
前田
いや、それはないな。
まつもと
うちの奥さんは付かないな。とりあえず、字がいっぱい出てれば。でもマンガか何かが出てるとバレちゃったりして (笑)
前田
たまにささださんが IRC に張る URL を開いたりするとバレると思いますけど (笑)
かずひこ
たまにきたさん34の日記のリンクを開いたりするとバレるかも (笑)
ささだ
一緒にしないでください (笑)
まつもと
気を付けないといけないよね、そのへんは。
かずひこ
でも、まあ、今はそういう生活していますけど、一緒に暮らすようになったら家ではできるだけ家の時間にしたいなって思っていますよー、思ってるからねー (笑)
前田
誰に言ってるんだ (笑)
まつもと
ゆうなさんの日記にツッコんどいてあげる。

仕事とプライベートの両立

ささだ
じゃあ、仕事とプライベートの両立っていうのは、今は単身赴任だからあんまり境界はない?
かずひこ
そうですね、あんまり境界はない。
ささだ
でも、まあ、自分のプロジェクトはおうちで帰ってから……。
かずひこ
そうとも言い切れないとこが微妙なんですが。
前田
うちは副業は禁止されてないですから、会社でやってもぜんぜん問題ないんですけど。
まつもと
ぜんっぜん問題ない。
かずひこ
会社でも個人的なプロジェクトやっているし、家でも会社的なプロジェクトやっているし、知識とか経験みたいなとこがほとんど共有だったりするし。やっぱり、いろんな経験を積んでスキルアップすることは、会社的にも社会的にも結局はいいことにつながるでしょうし、と言い聞かせています。

コンピュータ以外の趣味

ささだ
映画・本・音楽・ゲーム・スポーツなどは?
かずひこ
ゲームは、やっている暇がどこにもないので、手を出さないようにと、いつも気を付けています。映画は最近家で見るのが好きで、単身赴任で暇だし時々映画見たりはしていますけども。
ささだ
どんなの見てるんですか?
かずひこ
けっこうヒューマンドラマとか見て、「ええ話やなあ」とかってうるうるするのが好きなので (笑) そんなのばっかり見ていますね。

使用しているマシン

: kazuhiko04.jpg

ささだ
普段使っているマシンのスペックとかは?
かずひこ
個人的には開発マシンのスペックはどうでもいいんですが、私の場合サーバのスペックの方がはるかに重要で (笑) 今置いているサーバは Pentium III の 1.2GHz で、きたさんに結婚祝いでいただいた CPU が動いております。

好きな女性のタイプ

ささだ
好きな女性のタイプは?
かずひこ
好きな女性のタイプは、実は結構いろいろだったりしますが (笑) まあいろんなタイプが好きっていうよりは、結果としていろいろだったなあ、と (遠い目)。
ささだ
まあ、じゃあ、そのへんで。
かずひこ
でも、出会いはみんなそれぞれ何か意味があると思っています35

将来の夢

ささだ
今後の展望とか将来の夢とかは?
かずひこ
会社という組織の一員としてやって行くからには、その会社がいつも「去年の会社よりも今年はいい会社だよね」っていうのが続けばいいなと思っていますし、そのために自分ができることをいつも考えたいとは思っています。そんなわけで、将来の夢は、いい会社だねって世間に思われることでしょうか (笑) そしたら、いい人も集まってくるし、いい流れになるのかなって思っています、はい。
ささだ
きれいにまとめていただきました (笑)

Rubyist の輪

ささだ
前のインタビュイーの前田さんとの関係は?
かずひこ
どうしましょう……じゃあ、師弟関係ということにして (笑)
ささだ
次のインタビュイーはどうしましょう。
かずひこ
誰がいいかなあ。尊敬する人 (笑) の一人、たださんにしておこうかな。

これからプログラミングをやりたい人々へ

ささだ
若手に一言。
かずひこ
いろんなものをみんな積極的に世に出してもっと目立って欲しいな、と。

読者への一言

ささだ
読者に一言。
かずひこ
うちの子をよろしくとかそんな感じですっけ。
まつもと
僕はそう言ったけどね (笑)
かずひこ
じゃあ、これからもいろんなところに顔を出しますので、どうぞよろしくお願いします。
ささだ
どうもありがとうございました。

おわりに

多方面で活躍されており、最近、株式会社ネットワーク応用通信研究所に転職されたかずひこさんへのインタビューでした。まつもとさん、前田さんと言語マニアが続きましたが、今回は普通のインタビューっぽくなったのではないかと思います。ちなみに、これまでのまつもとさん、前田さん、かずひこさんへのインタビューは同日に行われました。どうもありがとうございました。というわけで、松江特集はとりあえずおしまい。

次回は、言わずと知れた Ruby のキラーアプリケーション「tDiary」の開発者であり、かずひこさんの尊敬する人、ただただしさんへのインタビューです。お楽しみに。

(インタビュー:ささだ、編集:前田・中村)


  1. OOエンジニアの輪! 〜 第 20 回 高林 哲 さんの巻 〜 

  2. 株式会社ネットワーク応用通信研究所 

  3. 高林哲氏。UNIX 系雑誌などでお馴染み。Ruby によるアプリケーション、ライブラリを多数発表している 

  4. ただただし氏。tDiary の作者。次回のインタビュイーだったりする 

  5. まつもとゆきひろ氏。言うまでもないが Ruby の作者。前々回のインタビュイー 

  6. 電子辞書に関する情報交換を行なうためのオープンラボ 

  7. Ruby のキラーアプリケーションとなっている日記ツール 

  8. NEC が 1983 年に発売した 8bit パソコン 

  9. PC-8001mk2 を始めとして、当時の多くの 8bit パソコンに搭載されていた CPU 

  10. 言うまでもなく deb とか rpm とかではなく商品の包装のこと 

  11. Linux のディストリビューションの一つ 

  12. 実際に描いたのはゆうなさん 

  13. アリゾナ大学の Griswold 教授により開発されたプログラミング言語。===演算子はリストなどの比較に用いられる 

  14. Java VM をターゲットとしたスクリプト言語。Ruby からの影響も多数見られる 

  15. Java の==と同じ 

  16. それぞれの違いについては、http://www.geocities.jp/m_hiroi/xyzzy_lisp/abclisp03.htmlを参照のこと 

  17. かずひこさんも開発に参加している Hiki に、eval に関連した脆弱性が発見され、対応に苦労された件を指す 

  18. 脆弱性に対する最初の修正では、安全に eval できるような文字列を出力するために String#inspect が利用されたが、String#inspect では”#{do_something}”のような文字列をエスケープしないため、任意のコードを実行できる余地が残ってしまっていた 

  19. ext/syck あたりによくバグが潜り込んでいることを指していると思われる 

  20. Ruby で書かれた Wiki エンジン実装の一つ 

  21. 前号の前田さんへのインタビューの中で前田さんがかずひこさんに「Hiki は eval 使わないようにならないですか?」と聞いたことに対する答え 

  22. 以前は pure Ruby な YAML 実装もあったが、ext/syck 登場後はそちらのバージョンの開発は打ち切られた 

  23. もちろん、現在はすでに修正済み 

  24. 鈴木鉄也氏。CGIKit、TapKitRuby/OpenBase などの作者 

  25. これはインタビュー当時の話で、その後積極的に使っているらしい 

  26. Python で定番となっている Web アプリケーションサーバ 

  27. ささだの YARV: Yet Another Ruby VM を指す 

  28. Ruby でもブレースは使用されるが、Perl に比べると使用頻度は低い 

  29. EB ライブラリを用いた対話型の電子辞書検索コマンド 

  30. Emacs 上で動作する辞書検索インターフェイス 

  31. Dan Ingalls や Alan Kay らによる Smalltalk の新しい実装 

  32. Kondara MNU/Linux。Momonoga プロジェクトは Kondara プロジェクト(解散済み)の流れを引き継いでいる 

  33. eXtreme Programming 

  34. 喜多淳一郎氏。tDiary 開発者の一人だが、むしろ日記の面白さ (エロさ?) で有名かも 

  35. あんな出会いとかこんな出会いとかがあったらしい……