2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
リンクをコピー
記事をブックマーク
楓博光(以下、楓):では次の質問です。「Rubyがここまでメジャーになれたターニングポイントや、理由はなんだと思われますか」。
まつもとゆきひろ氏(以下、まつもと):いくつかあったと思うんですけど。1つは、1995年当時、ネットニュースという媒体があって、そこに、自分が作ったソフトウェアを公開するスレっていうんですかね、今風に言うと。ニュースグループというのがあったんですけど。
1995年の12月、そこに「Rubyを作りました。どうぞ興味のある人はダウンロードして使ってみてください」と公開したんですね。当時は、メールで議論をするのが基本だったので、メーリングリストも作ったんですよ。
そしたら2週間で200人ぐらいの人が、そのメーリングリストに登録をしてくれたんですね。見たこともない聞いたこともない新しいプログラミング言語に、わずか2週間程度で200人もの人が参加してくれるというのは、大したことなので、「意外と興味を持ってくれる人がいるんだな」って思ったのが1995年ですね。あと1998年だったかな。
楓:それからまたさらに3年ぐらい経ってから。
まつもと:そうですね。Perlを作ったラリー・ウォールさんも呼んで、「Perl Conference」っていうのが開かれたんですけれども。そこで、キーノートのスピーカーとして呼ばれたんですね。なんでPerlのカンファレンスにRubyを作っている人が? とは思ったんですけど(笑)。
楓:へえ。その当時はRubyもまだそんなにメジャーじゃなかったんですか。
まつもと:知っている人は知っているぐらいの感じなので、ぜんぜんメジャーでもなんでもなかったです。呼んでもらって、Rubyについて紹介をする機会があったんですね。Rubyとわりとユーザー層がかぶっている、Perlを使う多くの人たちに紹介をする機会があった。
まつもと:それから1999年にRubyの本を出して、それが意外と1万何千部売れました。技術書はあんまり部数が出ないので、1万部も出ると大ベストセラーなんですよ。
楓:そうですよね。すごいことですよね、1万部。
まつもと:誰も聞いたことがないようなプログラミング言語なのに、1万何千部も売れました。本はアスキーという会社が出したんですけど、アスキーの人たちから「よく売れました」とだいぶ褒められてありがたい限りという感じ。これが1999年。
もうあと2つあって。2000年に英語の本が出て、それに伴って2001年にアメリカで「Ruby Conference」というRubyのカンファレンスが開かれたんですね。最初のRuby Conferenceは出席者34名しかいなかったので(笑)。
楓:おお。
まつもと:最後は2004年に「Ruby on Rails」が出たことですね。Ruby on Railsは別に最初のフレームワークでもなかったんですけど評判になりました。2004年に出て、2005年、2006年あたりで非常に話題になったので。
そのRuby on RailsでWebアプリケーションを作るということは、Rubyでプログラミングをするということなので、その人気に引っ張られる感じで非常に普及したというのがあります。2012年から5〜6年ぐらいの間、ちょっと持ち上げられ過ぎぐらい高く評価されたというところはあると思います。
楓:作られてから一気に広がるまでは、15年とか、もうちょっとかかっていたぐらいなんですかね。
まつもと:そうなりますね。本人だって普及するなんて思っていないから。
楓:そうなんですね。一気に普及させようという感じでもなかったんですね。
まつもと:マーケティングをするつもりもないし、野望もなにもない、ただずっと続けていましたという感じなので、どちらかというと、伸びてビックリというところはあるんですね。
楓:そういうことなんですね。
楓:これも何人かに質問をいただいているのでちょっと聞きたいと思います。「プログラミング言語を作ると儲かるんですか。お金儲けはどうするんですか」みたいな、そういう質問があるんですが(笑)。
まつもと:Rubyはオープンソースソフトウェアなので、ダウンロードしたからってお金が発生することはないわけですね。
だけど、1つは、Rubyを応援したいという企業さんの中で、Ruby開発者をフルタイムで雇用している企業さんもいくつかあるんですね。私が所属している松江のネットワーク応用通信研究所もそうですし、クックパッドさんが私以外の2人のフルタイム開発者を採用してくださっています。あとMoney ForwardさんとかSpeeeさんとか、それらの会社がRubyの開発者をフルタイムで雇用しています。
海外でもGitHubやShopifyなど、Rubyを使っている企業の中でかなり大きめのところは、フルタイム雇用をしてRubyの開発に貢献していらっしゃるので、そういうかたちで給料を貰っている人たちもいます。私もそうです。
私に限定して言うと、それに加えて副業みたいな感じでいくつかの企業さんの技術顧問をしていますので、その技術顧問の謝礼もきます。
それから原稿を書く機会もあるので、原稿に対する原稿料がきます。それから、今回のサポーターズの技育祭もそうなんですけれど、講演依頼もあるので、こうやって出番があると、ものによりますけど謝礼が貰えることもけっこうあります。それも収入になるという感じです。
具体的な金額は、しゃべる習慣が日本にはないし、いろいろ差し障りもありそうでリスクが見積もれないので言いませんが、普通のサラリーマンプログラマーと比べても十分に余裕があるだけの収入は得ています。
楓:夢がありますねえ!(笑)。それじゃあプログラミング言語を作りましょうということで。
楓:それでは次の質問です。これはぜひMatzさんに熱く語っていただきたい質問がきています。「ぶっちゃけふだんはPython中心に書いています。Ruby未経験なんですが、Rubyの魅力をRubyの父から直接教えていただきたいです」ということです。
まつもと:そうですね。1つは、やはりRuby on Railsがあるので、Webアプリケーションの開発をする時の生産性は高い傾向があります。もちろんPythonにもDjangoとかFlaskとかそういうWebアプリケーションフレームワークがあるわけなんですけれども。
それらのライバルと言ってもいい他言語のWebアプリケーションフレームワークと比べても、Ruby on Railsは十分に生産性が高いと思います。特に、小さなチームで新しいアプリケーションを素早く開発するという観点で言うと、非常に優秀なWebアプリケーションフレームワークだと思います。そこが魅力の1つです。
また、アプリケーションはそれぞれパフォーマンス特性が違うので、断言するのは難しいんですけども、ほとんどの場合でRubyのほうがパフォーマンスが高いと思います。
ただ、それを言い出すとじゃあGoやRustはどうなんだ、みたいな話になるし、コンパイル型言語にはなかなか勝てないので、それを言い出してもしょうがないと思うのですが、パフォーマンス的テクノロジーの投資としては、例えばPythonよりもずっと早くからJITコンパイラを導入したり、他の最適化もPythonよりも早く導入していたりするので。パフォーマンス的には勝てることが多いんじゃないかなとは思います。
最後は、これを魅力に感じる人がいるかどうかにもよりますけれども。開発者、コアチームと、ユーザーの距離が近いので、Rubyがこんなだったらいいのになと、ふと思いついたアイデアを話しかけていくと、わりと本気で聞いてもらえるところがあります。
そうするとRubyを作る側に回ることができるというか、そういう距離感の近さは魅力なんじゃないかなと思います。
魅力ばかり言うとちょっとあれなので、負けていることも正直に言うとですね。コミュニティサイズがだいぶ違います。Pythonなら、機械学習や人工知能系のジャンルで、いいアプリケーションライブラリがあるけど、Rubyだとそろっていないケースが多いんですね。
あるのはあるんですけど、例えば機能的に勝てないとか、あるいはドキュメントが充実していないとか、そういうコミュニティサイズによる弱さはちょっとありますね。特に苦手なジャンルにおいて。
楓:なるほど。みなさん、ぜひこれを機にRubyをちょっと触ってほしいなと思います。
楓:それでは続きまして、これも失礼を承知での質問だと思うんですが。「RubyもしくはRailsはオワコンだというのをよく耳にしますが、Rubyの開発者としてRubyの未来をどう考えていますか」。というところでいかがでしょうか。
まつもと:「ハイプ・サイクル」っていう言葉があってですね。新しい技術が現れた時にそれがすごく話題になるんだけど、話題になり過ぎて実際の能力よりも高い期待を持たせてしまった挙句、物理的な限界とか、なんでもかんでもできるわけではないので幻滅する人が出てきて、次第にみなさんが実態どおりの認識をして安定していくことをハイプ・サイクルと呼びます。
Rubyの場合もやはりハイプ・サイクルを経験したんだと思うんですね。2004年ぐらいからものすごーく話題になって、実態以上にもてはやされたのが正直なところだと思うんです。
ただ、2012年ぐらいからは幻滅期っていうんですかね、ライバルのほうがいいんじゃないかとか、Rubyよりもこの点において優れている他の言語があるよみたいに言われることがあって、幻滅した人も中にはいると思います。
じゃあそれよりもさらに10年経った今はどうかというと、現実に即した状態でRubyを認識している人のほうが多いんじゃないかな、と思っています。
人の見方によっていろいろなんですね。一番高いところを知っていて、現状を見た時にそっちのほうが低いので、人気が落ちたというふうに見る人も当然いるわけですよね。人気が落ち続けると消えてしまうので、オワコンと言う人もいます。日本でも海外でも、毎年のように「Rubyは死んだ」みたいなことをブログに書く人がいます。
楓:毎年言われている印象がありますよね。
まつもと:そうですね。コミュニティの中では「今年も死んだ」とか、「今年の死に方は近年ないナントカで」とか、ボジョレーヌーヴォーみたいな言い方をしていることがけっこうあるんですけれども。
楓:あはは(笑)、ボジョレーヌーヴォーと一緒なわけですね。
まつもと:正直言うと、例えばみんな大好きGitHubとか、世界中の人が使っているShopifyとか、全部Rubyで……全部って言ったら言い過ぎだけどRubyで動いているわけですよね。
例えばスケーラビリティの話をした時に、「あなたがこれから作るWebアプリケーションがGitHubほどたくさんのユーザーを集めることがありますか」とか、「Shopifyほどたくさんトラフィックを捌くことがありますか」ということを考えると、まあまあないわけです。
それを考えると、「Pythonのほうが強い」とか、「Javaのほうが強い」とか言うのは当然だと思うんですけど、一番ではないからもう生きる余地がないとか死ぬとか言うのは、ちょっと大袈裟な表現ではないかなとは思いますね。
トヨタじゃなかったら存在できないのかというところですね。日本には車メーカーがいったいいくつあるの? という話でもあるので。
楓:続きまして、リアルタイムでいただいた質問です。「今新しく言語を開発するとしたら、プログラミングパラダイムや用途など、どのような仕様の言語を作りますか」。という質問をいただいています。
まつもと:どうなんだろうなあ。前提にしているものがいろいろあるので、なかなか言いにくいところではあるんですけれども。私が一番魅力を感じるのは、Rubyみたいな特定の目的ではない汎用プログラミング言語なので、そっちをやりたいなあとは思っています。
ただ、私は数年前にちょっとお遊びで、Streemという名前のストリーム型データ処理をする特定目的言語を作ったことがあるんですね。世の中にはRubyもあるしPythonもあるし、汎用言語はもうすでにいっぱいあるから、今これから必要とされるのは特定目的の言語だと思ってちょっとデザインしました。
なのでちょっとわからないですね。自分の興味の方向としては汎用言語を作りたい、Rubyみたいな言語を作りたいと思いますけど。現実的なニーズから見ると特定目的というか、ドメインが狭い言語のほうが生きる価値はあるかなっていう気はしますね。
楓:そのStreemは今はどういう状況なんですか。
まつもと:今はRubyを作るのが忙しくて、Streamはここ何年かほったらかしですね。
楓:そうなんですね。ちょまどさんがパワーワード、「神々の遊び」とコメントを(笑)。お遊びでプログラミング言語を作るということですが。
まつもと:え、作るでしょう?
楓:(笑)。
まつもと:だって、2020年でしたっけ。なんか中学生が作っていたじゃないですか「Blawn」。
楓:ありましたね。
まつもと:言語を作るのは、やればできるんですよ。
楓:ありましたね。はい、ということです。
楓:これもリアルタイムでいただいている質問です。「今Ruby、Cの次に好きな言語はなんですか」。
まつもと:RubyとCの次に好きな言語。うーん、なんだろうなあ。いや、私はプログラミング言語オタクなので、すべてのプログラミング言語を愛しているんですけれども。
楓:おおー。
まつもと:そうだな。Elixir、Go、Rustは気になるっちゃ気になるんですね。ただ、正直に言うとRustは僕の好みではない(笑)。
楓:おおー。気になるポイントと好みじゃないポイントはどのあたりなんですか。
まつもと:やはりCを一番よく書くので、システムプログラミングの領域が、私がよくプログラムする領域なんですけど。そこに出てくる言語の中で今一番メジャーなのは、GoとRustであるというのが気になるところですね。
だけど、Rustが型でいろいろなことを言ってくれるのはうれしいところとうれしくないところがあって。つまりコンパイラに怒られるんですね。僕はコンパイラに怒られるのがすごく嫌いなので(笑)。なんかストレスがたまるんですよね。
楓:(笑)。
まつもと:どちらかというと、技術的なことではないところで一緒にがんばれるものがいいなって思っていて(笑)。
楓:なるほど。気持ちよくやれるかというのが大事なんですね。
まつもと:そうですね。
(次回へつづく)
2024.12.20
日本の約10倍がん患者が殺到し、病院はキャパオーバー ジャパンハートが描く医療の未来と、カンボジアに新病院を作る理由
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.17
面接で「後輩を指導できなさそう」と思われる人の伝え方 歳を重ねるほど重視される経験の「ノウハウ化」
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05