それで、「MS-Xっていうパソコンが出るから、機械貸すんでゲーム作ってよ」とかそんなことを頼まれたりしていたんです。家にMS-Xの試作機とかをもって帰ってきたんです。木の板にボードが乗っかっていて、キーボードが貼り付けてあって、コンポジット端子がついていてテレビに映せるみたいなやつでしたね。渡されたマニュアルも英語で全然分からない中でやっていましたね。天才少年みたいですね。いや、単に、物好きで、怖いもの知らずなだけだったんだと思いますよ。いやあ、なかなかいないと思います。いうところなので、なかなかすごい人が集まってきていたので、すごく刺激を受けましたね。原稿を書いている人たちとか、東大のマイコン部とかコミュニティがあったんですよね。いう人たちが編集部にたむろっていたので、いろいろ話をしたりして刺激を受けましたね。人並みには勉強もしましたけど、やはりパソコン中心でしたね。すると、このまま業界一直線って感じですよね。大学に入ると、今度はX68000の雑誌である「Oh!X」というのがあって、そこでライターをやったりしました。ライターの稼ぎがそこそこあったので、就職しないで、そのまま専業のライターになっちゃったんですよ。それだけで食っていけたってことですよね。自分でプログラムの記事を書いたり、ゲームを作って、そのことを書いたりしていました。ライターってやってみて分かったんですけど、本当に生活できるまで稼ごうと思うと、薄利多売でないとやっていられないんですよね。それが段々と辛くなってきたんです。人によっては、それがそういう仕事が合っているという人もいるとは思うんですけど、自分にとっては、薄利多売にするとクオリティを落とさなきゃいけないしと思うと、辛いものになってきてしまったんです。Webが出てきたこともあって、そろそろライターも潮時かなあって思い始めたんです。少なくともこのまま一生続けていく仕事ではないなって。そこで専業のプログラマに転進しようと思ったんです。いえ、大学は英語をやってましたんで、完全に文系プログラマです。文系でそんなに忙しくなかったんで、ライターの仕事ができたんです。GREEの藤本さんがやっぱり英文科でしたね。大学教育ってプログラマの能力っていう点でいうとあんまり関係ない気がしますね。4年ですから、小さい頃からパソコンに触れられたとか10代の頃の環境の方が大切な気がします。確かに、このコーナーに登場いただいた皆さんに共通されているのは小さい頃からパソコンに触れている点ですね。20歳ちょっと過ぎくらいの未踏のスーパープログラマと言われている方たちとたまに話す機会があるんですけど、そういう人たちに聞いてみると、お父さんが開発をしていて、昔からパソコンが自由に使えたって言っていて、割とそれは共通していますね。教育がまったく無力だとは言わないですけど、教育で数年間やるよりも、中学生とか高校生とか自分の自由になる時間が本当にたくさんある時期にそういったものに触れられている時間をたくさん持つ、そういう環境があるかないかっていうのが本当に大きいですね。それが決定づけますね。それを逆転することもできるんです。それはよい師匠を見つけることですね。いう中学、高校ぐらいに独学でプログラミングを学んだような人たちってやっぱり躓きながら学んでいるので、効率っていう面でいうとそんなによくないんですよ。そのかわり躓きながら学んでいるのでいろんな枝葉を勉強できるんですね。そもそもコンピュータってどうやって動いているんだとかというところまで勉強できるっていう利点があると思うんですけど、躓きながら学ぶ効率の悪さをよい師匠を見つけることで多少後から始めても同じところまでキャッチアップすることができるんです。路を示してくれるんです。サジェストしてくれる人がいると、若い頃から環境に浸っていなかったっていう人でもかなりのスキルを身につけられると思います。大学4年間でコンピュータサイエンスを学んで、そのあと会社に入って、よい師匠を見つけて一流の技術者になるというある種の王道があると思います。徒弟制ってよくいいますよね。大手のSIなんかでは特にそういう風潮があるみたいですね。いう点では柴田さんは子供の頃から触れてきている方ですよね。職業プログラマと比べるともしかしては劣っている面があるかもしれません。私は、なんでもできる人でいたいんです。プログラムを作るだけではなくて、ドキュメントを作るとかマニュアルを作るとかいうことも必要だと思うんですが、そういうときにはライターをしていたときの経験はすごく生きていますね。純粋にプログラマとしてみると、なんていうんでしょうか、普通のというか第一線の人と比べると劣っている部分があるというのが自己分析なんです。総合力で見ると、そこそこいいところにいっているというのは自分にとっては幸せなことですね。これは人によって違うとは思いますけどね。開発だけをばりばりやるのが幸せな人もいれば、マネジメントや商品開発もするのがいい人もいますので。プログラマは、技術の職人なのかビジネスマンなのかっていうことはよくテーマになるところですよね。日本の会社の仕組みが変わってきていて、年功序列とか終身雇用とかは崩れてきているとはいっても、人生のライフステージっていうのはあるじゃないですか。年齢がいくと結婚したり、子供を作ったりとか、奥さんにそそのかされて家を買っちゃったりとか、それなりに、身入りが必要ですよね。年齢がいくとそれだけ、その人が生活を維持するためのコストがあがっていくんで、そのコストを満たすためにどうしなきゃいけないかってことだと思うんですね。おっしゃるとおりです。人によっては、開発がすごく得意で、一般的な開発者より100倍の生産性があるのであれば、開発に特化していけばいいし、そうでもないのであれば、もうちょっと商品開発か何かに特化をしてポテンシャルを上げるというか、自分のアウトプットが稼ぐお金を最大化するようにしなきゃいけないってことですよね。反対に一般的な開発者だとしても、奥さんや子供に対して、「稼げないけど開発の仕事が好きだからすっと開発だけをやりたい」って言って、許可さえもらえればそれでいいんじゃないかとも思いますし、そう指導していますね。不幸なのは、嫌なことをやり続けなきゃならないってことですからね。自分が何をやりたいかっていうのを見つけて、それをやり続けることのできる環境を作ることじゃないですかね。プログラマになって結構いろんな開発をしたんですけど、自分の転機になったと思うのが、Macintoshでメールクライアントを開発する仕事をいただいたことがあって、3年もある長い仕事だったんですが、それが割と良い経験になりましたね。その当時、2000年の初頭にかけてだったんですが、ソフトウェアのパッケージ販売って結構リスキーで、まず店頭に置いても売れないし、在庫を抱えて赤字になっちゃうこともあるし、「店頭販売はしません」ということを決めたんですね。なるとネットワーク上の露出であるとか、メーリングリストがあって、そこでサポートが受けられるとかそういうことが重要だったんですね。今だとそういうことって当たり前ですけど、当時のそのプロジェクトはそういうモデルの先がけだったんです。そのプロジェクトに関わって、開発もするんだけど、たまにメーリングリストで発言をしたりとか、ただの開発じゃない形で仕事をさえていただいていて、それが開発者としての転機になったかなという感じがしましたね。あと、割と小さなチームだったので、よく言うと少数精鋭で自分の意見が通りやすかったですね。仕様が降りてきて、それを実装するためにはってことだけではなくて、こういう機能を追加したら面白そうじゃないですかっていうことを認めてもらいながら作っていけたというのが面白い部分だったような気がします。それは確かに面白いでしょうね。あとインターネットというものの面白さもありましたね。当時は、Macintosh用の環境のCodeWarrior、いわゆるクラスライブラリを使って、実装の言語はC++でした。当時は4人のチームだったんです。その中で実装の切り分けをして、UI担当の人がいたりとか、ネットワーク処理の担当の人がいたりとかしましたが、私はナットワーク処理とかファイル処理の担当をしていました。アプリケーションの開発なので、それだけではすまなくて、多少、UIのこともわかりながら開発をしなくちゃいけなかったのが面白かったですね。それに当時は、Macintoshも今のように成熟していなかったので、OSのバグっていうのがあったんですよ。マルチスレッドでアプリケーションを稼動すると、ある特定のタイミングで落ちたりするんですよ。それが3ヶ月くらい原因が分からなくて、あるとききっかけがつかめて、デバッカーでOSのコードとかを追っていたら、ここだっていうのを見つけて・・・ただOSのバグなので直せないんですよ。直してくれとも言えないし。それを回避するコードを考えなくちゃいけないんです。