Yahoo! JAPAN

「短期的な変化に振り回されるな」Ruby父まつもとゆきひろにみる“自己肯定感つよつよエンジニア”になる秘訣

エンジニアtype

「短期的な変化に振り回されるな」Ruby父まつもとゆきひろにみる“自己肯定感つよつよエンジニア”になる秘訣

プログラマーの三大美徳の一つ、「傲慢さ」。自分の書いたコードに自信を持ち、常に改善を目指そうとする姿勢の大切さを説いたものだ。

「傲慢さ=プログラミングに対する自信」を正しく持つには、適度な自己肯定感を持つことも一定必要になってくるだろう。自己肯定感が低すぎれば、挑戦する意欲すら湧かないはずだからだ。

そこで今回は自己肯定感を高めるヒントとして、Rubyの生み親・まつもとゆきひろさんの考え方を紹介したい。まつもとさんはRubyを開発した理由を「自己肯定感を高める言語が欲しかったから」と語る。

果たしてその真意とは? まつもとさんの「言語開発経験」から、エンジニアが自己肯定感を高める手がかりを探っていこう。

目次

プログラミングの力で自身をエンパワーメントしたかった時代や流行のノイズに流されず、本質を見極める「誰かの役に立つ」と実感したとき、エンジニアは強くなる

Rubyアソシエーション理事長
Ruby開発者
まつもと ゆきひろさん(@yukihiro_matz)

プログラミング言語Rubyの生みの親であり、一般財団法人Rubyアソシエーション理事長。株式会社ZOZOやLinkers株式会社、株式会社LIGなど複数社で技術顧問などを務めている。オープンソース、エンジニアのコミュニティ形成などを通じて、国内外のエンジニアの能力向上やモチベーションアップなどに貢献している。島根県松江市名誉市民

本記事は、日本最大級のエンジニアコミュニティ「Qiita」による、2024年11月15日実施「Qiita Conference 2024 Autumnまつもとゆきひろさん基調講演『プログラミング言語デザインケーススタディ』」の内容から、一部ピックアップして紹介しています。
※「最大級」は、エンジニアが集うオンラインコミュニティを市場として、IT人材白書(2020年版)とQiita登録会員数・UU数の比較をもとに表現しています

プログラミングの力で自身をエンパワーメントしたかった

1993年に開発され、30年以上経った今も『TIOBE Index』で16位(*1)、『RedMonk Ranking』で9位にランクイン(*2)など、世界中で愛されているプログラミング言語・Ruby。その誕生の背景には、意外な動機があった。

「世界中の人に使ってもらおうなんて、これっぽっちも思っていませんでした。ただ、自分が気持ちよくプログラミングするための言語がほしかったんです」

そう語るのは、Rubyの生みの親・まつもとゆきひろさんだ。

「僕は特別な人間ではありません。でもそんな自分が、プログラミングを通してコンピューターの力を借りれば、一見偉大に見えることを簡単に成し遂げられる。つまり、プログラムを書くことで『俺TUEEE状態』 になれるんです(笑)

まつもとさんにとって、プログラミングとは「自分が強くなれる」手段だった。その感覚をもっと純粋に楽しむために、彼はRubyを作ったのだという。

「『これはやっちゃダメ』『こうしなきゃいけない』みたいな決まりごとばかりの言語では、自由にコードを書けない。でも、もっと自由に、直感的に書ける言語があったら? きっと楽しいし、プログラミングの可能性も広がる。そう思ったんです」

この「制約からの解放」こそが、Rubyの最大の特徴であり、まつもとさんが目指した世界観だった。事実、Rubyには彼が求めた”自由”が詰め込まれている。

オープンクラス既存のクラスを自由に拡張・変更できる。例えば、Integer クラスの + 演算子を変更し、1 + 1 = 3 のような動作にすることすら可能だ。組み込みクラスとユーザー定義クラスの一貫性標準のクラスとユーザーが定義したクラスに差がなく、自由に拡張やカスタマイズができる。柔軟な文法シンプルな構文でDSL(ドメイン特化言語)を作りやすく、Rubyベースのビルドツールやインフラ管理ツールが多く生まれた。

Rubyという武器で自身をエンパワーメントする。これこそが「エンジニア・まつもとゆきひろ」の自己肯定感を高めたものであり、今なお多くのユーザーにRubyが愛される要因の一つでもある。

(*1) 出展TIOBE Index for January 2025
(*2) 出展The RedMonk Programming Language Rankings: June 2024

時代や流行のノイズに流されず、本質を見極める

Rubyが誕生して30年以上が経つ。その間、プログラミングのトレンドは何度も移り変わった。

「Rubyを開発した当時は、PerlやPHPなどの動的型付け言語が全盛期でした。でも今は、全く違う価値観になっています。現在は『型宣言のない言語は言語にあらず』とまで言われるほど、静的型付けが重視される時代になりました」

しかし、まつもとさんが「言語の世界では、10年経っても新参者」と語るように、プログラミング言語のライフサイクルは他のソフトウエアよりも遥かに長い。技術トレンドが数年単位で移り変わるのに対し、言語はそれに追従するのではなく、長期的目線で進化し続ける必要がある。

「開発言語について言えば、10年単位のトレンドに悩まされていてもしょうが無い。言語の特質は変えずに、流行に応じて必要なものだけを慎重に取り入れる。それがRubyの生存戦略でした」

実際、Rubyはオリジナルの設計思想を守りつつも、言語仕様を時代に合わせて進化させてきた。例えば、Ruby 2.0では「キーワード引数」や「Module#prepend」などの新機能が追加され、Ruby 3.0では「静的型解析のためのRBS」が導入された。これらは最新のトレンドに適応しつつも、Rubyの「書きやすさ」や「柔軟性」を損なわないように慎重に設計されている。

技術のトレンドが目まぐるしく変わる中で、「自分はこの技術ばかりで大丈夫なのか」と不安になるのは、多くのエンジニアが経験する感覚だろう。ただ、まつもとさんの言葉が示すように、短期的な変化に振り回されすぎる必要はない。

「あれもこれも」と焦るのではなく、自分の得意な分野を活かしつつ「本質的に価値のある技術を、自分に合ったペースで取り入れる」 ことが、自分自身のエンパワーメントにつながるはずだ。

「誰かの役に立つ」と実感したとき、エンジニアは強くなる

Rubyが世界的な立ち位置を確立した要因の一つとして、「コミュニティーがなければ、Rubyはここまで大きくならなかった」とまつもとさんは語る。

「時としてプログラマーは、自分一人の力だけで世界に影響を与えることができる。ただ、一人の知識や発想力には限界があります。そのリミットを補ってくれるのが、コミュニティーの力です」

プログラミング言語は、その設計者一人が育てるものではない。開発者のフィードバックや貢献がなければ、言語は発展しない。Rubyの初期コミュニティーは、「200人のメーリングリスト」から始まった。しかし、それが言語の発展を大きく加速させた。

「200人集まれば、一人では届かないところまでソフトウエア開発を駆動できるというのが、僕の持論です」

初期のRubyユーザーは、まつもとさんと直接コミュニケーションを取りながら、バグの修正や機能改善の提案を行っていた。そして、Rubyの認知度が高まるにつれてコミュニティーは拡大し、OSS開発のエコシステムが形成されていった。

「最初は個人的な楽しみで作ったわけですが、Rubyが成長する過程で、たくさんの人が関わってくれました。自分が作ったものが、誰かの役に立つ。それが分かることで、開発を続けるモチベーションになりました」

Rubyの成長を支えたのは、単なるコードの改善だけではない。コミュニティーが育ち、相互に学び合い、共に成長する場があったからこそ、多くの開発者が関わり続けた。

一人で成し遂げることには限界があるが、コミュニティーの力を活用することで可能性は大きく広がる

エンジニアもまた、他者と関わることで視野を広げ、技術を深めることができる。その過程で「自分の知識が誰かの役に立っている」と実感することは、仕事への自信と自己肯定感につながる。

単なる成功体験の積み重ねではなく、「時間をかけて築いたものが、やがて誰かの役に立つ」という実感の中にこそ、「エンジニアとしての自己肯定感」が生まれるのではないだろうか。

写真/桑原美樹 文・編集/今中康達(編集部)

【関連記事】

おすすめの記事