第19話 英語圏ではMatzの愛称で知られるプログラマー第一人者【島根県】

文字数 6,915文字

まつもとゆきひろ(愛称:Matz(マッツ)、1965-)

 「水の都」として知られる島根県の県庁所在地・松江市の名誉市民であるまつもとゆきひろは、日本のIT業界のなかでおそらくもっとも尊敬され、知名度の高い人物といえるでしょう。
 その要因は、なんといっても世界レベルのプログラミング言語「Ruby(ルビー)」を開発した功績にあります。
 しかし一方でまつもとは、「東京嫌い」で知られ、大都会のけん騒をきらい地方都市を転々とする生活スタイルの持ち主であったり、そもそもRubyは、勤務中にこっそりつくっていたなど、常人とは一味違うエピソード満載の人物でもあります。
 本稿では、まだまだ世間一般には知られていないRubyの、世界での活躍ぶりを確認するとともに、幼少期から“言語好き”の片りんをみせていたまつもとが、いかにして新たなプログラミング言語の開発に至ったかの足跡を追うことにします。

幼少期から根っからの言語好き

 まつもとは、生まれこそ大阪府でしたが、4歳の頃には鳥取県の人口第2位都市・米子市へ移り、高校卒業までをそこで過ごします。
 幼少期のエピソードで筆者がまず注目したのは、本好き・活字好きの姿です。家では、平凡社百科事典全26巻を「あ」から始め最後まで読み尽くし、近所の本屋にあった本も立ち読みで「大概読んだ感じです」と本人は語っています。活字好きは現在も変わっておらず、食事をしていてもつい「成分表」などを見始め、「あぁそうか、これは小麦粉が一番多いのか」などと納得しているそうです。

実は計算が苦手で、数学・物理・科学はダメ!

 もうひとつのエピソードは、予想外な側面でした。まつもとの学歴は、筑波大学第三学群情報学類卒業で、最終的には島根大学大学院で博士号も取得しています。このような経歴の人物が、世界的なプログラミング言語を開発したとなると、本人自身もさしずめ人間コンピューターみたいなバリバリのスーパー理系人物を思い浮かべがちです。しかし、現実はさにあらず。インタビューで彼は「私は圧倒的に数学が悪くて……」と述べ、成績が良かったのは国語、英語、社会で、計算を伴う数学、物理、科学はことごとくダメだったと振り返っています。
 そして自身を分析して、興味があったのは、人間の心理と人間の言語、プログラミングを含めて言語全般にあったと語っています。
 つまり、プログラミング言語の開発者というのは、要するに「言語学者」なんだなあということを強く印象づけられるエピソードを確認したのでした。

東京嫌いで、一貫して地方都市で生活

 まつもとの「東京嫌い」の生活スタイルも一貫して変わっていません。デイビット・フラナガンとの共著で2009年に刊行された主著のひとつ『プログラミング言語Ruby』(オライリー・ジャパン)の著者紹介では「東京嫌い、温泉好き」と紹介されています。
 高校時代までを鳥取県米子市で過ごした後、大学生活は筑波大学のある茨城県つくば市で送り、そして就職時期を迎えると、わざわざ開発拠点が静岡県浜松市にあるIT企業を選んで就職しているので、東京からの逃避ぶりは徹底しています。
 そして1997年から島根県松江市に居住し、現在に至っています。YouTubeで視聴した最近(2024年6月)の講演でも、同じく「東京嫌い」であることを表明しているので、その姿勢に変わりはないようです。

新言語開発の発端は“没”になった出版企画

 まつもとの最初の職場となった、前述の開発拠点が静岡県浜松市にあるIT企業は、入社初年度の1990年こそバブルの末期で給与も賞与も良かったものの、翌1991年の終わりにバブルが崩壊すると、とたんに業績が悪化し、仕事がなくなる状況に陥ります。
 まつもと自身は、同期200人のなかで大学でコンピューターの技術や学問を学んでいた経験者は6人という専門性を買われ、クライアント向けではなく、社内システムの開発を担当する部署にいました。しかし不況でその部署は解散となり、まつもとを含む2人だけがメンテナンス要員として残されました。開発業務はなくなり、ツールの不具合等で電話がかかってくるのも2~3日に1回程度という、暇を持て余す勤務が続きました。
 その頃、まつもとは、会社の先輩から「言語を作りながら学ぶオブジェクト指向」という趣旨の技術系教本の出版企画の相談を受けます。「じゃあ、私プログラミング言語は得意ですし、何か言語を作りましょうか」と応じたのが最初のきっかけでした。
 結局、その出版企画は没になるのですが、自由な時間は豊富にあるので「いっちょプログラミング言語でも作ってみるか」と考え、実行に移したのでした。

最初に行ったのは「Ruby」というコードネームの命名

 そして、まつもとが最初に行ったのが、新しいプログラミング言語のコードネーム命名でした。当時、まつもとが模範としていたPerl(パール)という有名プログラミング言語の名称から連想されるPearl(真珠)に続く宝石は何かと考えた時、長たらしい文字数のダイヤモンドやサファイアは避けて、短いRubyに落ち着いたというのが真相です。
 このエピソードを知って筆者が感じたことですが、先ほど、まつもとを「言語学者」だと評したことと並んで、「この人は優れたコピーライターでもある」と思うのです。これにはさらに理由があって、英語圏での「Matz(マッツ)」という愛称も、実は周囲からそう呼ばれるようになったのではなく、まつもと自身の命名だからです。
 「海外の人は、放っておくとファーストネーム(ゆきひろ)で呼ぶようになる。そんな呼び方をするのは母親だけなので、もし呼ばれると何だか気持ちがぞわぞわする。そうならないように先手を打ってMatzという呼び名を自分で作りました」とまつもとは説明しています。
 Rubyの成功は、もちろん構文の簡潔さだったり、Rubyを使ったフレームワークの生産性の高さだったりするわけですが、プロジェクト名や開発者の名を、簡潔で覚えやすく、かつ魅力的に命名したという“言語感覚”も、ブームに一役買った気がするのです。

勤務時間中にこっそり作っていたという“伝説”の検証

 Rubyは、勤務時間中に職場でこっそり作られていたという“伝説”を検証します。前述したように、1社目の企業は、自由時間だらけだったので、開発作業は進みましたが、1994年に転職を決意した時、さすがに黙って持ち出すということはしませんでした。
 「こんなソフトウェアを作っていたんですけど、どうしましょう?」と上司に相談すると、「それは見なかったことにしておく。あなたの作ったものだから、持って行っていい」と言われ、Rubyは命拾いをするのでした。
 転職後も、勤務中にRubyを開発する作業スタイルは続けました。前の会社と違って、転職先では通常の業務があります。そこで、通常業務の開発は、往復40分の地下鉄通勤時に、電車内でノートPCを開けて1日分を済ませてしまい、会社ではRubyの開発に専念していたといいます。「私は手だけははやいんですよ(笑)」と述べているので、常人とは異なる超人的な入力能力を持っているようです。
 そうして完成したRubyを、1995年に正式に公開。同時に、会社のホームページ管理者に「ディレクトリを1個作って自分のためにちょっと使ってもいい?」と頼むと、「うん、いいよ」という返事だったので、Ruby紹介のページを作ったそうです。すると、それなりにアクセスが集まりました。何も知らない上司が「なんかうちの会社のホームページのアクセス数が急に伸びたんだけど」と喜んでいたので「たぶん半分は僕です」と説明した、という笑い話のような逸話が残っています。

“ITメジャーリーグ”にもなぞらえる言語の人気比較サイト

 “ITメジャーリーグ”というのはもちろん筆者が勝手に命名した空想上の世界です。しかし今日では、TVやインターネットを通じ、MLB(メジャーリーグベースボール)やNBA(全米バスケットボール協会)で活躍する日本人選手の姿をみることに喜びを感じる人も多いと思います。
 それと同じように、世界のプログラミング言語のなかで日本人が作ったRubyがどんな位置づけで、どんな活躍ぶりをみせているか、あるいは今後の展望がどうなるかを予想するのは気になるところです。
 こういった願望を満たすのに最適なサイトが存在します。開発者向けの業界誌などでよく引用される「PYPL(プログラミング言語の人気)」というサイトがそれです(文末の参考資料欄にURLを掲載)。
 同サイトでは、29の主要なプログラミング言語のシェア(市場占有率)や人気度を、色分けしたグラフでみることができます。
 視聴者は、好きな言語を選んで、2005年くらいから現在(2024年)までの約20年間の期間のなかでの栄枯盛衰の状況を、単独でみたり、ライバルや新興勢力との比較を行なったり、全体状況を把握できたりするのです。

そもそもプログラミング言語はどのくらいあるのか?

 しかし、その前に、そもそも世界にプログラミング言語というのはどのくらい存在するのかを概略で確かめておく必要があります。
 ピラミッドの裾野というべき底辺には、例えばプログラミングを学ぶ学生が「課題」として取り組む言語づくりがあります。その場合は、言語の利用者はその学生1人だけで、卒業すればその言語は終焉します。これだと世界中で毎年毎年輩出される、プログラミング言語を学ぶ学生の数だけ言語が存在することになります。
 そうではなくて、利用者がある程度存在する言語はどれほどあるのか? 厳密には分かりませんが、世にある情報を集約すると、少なくとも200ないし300、派生語を含めると1000くらいは存在するともいわれています。
 PYPLが絞り込んでいるのは、そのうちわずか29言語。筆者が、このサイトを“ITメジャーリーグ”になぞらえた理由を、多少ともお分かりいただけたかと思います。しかも、MLBやNBAで活躍する、あるいは活躍した日本人選手は複数いるのに対し、プログラミング言語のメジャーの舞台で活躍する日本出身選手はRuby1人なのです。

“ITメジャーリーグ”のラインナップをみてみよう!

 ではPYPLに戻り、まず全体状況を概観してみましょう。現在(2024年7月)、王者すなわち首位の座にいるのは「Python(パイソン)」です。シェア29.35%で、2位「Java(ジャバ)」の15.6%を大きく引き離しています。Javaは長らく首位の座をキープしてきた言語で、2つの言語を選択してグラフを表示させると、逆転の時期は「2018年頃」だったことが分かります。
 ちなみに、プログラミングなどとはほぼ無縁に近い筆者ですが、Pythonだけは“発作的に”入門書を買って、全体の4分の3くらいまで読み進めた経験があります。
 6位の「R(アール)」も知っています。こちらもPython同様、“発作的に”「統計学」が勉強したくなった時に、教本のなかでPCにインストールし統計データを扱うよう課題があったためで、実際はプログラミング言語ではなく、統計用のツールと思っていじっていました。
 そして、わが「Ruby」は29言語のちょうど中間あたりの15位にいました。Ruby以下の順位にも、有名言語が目白押しです。Microsoftの「VBA」は19位、「Visual Basic」は22位にいます。
 25位の「Cobol(コボル)」は1959年生まれの最古参です。名前だけは知っていて、長文のプログラミング構文で評判が悪い一方、いまでも、汎用機とか、メインフレームとかいうやたら安定した大型専用機を好む大きめの企業の中で、しっかり生き残っている印象があります。
 Ruby誕生時に模範だった「Perl(パール)」は27位に順位を落としていて、華やかだった2000年代前半の状況と比べ、凋落傾向がやや気になります。
 
われらがRubyの過去20年間の推移

 Rubyを選択して約20年間の推移を表示させると、2006年頃から2016年位までの一大ブームの頃に比べると少しずつシェアを落としてきています。しかし、その減少幅はJava程度に緩やかで、安定的な傾向の範囲に収まっていると考えます。
 1995年公式発表のRubyは、世代的にも29言語中の中間あたりに位置しています。同期には優等生のJavaがいます。頑固で意見が合わないオヤジ世代のCobolがいて、Rubyが誕生した時にはすでに活躍していて、あこがれの対象だった長兄のPerl(1987年生まれ)や、年上のいとこPython(1989年生まれ)に比べると、Rubyは次男か三男。子供世代はまだ出てきていませんが、そろそろおいやめいが活躍する時期にもなってきました。
 Rubyよりも若い世代で、このところ活躍が目立つのが、Mozillaが開発した2006年生まれの「Rust(ラスト)」で、現在、10位に浮上しています。
 しかし、振り返って、Rubyの2005年頃から2008年頃にかけての爆発的な急成長と比べると、現在話題のRustの上昇カーブは緩やかです。

Rubyを導入した大手企業とは?

 これまで、PYPLのシェアや人気度の指標を中心にRubyの状況をみてきました。さらに具体的な実績確認として、Rubyを使っている有名企業にも目を向けながら、理解を深めてみましょう。
 古くはTwitter(ツイッター)の初期開発が、Rubyで書かれていたことが知られています。
 ユーザー数1億人を誇り、現在はMicrosoft傘下である米GitHub(ギットハブ)社のソフトウェア開発プラットフォームもRubyで動いています。
 日本最大のレシピサイトCookpad(クックパッド)もRubyでできています。
 ECサイト作成支援を行うカナダのShopify(ショッピファイ)のeコマースプラットフォームもRubyでできています。ちなみにShopifyは、2021年には、名だたるカナダの銀行らをおさえ、時価総額がカナダ最大となった企業で、日本でいうと、トヨタのような存在感のある企業です。

Rubyとまつもとゆきひろの今後

 Rubyの開発体制は、2004~2008年頃から徐々に変わり始めています。開発コミュニティの規模が大きくなると同時に、2006年には、新バージョンのリリースマネジメントも、まつもと以外のメンバーが担当するようになりました。
 そのなかで、創始者であるまつもとの役割は、自らの特性や本来の興味に合わせた「言語の設計」に力点を置き、仕様を決めた後のコードを書く作業などは別のメンバーに任せています。
 一方で、プロダクトオーナーとしての絶対的な立ち位置は保持しており、集団管理体制になると、凡庸になったり一貫性に欠けるような弊害を防ぐ意図で、「慈悲深き終身の独裁者(*もとはPythonコミュニティから来た言葉)」として、今後もプロダクトをリードする意思を示しています。

 プログラミング言語の世界の栄枯盛衰をみていると、まるで生き物の進化や絶滅の歴史をみているようにも感じられます。永遠に存続する種がいないのと同様に、長く生きながらえる種もあります。
 もちろんRubyにも寿命があるのかもしれませんが、現状はIT界の“現役メジャーリーガー”であることに変わりはありません。これからもしばらくの間は、日本発プログラミング言語の雄姿を見守り続けたいものです。(第19話了)


(主な参考資料)
・まつもとゆきひろ(2012)『まつもとゆきひろ コードの未来』日経BP
・半年かけてやっと動いた”Hello, World!" Ruby言語をまつもとゆきひろ氏が17歳から開発した理由(2020年07月28日)、ログミーTech、 https://logmi.jp/tech/articles/324056(閲覧日:2024年7月25日)
・まつもとゆきひろの履歴書|仕事中にこっそり作ったRubyが世界を驚かせるまで(2019-09-26)、「ぼくらの履歴書」エン転職、https://employment.en-japan.com/myresume/entry/2019/09/26/103000(閲覧日:2024年7月25日)
・「PYPL(PopularitY of Programming Language)」https://pypl.github.io/PYPL.html (閲覧日:2024年7月27日)
・[まつもと ゆきひろ氏 講演] 日本発の言語が世界に届くまで(2024/06/04)、Japan Oracle Developers(YouTube)https://www.youtube.com/watch?v=thvCtynjU2g(視聴日:2024年7月27日)
ワンクリックで応援できます。
(ログインが必要です)

登場人物紹介

登場人物はありません

ビューワー設定

文字サイズ
  • 特大
背景色
  • 生成り
  • 水色
フォント
  • 明朝
  • ゴシック
組み方向
  • 横組み
  • 縦組み