プログラミング言語Rubyの生みの親、まつもとゆきひろ氏が語る「学生エンジニアの生存戦略」。テクノロジーの世界で成功を収めるために必要なスキルとは何か、そして技術的な成功が必ずしも経済的成功につながらない現実にどう対処すればよいのでしょうか。30年以上にわたりRubyを開発し続けてきたまつもと氏だからこそ語れる経験談と、AIの台頭する現代における若手エンジニアへの具体的なアドバイスをお届けします。
諦めない継続力が成果を生み出す
まつもとゆきひろ氏:最後のスキルが、継続力ですね。先ほどちょっと話しちゃったんだけど(笑)。成果が出る前、結果に時間がかかることが多いんですね。そうすると、諦めない力ってけっこう重要です。Rubyの場合も、公開まで3年、人気が出るまで10年。
今ね、Rubyを公開した1995年とかとだいぶ時代が違うので、その広まる速さというのはSNSとかを通じてだいぶ高速化されているので、今はそんなに、3年とか10年とかはかからないかもしれないけれども。でもですね、そこから今に至るまで30年以上経っているわけですね。
過去のテクノロジーを見ていくと、本当にこれはすばらしいテクノロジーだったんだけど、会社が潰れましたとか。開発者がいなくなりましたとか。コミュニティが衰退しましたとか。さまざまな事情で、すばらしい技術だけど続けられずに消えていった成果みたいなのがけっこうたくさんあるんですよね。そうすると、続けることって本当に重要であるというふうに思います。
オープンソースの技術的成功と経済的課題
言語能力、英語力、継続力ですね。それらがあって、これらの3つのスキルがあると成功確率がすごい、非常に高められるというふうに思いますが。それでも成功の保証がないんですね。あるいは技術的に、いや情緒的に成功したといっても、経済的に成功するとは限らないんですね。特に、ソフトウェア開発者が知名度を上げようと思うと、Rubyみたいなオープンソースソフトウェアを公開するみたいなのが一番いい手ではあるんですけれども。
オープンソースソフトウェアって、いくら使ってもらってもお金にならないんですね。売り物ではないので(笑)。そうすると、「まつもと、オープンソースソフトウェアを作りました! このオープンソースソフトウェアは、すばらしいのでたくさんの人が使ってくれますけど、私には一銭も入りません」みたいなことは、よく起きるんですね。
それは、すばらしいソフトウェアを作った技術的成功とか、「Rubyを作ったんですね」って言われる情緒的成功であるとか、そういうのがあっても、最後の経済的に成功につながらない可能性があるんですよね(笑)。
実際にRubyではない他の多くのソフトウェア、オープンソースソフトウェアでは、自分の持っているソフトウェア技術を会社に売って、その会社に所属するソフトウェア開発者として給料をもらうのであれば、年収1,000万円とか、2,000万円とかをもらえるような、すばらしいスキルを持ったエンジニアが自分の開発時間を、そのオープンソースソフトウェアに捧げているばかりに、他の人が当然もらってしかるべき収入よりもはるかに少ない額。
だけど気持ち的には満足している人も多いんだけど。でも、ふと冷静になった時に「俺、働き方を変えたらもっと、この収入が3倍になるような気がするんだけど、これでいいのかな」って思うという話はね、何年かに1回聞くんですよね。あまり良くない。
知名度を価値に変える横展開の力
その問題をどう解決するかというと、やはりちょっと横展開が必要なんじゃないかなというふうに思います。知名度が上がると、それは価値に変えることができるので。価値に変えることができると、それはお金に変えることができるんですね。例えば私の場合ですと、私がRubyの活動をしているということそのものを支援してくださるスポンサー企業さんがいらして。
そういう企業さんが、私にその幾ばくかの寄付であるとか、お金。経済的支援みたいなものをしてくださっています。それから今回もそうですけども、講演をしたり原稿を書いたりということで、講演料・原稿料もいただいています。それから、いくつもの会社で技術顧問をしているので、その顧問料というかたちでお金をもらっています。
これはそれぞれね、たぶん最初は別にやりたくてやっているわけじゃなくてね(笑)。まぁ、スポンサーはね、向こうからオファーしてくださったので「ありがとうございます」って言って引き受けたんですけど。例えば私はもともと人前で講演する、何百人もの前とかに出ていって講演するようなタイプではなかったんですけども。
頼まれたことを断らずに可能性を広げる
技術カンファレンスとかで「あなたの作っているRubyに興味があるから、ちょっと話してくれませんか?」って頼まれて、「えー!?」とか思ったけど。いざやってみたらそれがきっかけになって講演をするようになって、その中には報酬をいただけるものもたくさんあって。そういうようなことで報酬をいただけるようになりました。
あるいはRubyのまつもとが何を感じて、どういうふうに思っているか。あるいは「知っている知識について聞きたいです。原稿をお願いします」って、お願いをされて書いていくので、原稿料をいただけるようになりましたとか。
あるいは、ある飲み会で話をしていたら「うちの技術顧問をやってくださいませんか?」と言われて、「冗談かな?」と思ったらわりと本気で、それを引き受けたら「じゃあ、うちも」「うちも」って言って数が増えて、そのことによって、今の私の収入の3分の1。たぶん半分ぐらいは技術顧問でお金をもらっているので(笑)。
最初はね、そういう可能性があるとも思わなかったんだけど、そういうのを引き受けていくうちに、なんか収入がどんどん増えていって。ありがたい限りですね。基本的には、本当にイヤな場合は別ですけども、基本的に頼まれたことは断わらない。つまり、自分の知っている自分以外のところを他人が見ていて「まつもとさんは、これもできるんじゃない?」っていうふうに頼まれて、その中からその価値を見出す。
もちろん、やってみてできなかったこともたくさんあるんですけども。ただ、自己認識はプログラマーであって、私は講演者でも作家でもないと自分でも思っているんですけども。ただ、他人が私を見ていて「まつもとさんだったら、これできるんじゃない?」という、知らない自分を見出してくれることってけっこうあって。そういう仕事を断わらないことで広がる可能性みたいなものはあったと思うんですね。
その結果、経済的成功。まぁ、ビルゲイツぐらいお金を持っているわけではないんですけども(笑)。ビジネスパーソンとしてぜんぜん不自由ない生活ができるような収入を得ることができたと。何よりですね、好きなこと。Rubyを作って、言語をデザインすることによって生活が成り立つっていうのは、私にとって偉大な経済的成功だというふうに思うんですね。それは、私の成功のパターンだということですね。
教師としてのAIと人間のキャリア
あと、現代なので、もうここ数年ですね。AIがすごく伸びたので。キャリアとAIの話についてもちょっとだけしておきたいと思います。最近話題なのはね、LLM、大規模言語モデルということなんですけども。大規模言語モデルというのは、教師にすごく向いていると個人的に思うんですね。
つまり、怒らない。飽きない。機嫌悪くならない。そして広範な知識を持っていて、かつ、出しゃばらない。すばらしい。教師として最高じゃないかなというふうに思うんですね。それで知的なスキル習得をすごく助けてくれるんですね。わからないことがあったら聞けばいいし、聞いてもわからないことがあったら、さらに問い直せばいいわけですね。
しつこく、しつこく聞いても何も怒らないんですよね。同僚としても優秀で、仕事を一部肩代わりしてくれるんですよね。「ここの部分を作っておいて」って、最近AIの部によるソフトウェア開発もだいぶ進んできて、最近は「バイブコーディング」っていうらしいですね。AIの補助によるソフトウェア開発のこと。それで一部肩代わりしてくれたりとかして、「ここの関数を作っておいて」とか、「ここの部分をやっておいて」って。