―― コーディングスタイルで許せないことは?
一行に数百文字も延々と横に続くコードとか、付けられたメソッド名や変数名やカラム名がローマ字表記や中学生英語レベル以下であるとか、めっちゃ深いインデントとか。
―― 美しいと思うコードはどんなものですか(例があればなお可)?
可読性の高いコードです。丁寧に何の処理をしているのかのコメントが書いてあるけど可読性が低いコードとかは醜悪に見えて、それならむしろコメントを書いていなくてもパッと見で何をやってるのかが分かるコードの方が美しいです。
―― プログラムをするようになって、「自分のここが変わった」というものは?
業務などで、これは面倒だなぁとか思う部分については、どれだけ時間を掛けてでも面倒じゃなくするツールを作成し、後が楽になるように、と考えるようになりました。
―― セキュリティ面で心懸けていることは何ですか?
自分がもしはまちちゃんだったら、どんな風にいたずらしてやろうか? と、日ごろから仮想はまちちゃんと戦いながら実装するようにしています。コーディングするのに専念する人間が必要なのと同レベルで、テストに専念する人間が必要だといつも思いますね。
―― 正直、コードを書かない人に何か言われたくないと思っている?
何を言われるかによりますが、例えばその人がコード書かないでも偉そうなことをいえる立場にあるということは、分野は違うかもしれないがそれなりにすごい能力を持っている可能性がありますから、耳を傾ける価値はあると思います。ただし、その人のすごいところがちっとも見えなければ「オマエには言われたくないね」とか思っちゃうことは事実ありますが。
―― GNUやGNU GPLについてはどう思いますか?
GPLは若干ややこしくて、著作権者側はちゃんと読んで理解した上で適用していると思うのですが、使う側の方がむしろちゃんと理解しなくてはいけないのに、ややこしさが理解する上での障壁になっていますよね。もっと簡単に著作権を主張する仕組みができればいいのになぁーと、ごくたまに思っています。
―― ロボット3原則をまねてプログラマー3原則を考えてみてください。
―― 女性プログラマーってどうですか?
よいと思いますよ。男だらけの職場になりがちですから、そういう意味では職場が華やかになるので、増えてほしいです。
―― よいプログラマーの条件を3つ挙げてください。
集中力が高くて、仕事が速くて、バグが少ない。
―― 悪い/使えないプログラマーの条件を3つ挙げてください。
集中できない、バグが多い、書いたコードに責任持てない。
―― プログラマーの35歳定年説をどう思いますか?
35歳を超えていても、若い人より断然コード書けるオッサンって超カッコイイですよね。35歳を定年と決めてしまうのは35歳前後の方が多いような気もします。そういう意味で、若いからとか年取ってるからダメというのはナンセンスですよね。
―― 大物「ハッカー」といえば?
Larry Wall。やはりPerlという言語の開発者であるLarryには日ごろ大変お世話になっていますし、彼には足を向けて寝られないです。
―― 国内外を問わず、尊敬している「プログラマー」は?
牧大輔さん、宮川達彦さん、Brad Fitzpatrick。直接教えを受けたわけではないですが、宮川さんの影響は自分にとって大きいなぁと思いますね。
―― 自分より年下で注目しているプログラマーは?
―― 結局のところ、ハッカーとは何なのでしょう。ハッカーの必要条件を挙げてみてください
既に存在するものの概念を壊して自分色に染められるだけの能力を備えた人。
―― 最近一番感銘を受けたコード/サービスは?
Twitterですかね。機能自体はすごくつまらないもので、古い言い方をすれば、「大部屋チャット」なわけですが、その部屋の規模が数千人レベルなわけです。機能の絶妙さもあり、リアルとネットをここまで直結させるような流れにしたのはすごいなと思います。使う側が育てていく文化ってすてきですよね。
そういう意味ではmixiはWeb 1.5とかそんな感じといえるのかもしれませんが、利用者数の多さや、Twitterでは取りこぼしているような層も気軽に使えているという意味ではアレはアレでアレなんだと(笑)。mixiがOpenIDによって再び台頭するかは未知数だと感じています。mixiユーザーのうち、OpenIDをきちんと理解して使えるユーザーは数%といったところでしょう。そこを伸ばすより、ほかのところに力を入れた方が幸せじゃないかなぁ。
後、OpenIDは、まだブレイクには至っていないと思っています。ITリテラシーの低い層に訴求するのが得意なYahoo!ですら、まだOpenIDのブレイクに持って行けていないこともその証左です。弊社もまださじ加減を図っているところで、これから徐々に空気を読みつつOpenIDの利用を考えたいと思っています。
―― 「もう時代遅れになってしまったなぁ」と思う技術があったら挙げてください
JSAN(JavaScript Archive Network)。PerlでいうCPANのような存在なのですが、JavaScriptがこれだけ人気なのにもかかわらず、JavaScriptエンジニアからそっぽを向かれている感じなのが不思議ですね。JavaScriptは1つ1つのライブラリが充実し、依存関係もほとんどないことなども影響しているのでしょうか。そういえば、malaくんが弊社にいたころに彼をみて思ったのは、JavaScriptエンジニアは「人が作ったものをあまり使いたがらない」人とそうでない人にはっきり二分されるのではないかという点です。オールインワンのフルスタックなものを一人で作り上げ、そこで完結させてしまう、といった空気を彼に感じた覚えがあります。
―― 懐かしい、もしくは時代を感じさせるソフトウェアは何ですか?
Irvineとか回線が遅かったころよく使った覚えがあります。
Copyright © ITmedia, Inc. All Rights Reserved.