エンジニアtype - エンジニアのシゴト人生を考えるWebマガジン
  • TOP
  • キーパーソン
  • 旬ネタ
  • コラボ
  • ノウハウ
  • 女子部
  • キャリア

「コードの未来、エンジニアの未来」まつもとゆきひろが語る、明暗2つのシナリオ 【キーパーソンインタビュー】

タグ : Heroku, mruby, Ruby, SE, SI, まつもとゆきひろ, クラウド, ソフトウエア, プログラマー, マルチコア, 業界有名人 公開

 

<< 前ページに戻る

僕にとってソフトウエア開発とは、「理不尽さへの反逆」である

―― 少々意地悪な問いですが、一般的に、自ら何かを生むよりも流行を追従してお金をもらう方が楽じゃないですか。なぜ、それでも新しいものを生み続けようと思うのか。

うーん、何でしょうね。表向きの答えは、新しいプログラムを書いて、それが動いた時の喜びがあるからです。ただ、本音で言うと、僕は理不尽なことが嫌いだからでしょうね。

ほかの人は僕とは違う考え・価値観で生きていて、他人が作るソフトウエアには、僕からすると「何でこういう仕組みになってるんだ?」、「ちょっと使いづらいんだけど」と思う部分が必ずあるわけです。

―― とはいえ、すべてのプロダクトには多かれ少なかれ「作り手のエゴ」が入ってきます。

「理不尽なことが嫌いなだけ」と明かすまつもと氏だが、その姿勢が多くのプログラマーに愛される言語を生んだ

「理不尽なことが嫌いなだけ」と明かすまつもと氏だが、その姿勢が多くのプログラマーに愛される言語を生んだ

おっしゃる通りで、僕もそれを否定するつもりは毛頭ないんです。単純に、僕は他人のエゴを強要されるのがイヤなだけ。必要であれば自分で手を加えたいし、自分で改善したい。それが、ソフトウエアエンジニアを続けている理由であり、オープンソースにかかわり続ける一番の理由です。

オープンソースコミュニティはすべてのソースコードが公開されていますし、なぜそういう構造になっているのかもオープンじゃないですか。だから、改善したいと思えば、自分の力で変えていける。

社会が理不尽なのはしょうがないとして(笑)、少なくてもソフトウエアに関する部分では自分で理不尽さを直していきたいですし、自分で作ったものだったら、時代の変化に合わせて随時アジャストさせていきたい。

Rubyの開発に関しても、僕がもともと言語好きだからという理由もありますが、「そこだけは手を入れられたくない!!」という部分を自分でコントロールできる世界に住んでいたいし、少しでもプログラマーに理不尽なことを強いる部分を減らしていきたいから、今でも携わり続けているんです。

ソフトウエア開発は、一人で社会を変革し得る希有な仕事だ

―― その原動力というかモチベーションは、もともとの性格から来るものなのか、それとも社会に出てたくさんの理不尽に遭遇してきたから後天的に身に付けられたものなのでしょうか。

ソフトウエア開発は独力で「違い」を生み出すことのできる幸せな職業と公言

ソフトウエア開発の醍醐味を吐露するまつもと氏。取材時に着ていたポロシャツは『Ruby City MATSUE』プロジェクトのもの

性格的な部分が大きいとは思いますが、ソフトウエア開発が僕のようなわがままな人間を許してくれる世界だったから、調子に乗ったんじゃないでしょうか(笑)。

でも、真面目な話、ソフトウエアエンジニアって、たった一人の力で社会を変革し得る数少ない仕事の一つなんです。そんな幸せな職業に就いている以上、やらない手はないというのが僕の考えです。

―― こういった未来予測の話だと、人によっては~すべきという「べき論」を語ることも多いのですが、まつもとさんは一貫して「幸せか不幸せか」という価値観でお話されますね。

まぁ、何人も、他人の人生の責任は取れないじゃないですか。例えば「matzがこうしろといっていたのに、やってみたらダメだった」とか言われても、僕は責任を取れないわけで。だから、自分の生き方は自分で決めるしかないと考えているんですね。

でも、「今後の展望がこういう風になるかもしれない」、「僕はこうやってきたから君もハッピーになれるんじゃない?」と話すことなら、僕にもできる。だから「べき論」にはならないのだと思います。

今ここで話していることについても、「まつもとの言うことには同意できない」と思ったエンジニアは、ご自身の信じた道を生きる方が幸せなんですよ。

―― その考え方にはとても共感します。では最後に、そうやって「未来」を作っていく上で、なぜまつもとさんは「過去」から多くを学ぼうとされたのかを教えてください。

なぜ僕が過去から学ぶか、ですか?

未来を探る上で最も重要なのは「人間は変わらない」という事実

―― 『コードの未来』を読んで印象的だったのが、まつもとさんは各言語の発祥やトレンドの変遷を、とても詳細に調べていらっしゃるなぁと。ただ、ITの世界では時に、過去の成功法則がまったく通用しなくなるような破壊的な変化が起きますよね。

マルチコアやクラウドの流れも、そのような破壊的な変化の兆しなのであれば、なぜ過去の潮流を調べ、書籍にまとめる必要があったのかと。

テクノロジートレンドは「振り子」のように動きながら変容していると私見を語るまつもと氏

テクノロジートレンドは「振り子」のように動きながら進化していくと私見を語るまつもと氏

これも、人によっていろんな考え方があるという前提でお話しすると、一つ目の理由はIT業界の技術トレンドは常に振り子のように動いてきたからです。

新しい開発言語や手法、フレームワークがどんどん生まれてくる中で、ソフトウエア開発にかかわるそれぞれの技術は、シーソーゲームのようにバランスを取りながら進化していきます。

ですから、「かつてのベストバランス」がどう変遷して「現在のベストバランス」になっているのか? という振り子の周期や、過去の技術的選択がどんなトレードオフによって生まれたのかを頭の中に入れておくと、「未来のベストバランス」もある程度推察することができるようになります。

例えば「分散と集合」というテーマを取り上げると、昔は大型汎用機が中央に一つあって、もっと処理能力を高めるためにとクライアントサーバシステムが台頭してきたじゃないですか。それが今、クラウドという”巨大なコンピュータ”に集約されていく流れに再び戻っている。

これも、ネットワークの速度とコンピュータ1台あたりの性能とのトレードオフで、振り子が動いたからです。「過去」のある一点だけを取り上げて学ぶのはあまり意味がないかもしれませんが、ある技術が過去に流行り、廃れていったのは「こういうトレードオフがあったから」という流れを知るのは、未来に対して仮説を立てる上でとても参考になります。

そして、過去を学ぶことの最も重要な要素は、「人間は変わらない」という事実です。

技術的な変化の振り子を測るパラメータとして、人間の能力の限界によって制限される部分は多々あるんですね。だから、さまざまな言語開発者が、過去に「人間」というものをどう見ていたのかを知るのは、改善や進化のきっかけになります。

本の中でも、DartやGoのような新しい言語について触れていますが、Rubyの開発者である僕が「言語開発者の目線で言語開発者の心理を慮る」のは、単純に面白かったし人間に対する理解を深めることができました。

―― 新しいものを創るためになぜ温故知新が大切なのか? というのが質問の意図だったのですが、人間を慮る力というか、開発者の心理のような部分を過去から学ぶというのが、一番大事なのかもしれませんね。

最初にも話しましたが、コンピュータって世の中で言われているほど変化していないんですよ。

50年前に作られたプログラミング言語がいまだに使われていますし、Rubyだって、「最近話題になっている」とかよく言われますが20年も前からあったものです。人が思っているほど、状況は変わっていないという証拠ですよね。

そう考えると、新しさばかりに目を奪われてないがしろにしてきた過去の事実ってけっこうあるなぁと。ソフトウエア開発者も、ただトレンドを右から左に受け流しながら生きている人より、トレンドが移り変わる原理原則を覚えようとする人の方が、きっとエンジニアとして”長生き”するんだと思います。

そうなりたいと思う方は、ぜひ『コードの未来』を読んでね、という宣伝も兼ねて(笑)。

―― 今日はとても本質的なお話をありがとうございました。

取材・文・撮影/伊藤健吾(編集部)




人気のタグ
業界有名人 スタートアップ 開発 SE 転職 エンジニア Web プログラマー スキルアップ ソーシャル アプリ シリコンバレー 起業 プログラミング キャリア スマートフォン Android SIer 技術者 えふしん クラウド UI btrax スペシャリスト Webサービス アプリ開発 Twitter Apple ギーク CTO Facebook 英語 デザイン IoT ツイキャス Brandon K. Hill Google SNS モイめし 世良耕太 IT 30代 赤松洋介 採用 コーディング 20代 村上福之 勉強会 プロジェクトマネジメント UX Ruby 中島聡 法林浩之 ITイベント Webエンジニア 五十嵐悠紀 モノづくり ひがやすを LINE 受託開発 ビッグデータ ウエアラブル IT業界 ドワンゴ コミュニケーション MAKERS ハードウエア ロボット インフラ Webアプリ SI 女性 tips ゲーム ソーシャルゲーム iPhone 高須正和 女性技術者 UI/UX トヨタ マイクロソフト イノベーション 研究者 ノウハウ 自動車 息抜き システム プラットフォーム グローバル チームラボ 和田卓人 メイカームーブメント 教育 開発者 イベント エンジン iOS ソニー オープンソース Java サイバーエージェント 女子会 コミュニティ ソフトウェア メーカー 家入一真 スーパーギーク 増井雄一郎 IPA GitHub 40代 テスト駆動開発 日産 ニュース TDD グーグル 音楽 モバイル PHP ソフトウエア TechLION

タグ一覧を見る