• はてなブックマークに追加
  • Yahoo!ブックマークに登録
Rubyまつもと氏、Palmscape奥氏、うたうたう新井氏のホンネ 生まれた時からプログラマ☆興味と感性で世界を驚かす
 プログラマは下流工程、早く抜け出してSE、そしてPMへ上がりたい……なんて思っているソフトエンジニアの皆さん。その考えは間違っていないけど、クリエーティブなプログラマがいなくなったら、日本のソフト産業はつぶれるよ。下流の職種? 冗談を言っては困ります。カリスマ・プログラマたちの本音を聞いてください。
(取材・文/総研スタッフ 高橋マサシ)作成日:06.06.28
Rubyのまつもとゆきひろ 「プログラム言語を愛していますから」
 世界に普及するプログラム言語を開発した日本人、まつもとゆきひろ氏。彼がつくったオブジェクト指向のスクリプト言語「Ruby」はシンプルで利便性に優れ、世界各国のプログラマたちに愛用されている。こんなエンジニアは、たぶん日本にひとりしかいない。
「ストレスのない楽しいプログラミング」がいいでしょ
 プログラミングの本質的な面白さはデザインにあると思います。こんなことをこんなふうに達成したい、そのためにはこうしたアルゴリズムでこのデータ構造を使おう。このようにデザインを積み重ねて、最終的にコンピュータにわかる言語にしていく。とても刺激的でクリエーティブな作業です。Rubyはそのためのツールであり、私はそのプログラミングをしているので、「一粒で二度おいしい」ですね(笑)。
 ただ、プログラミング言語は人間が相手。見かけはコンピュータを相手にしていても、未来のユーザーが「ストレスなく楽しくプログラムが書ける」を考えながら開発を続けています。その感覚は数値化できないから、「この判断は本当に正しいのか」とはいつも感じますよ。人に感想を聞いても返ってくる答えはばらばらなので、最終的には自分の感性を信じるしかないですけど。

 もともとプログラミング言語オタクです。何百という言語を見てきて、1993年ごろにPerlと出合った。開発者のラリー・ウォールは尊敬していますが、言語の使いやすさという意味では共感しませんでした。人間はしんどいことが嫌いでしょ。だから、言語でもコアな部分はシンプルであってほしい。Perlはそのバリエーションが多いから、Rubyをつくったんです。

 開発を始めたとき、完成はできても、オープンソースでこれだけ広がるとは思わなかった。何人が使っても僕には一銭も入らないから、特に普及させる気もなかった(笑)。でも、新しいコミュニティが出来上がって、「Rubyのここを直そうよ」とかポジティブなインプットを与えてくれる人が増えたのはすごくうれしい。また、霞を食べて生活はできないので、「Rubyのまつもと」というポジションは思ったよりおいしい。今もRubyの開発だけしてお給料をもらっていますし、雑誌への執筆もしていますから。そういう意味での広がりはありがたかったですね。
まつもとゆきひろ氏
現状に甘んじる気持ち。そんな意識がいちばんヤバイ
 日本のプログラマは、あまり発想力を求められないと思います。お客さんが欲するシステムを開発するのが一般的ですが、それはソリューション。極端に言えば新しい技術はいらない。だからニーズをくみ出すSEと現実化するプログラマの分業体制になっている。一方で、例えばGoogleなどの新しい製品や技術を独自に生み出す会社であれば、プログラマに発想力が求められる。残念ながらこの手の会社は日本に少ないですね。
 でも、やりたいことができずに低年収や長時間労働に苦しんでいるプログラマが多いという現状は、まだ変えられると思います。ひとつは、「頼られる人になる」こと。仕様書どおりにコーディングしてもSEには頼られないでしょ。そんな人の身分は限りなく低いですよ。ただ、SEの下に甘んじる生き方を勧めるわけではありませんけど。

 もうひとつは、「自分が何をしたいのか」を確認することでしょうね。仕様書どおりにJavaのコードを書くことで幸せな人もいるでしょうし、人に喜ばれるWebアプリをつくりたい人もいる。目的が決まれば方向性が見えると思うんです。「今より何とかしたい」だけでは努力の方向もわからず、もったいないと思います。
 それか、待遇のよい会社に移ることでしょうね。例えばアメリカには、フットワークの軽いプログラマが数多くいます。すぐに転職するという意味だけでなく、好きな技術や対象が見つかるとすぐに飛びつき、ダメならさっと引き、また新しいことに飛びつくという意味です。先ほど「甘んじる」と言いましたが、その考え方がいちばん危険だと思いますよ。

 プログラミング言語が生まれて拡大したのが1960〜70年代。80年代以降の言語はその応用系ですから、今後もそう大きな変化はないと思います。そして将来は、コンピュータが人間の諸問題を解決できるだけの知性をもち、プログラミングという作業は不要になるかもしれない。仮にそんな時代がきても、私はプログラミング言語を愛しているので、相変わらずRubyでコードを書いていると思いますよ(笑)。
  まつもとゆきひろ氏の略歴
「日本Rubyカンファレンス」のトップ画面
「日本Rubyカンファレンス」のトップ画面

 1965年生まれ。筑波大学卒業後、ソフトハウス、CADベンダーを経て、1997年に株式会社ネットワーク応用通信研究所に入社。1993年に「景気が悪くなって空いた時間」でRubyの開発を始め、95年にフリーソフトとして公開する。
 Rubyの特徴は文法がシンプルなこと、整数や文字列などデータ型はすべてがオブジェクトとして扱われること、作成したプログラムを逐次実行するインタプリタ言語であること、プラットフォームを選ばない高い移植性をもつことなど。現在、Rubyのメンテナンスや質的向上には世界中のプログラマが参加している。

Palmscapeの奥一穂 「バットを振らなきゃ当たらないよ」
 東京大学在学中にPalm OS用のWebブラウザ「Palmscape」を開発。これによりMIT発行の『Technology Review』誌におけるTR100(若きトップイノベーター100人)に、日本人で唯一選出された奥一穂氏。その後ベンチャー企業を立ち上げたが、昨年8月にサイボウズ・ラボに入社して話題となった。
奥一穂氏
欲しいけどない。それなら自分でつくればいい
 ソフトウェアによって人と人をつなぐことに興味がありますね。例えば、携帯端末のブラウザ、メール、コンテンツ配信などにより、人のコミュニケーションの取り方が変わっていくとか。大学時代にPalmscapeを開発したのも、持ち運べるPalmがモデムでネットにつながったのにブラウザがない、それじゃつくろうという発想でした。現在のラボでプロトコルや認証技術、セキュリティーなどを研究しているのも同じ動機です。
 だから、私にとってソフトは「人をつないで何ぼ」の世界。コードの数学的な美しさなんて全然気にしませんし、プログラムも手段であって目的ではありません。

 ただ、未踏(未踏ソフトウェア創造事業:IPA[独立行政法人情報処理推進機構]が主催するスーパークリエーターを発掘するためのプロジェクト。主にプログラマが対象で、公募から選ばれた採択者には資金支援などが行われる)に応募した作品「ウェブアプリケーション(Apache/Perl)統合開発環境の開発」は、ちょっと違います。

 知り合いから「Webアプリ開発で小さな案件を回すのは難しい」という話を聞いたのがきっかけです。大学時代にWebサーバーのアルバイトをしていたのですが、久々に現場に戻るとそのころと変わらず環境がしょぼい(笑)。お客さんと開発・運用環境を合わせるには、大きな案件なら大型サーバーを1台置けばいいけれど、細かなものまでいちいち手が回らない。
 ならばと、お客さんが開発・運用中のバージョンと並行運用できるような環境を、欲しかった編集とデバッグの機能を付けて構築しました。これが2004年度の未踏で認定され、その縁でサイボウズ・ラボの畑社長と知り合い、誘われて昨年転職したのです。
バットを振り続ければ、ボールはだんだん当たってくる
プログラマの生産性は人により全然違いますよね。個人差で100倍、チームや手法でも100倍くらいの差が出るのではないでしょうか。例えば、Perlのライブラリをうまく使って完成させる人を上流工程とすれば、Javaでガリガリ書いている下流工程の人との生産性は劇的に違ってくる。特にオープンソース化が進むとソースコードはただで手に入るので、適切なコードを集めて組み合わせる能力が重視されてくるでしょう。

 仮に大規模なWebサービスの構築を考えたとき、Webサーバーのロードバランスを例えばApacheで設計して、DBサーバーのチューニングをして、オープンソースのソフトを何個か連携させてコードを書いて……といった作業は、知識がなければチーム作業でもかなり時間が掛かるでしょう。それが優秀なプログラマならひとりでできるかもしれない。
 こうした組み合わせる能力に長けた、価値の高いプログラマが主流になると、ひょっとしたらコーディングだけの人はいらなくなるかもしれない。もちろん、独創的な能力をもつプログラマは不可欠ですから、二極化が進むとも考えられます。

 プログラマとしてのクリエーティビティを高めたいと思うなら、いくつものアイデアを試してみるしかないですね。すぐにダメだとわかる場合もあるし、途中まで進めて「やっぱり無理か」というアイデアもある。
 ただ、そのうちにバットにボールが当たるようになると思うんです。ゴロやフライが打てれば、ヒットにもつながっていく。私はそうしています。社内ではグループウェアで議論しているのですが、月に10回くらい打席に立ち(アイデアを出し)ますよ。打ち崩すのが難しいピッチャーばかりですけどね(笑)。
奥一穂氏の略歴
 1977年生まれ。東京大学中退後、ソフト開発ベンチャーに入社。有限会社モラビスを設立後、2005年にサイボウズ・ラボ株式会社に入社。Palm OS用Webブラウザ「Palmscape」で、1997年に『Technology Review』誌の「TR100」に選出。また、2004年度のIPA「天才プログラマー/スーパークリエイター」の認定を受ける。
 Palmscapeは発表後、IBMの「WorkPad」やソニーの「CLIE」にバンドルされて、一般に広く認知されるようになった。また、「ウェブアプリケーション(Apache/Perl)統合開発環境の開発」は開発専用サーバーなしに運用サーバーだけで開発と運用が行える統合開発環境で、効率的で安定したWebアプリ開発を可能にした。
Palmscapeの進化版である「Xiino」
Palmscapeの進化版である「Xiino」
ソフトウェア技術者連盟の新井俊一 「プログラマはプロ意識をもて」
 Winnyを介した情報漏えいが多発する中、その開発者である金子勇氏の支援をきっかけに「ソフトウェア技術者連盟」を設立した新井俊一氏。彼は2002年度の未踏プロジェクトで認定された優秀なプログラマであり、現在のソフトエンジニアが置かれた環境について、一家言をもつ。
多くのプログラミングはルーチンワークだから嫌われる
 音楽は好きなんですが、楽器など全くできないんです。一方で、3歳くらいからプログラミングをしていたそうで、物心ついたころからゲームをつくっていました。そんなことから、音声から音程を解析するプログラムを開発しました。これを発展させて完成させたのが、PCにつないだマイクで歌うと音の高さがディスプレイに表示される「うたうたう」です。これが未踏で採択されて会社を興しました。
 現在は主にソフトウェアやシステムの受託開発をしていますが、学校を出てからいろいろな会社で、さまざまな立場でプログラミングを経験しており、この業界の人間として感じていることがあります。それは、ソフト開発の専門性があまりに理解されていない現状です。

 日本のソフト開発は企業情報システムが主流で、大型電算機の時代から進んでいない気がします。だから設計はSEで開発はプログラマという構図が生まれ、エンジニアがひと山いくらで扱われる。「憧れのプログラマ」がいるのは、ゲーム業界くらいでしょうか。
 SEが設計書を書くより、プログラマがプログラミングしてしまったほうが早い。お客さんのニーズを聞いて提案し、社内でチームをまとめるのも、プログラムを熟知するプログラマが最適だと思います。数億円、十数億円の仕事はわかりませんが、1億円クラスの案件なら既に私が実践しています。

 ただ、これは大工でいえば棟梁の仕事で、人材も人材が育つ場も少ない。だからそれ以外の人にとってのプログラミングは押し付けられる仕事でしかなく、次第に右から左へと流すルーチンワークになり、「こんな面白くない仕事はやめて早くSEになりたい」と思うわけです。でも、右から左へ流すのは人間でなくプログラムの役目でしょ。自分でつくればいいんですよ。
新井俊一氏
サラリーマンでなく、エンジニアという「職業人」になろう
 こうして現場の上流願望が強くなると、プログラマを下に見る傾向が業界全体で強くなります。しかし、上流の人はプログラミングの専門性を理解できず、本質がわからないからお客さんの言いなりになってしまう。他方でプログラマはプログラムが外から見えないのをいいことに、まともに動かないものをお客さんに納品したりする。だれにとっても不幸ですよね。
 医師は休暇中であっても、目の前に患者がいれば診察します。エンジニアも同様ではないでしょうか。自腹で本を買わない、ネットニュースも読まない、オンとオフを分けることだって、私はエンジニアとして失格だと思っています。そのくらいのプロ意識があって初めて、職業人として認知されると思いますから。

 こうした思いもあり、NPO法人のソフトウェア技術者連盟を昨年設立しました。きっかけはWinnyで、これだけ問題になっているのに、エンジニア同士で論ずる場を見かけなかったからです。団体はあっても技術交流会や学術団体がほとんどで、特にソフトウェアの分野では少ない。今後は、プログラマの恒常的な長時間労働の改善や、倫理規定の策定、情報交流などを提案していくつもりです。

 独創的なプログラミングをしたいなら、まずはプロ意識をもち、理想とするエンジニアを探して彼をまねて、どんな場所にでもおくさずに顔を出すことだと思います。あいまいでいいから広い知識をもって、多くの同業者と接すれば、自然と頭が活性しますよ。それと、形から入ることかな。ポニーテールにひげ面、服装はTシャツにジーンズで、胸には「Linux」とかね。それはジョークだけど、スーツにネクタイはダメですよ。低く見られますから(笑)。
新井俊一氏の略歴
「うたうたう」の音程表示画面
「うたうたう」の音程表示画面
 1978年生まれ。中学校をかろうじて(新井氏)卒業後、ソフトハウス勤務、フリーエンジニアとして活躍後、2002年に有限会社メロートーンを設立。2002年度の未踏ソフトウェア創造事業で採択された「音楽演奏情報処理を応用した教育と芸術のためのソフトウェア」を「うたうたう」として製品化する一方、ソフト開発事業に携わる。
 ファイル交換ソフト「Winny」の開発者である金子勇氏の支援を契機に、2005年にソフトエンジニア支援のためのNPO法人ソフトウェア技術者連盟を設立。また、2004年に飛び級で早稲田大学大学院の博士課程に入学した。
  • はてなブックマークに追加
  • Yahoo!ブックマークに登録
あなたを求める企業がある!
まずはリクナビNEXTの「スカウト」でチャンスを掴もう!
スカウトに登録する
  高橋マサシ(総研スタッフ)からのメッセージ  
高橋マサシ(総研スタッフ)からのメッセージ
[]
[]
昔から感じていたのですが、上流・下流という言い方、便宜上であることは承知していますが、失礼ですよね。「私は下流の仕事をしています」なんて、だれが言いたがるでしょうか。「プログラマに憧れる人が増えるような記事をつくってください」とは、取材後に新井さんから言われた言葉です。皆さんの意見をぜひ聞かせてください。
[]
[]

このレポートを読んだあなたにオススメします

我ら“クレイジー☆エンジニア”主義!

世界のオープンソースRuby開発者まつもとゆきひろ

我ら“クレイジー☆エンジニア”主義!今や世界に知られるオープンソースのプログラミング言語「Ruby」を開発した、まつもとゆきひろ氏。シンプルで利便性に優れたオブジェ…

世界のオープンソースRuby開発者まつもとゆきひろ

組み込み向けプログラミング言語“mruby”“MobiRuby”が誕生!

まつもとゆきひろと増井雄一郎が創る“軽量Ruby”とは

「Ruby」の生みの親であるまつもとゆきひろ氏が、組み込み向けの軽量版「mruby」を開発した。また増井雄一郎氏は…

まつもとゆきひろと増井雄一郎が創る“軽量Ruby”とは

2013年は、mruby、MobiRubyで世界中にRubyブームを巻き起こす!

まつもとゆきひろ、増井雄一郎の“Ruby”ギークライフ

世界にRubyの存在感を示していきたい──組み込み向けプログラミング言語“mruby”“MobiRuby”を開発する…

まつもとゆきひろ、増井雄一郎の“Ruby”ギークライフ

【前編】数学が苦手でRubyを開発、「ヒット曲」の理由とは?

茂木健一郎×まつもとゆきひろ「言語デザイナーの脳」

脳科学者の茂木健一郎氏と、Rubyの開発者まつもとゆきひろ氏の対談が実現! その前編は「言語デザイナーの脳」です。プロ…

茂木健一郎×まつもとゆきひろ「言語デザイナーの脳」

Rubyまつもとゆきひろ氏×Google鵜飼文敏氏のナマ対談

オープンソース開発を楽しむための“譲れないルール”

目まぐるしく変化するIT業界。その中でもオープンソース開発によるソフトウェアが、今注目を浴びている。「Ruby」の開発者まつもと…

オープンソース開発を楽しむための“譲れないルール”

広める?深める?…あなたが目指したいのはどっちだ

自分に合った「キャリアアップ」2つの登り方

「キャリアアップしたい」と考えるのは、ビジネスパーソンとして当然のこと。しかし、どんなふうにキャリアアップしたいのか、…

自分に合った「キャリアアップ」2つの登り方

この記事どうだった?

あなたのメッセージがTech総研に載るかも

あなたの評価は?をクリック!(必須)

あなたのご意見お待ちしております

こちらもお答えください!(必須)

歳(半角数字)
(全角6文字まで)
  • RSS配信
  • twitter Tech総研公式アカウント
  • スカウト登録でオファーを待とう!
スマートグリッド、EV/HV、半導体、太陽電池、環境・エネルギー…電気・電子技術者向け特設サイト

PAGE TOP