2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
リンクをコピー
記事をブックマーク
まつもとゆきひろ氏:こんにちは、まつもとゆきひろと申します。今日はですね、DXDカンファレンス(「Developer eXperience Day 2023」)で「Visionとリーダーシップ」というテーマでお話をします。よろしくお願いします。
今日はRubyのカンファレンスではないので、まず自己紹介から始めます。まつもとゆきひろと申します。こんなアイコンで活動していますけども、ふだんはひらがなで「まつもとゆきひろ」という名前を使っています。まぁ、ペンネームですね。それから英語圏では、Matzというニックネームで活動しています。なんかね、「ゆきひろ」とか「まつもと」とかだとあまり覚えてもらえないので、自分で短いニックネームを付けて、こう呼ぼうと決めています。
誰かというと、Rubyを作った人ですね。プログラミング言語のRubyを知っている人もそれなりにいると思いますが、そのRubyを作った人です。その結果、たぶん日本人で一番有名なプログラマーと言ってもいいんじゃないかなと思います。
もちろん優秀なプログラマーの方はたくさんいらっしゃるんですが、例えば海外に行って、「日本人で誰かプログラマーを知っているか?」と聞いた時、まぁいろいろな方の名前が出るかと思いますが、たぶん私の名前が一番たくさん出るんじゃないかなと思います。「(日本で)一番優秀なプログラマー」と(スライドに)入れてもよかったんですけど、そこまでは、残念ながらちょっといかない感じがします。
あと、松江市さんから名誉市民というものをいただいていまして、松江市名誉市民です。
Rubyを作り始めてから、今年(2023年)で30年経ったんですが、今日はその30年の間で学んだことをベースにお話ししようと思います。Rubyを作り始めたのは、1993年2月24日です。ずいぶん昔になりますね。30年以上も前です。
その時から現在まで続く、このRubyというものをソフトウェアプロジェクトとして見た時、あるいはRubyというものをソフトウェアプロダクトとして考えた時に、ある種の特異性があるんじゃないかなとは思います。
その特異性とは何かというと、1つは「30年続くプロジェクトである」ということですね。それから「海外でも広く使われていること」。それから「オープンソースである」ということ。これらがRubyをソフトウェアプロダクトとして見た時の特異性ではないかと思います。
考えてみると、今日はDXD、Developer eXperience Dayなので、ソフトウェアの開発について、ある程度の知見を持った方がたくさん聞いてくださっていると思います。ソフトウェアってあまり長生きしないんですよね。ソフトウェアには寿命があって、多くのソフトウェアは何年とか、長くても10年とかです。廃れるソフトウェアというのが、圧倒的に多いんですよ。
それを考えると、(Rubyの)30年ってすごく特異なんですね。ソフトウェアの寿命は何で決まるのか。例えば、多くの企業体は30年ぐらいが寿命であることが多いと言われています。つまり30年経つと世代交代があったり、事業を引き継いだりする中でうまくいかないことが多くて、潰れたり買収されたり業態変換したりすることが多いんですね。
ソフトウェアは組織によって運営されることが多いので、組織の寿命がプロダクトの寿命になることが多いです。そういう意味で言うと、「プロダクトの継続」みたいなものが困難になるのが、5年、10年、15年という感じです。それを超えて生き残るソフトウェアももちろんありますが、少数派ですね。
ソフトウェアは物理的実体がないので、放っておいても腐ったり錆びたりしないんですよね。なので、1回作ったらずっともちそうな気がするのですが、まぁ実際はそうはいかないんですね。例えば、「周りの環境が変化して、それに適応できない」ということがよく起きるんですよ。
具体的に言うと、例えばハードウェア環境。
Rubyを作った30年前のコンピューターは、パPC-9801とか、そんな感じの時代です。当時は「国民機」と言われて「パソコンと言えばPC98です」という感じだったんですが、現在においてそのPC98を使っている企業は……まだ工場とかで動いているという話ですが、実際は少数派ですよね。
私自身は、当時ソニーのUNIXワークステーションというものを使っていました。今のソニーはコンピューターは作っていますが、ワークステーションは作っていないんですね。その後、サン・マイクロシステムズという会社の、やはりUNIXワークステーションを使ったのですが、その会社ももう今はないんです。このように、ハードウェア環境が変化するということが当然あるわけです。
あとは、例えば30年前のコンピューターのCPUは、コアが1個しかなかったんですね。パソコン1個にCPUが1個というのが当たり前だったのですが、現在のコンピューターにおいてはマルチコアが当たり前で、ちょっとしたサーバーマシンだとコアが16個とか、64個とかがあったりするんですよね。
大きめのマシンで「コアが128個あります」みたいなものは、現代では別に珍しくもなんともないわけです。そうすると、コア1個を想定して作られたソフトウェアは環境に適用できていないとなるんですね。
ソフトウェアについてもそうです。ソフトウェアトレンドはけっこう変化するので、放っておくと適応できない。
例えば30年前は、Webはぜんぜん一般的ではなかったんですが、今この講演は「Stream Yard」というソフトを使って中継しています。そのStream Yardも、結局はブラウザの中で動いているWeb経由の技術です。
このオンラインのカンファレンスそのものが、「enavle」というソフトを使っているんですが、これもWebアプリケーションですよね。30年前のソフトがもしWebに対応できていなければ、それは生き残っていけない。ソフトウェアトレンドによって、どんどん立ち位置が変化していくということはあり得ると思います。
あとはユーザー層も変化するわけです。ソフトウェアトレンドはユーザー層から現れるというのもそうで、ユーザー層の変化に適用していかなければいけない。そうしないと生き延びていけません。
Rubyのもう1つの特異性は、海外に進出したことだと思うんですね。実際にRubyを使っている人たちは日本人だけではなくて、世界中にいます。正直に言うと、日本人が開発したソフトウェアで海外で使われている物はあまりたくさんはないんですよね。車とか、家電とか、トヨタとか、パナソニックとか、ソニーとか、あとはゲーム機とかですね。
日本人が作ったそういうものは世界中で使われているのに、なぜか一般のソフトウェアは、海外にウケないんですよ。「なんでだろうな」という感じではあるんですけれども(笑)。そういう中で、海外に展開できているRubyは、ある種特異であると言えると思います。これが、なんでそうなのかはよくわからないんですね。
例えばゲームは間違いなくソフトウェアですが、日本発のゲームは意外と海外でも遊ばれているんですよね。そうなると、「日本人がソフトウェアを作るのが上手か下手か」みたいな話ではないと思うんですよ。だけど、そのビジネスであるとか、下回りのOSであるとか、言語であるとかで、海外で使われているソフトウェアがあまりないのが現状です。
おそらくは、日本のマーケットのサイズが十分に大きいので、野望を持たずに普通にご飯を食べようと思ったら日本だけでやっていけるんですよね。例えば、商習慣の違いとか、文化の違いとか、法律の違いとか、そういう違いを乗り越えて海外に進出するためには、高いハードルを越えることが必要で、それだけのモチベーションがない場合「じゃあ国内でいいか」みたいになってしまいがちです。それが日本のソフトウェアが海外に出ていかない理由の1つではないかなとは思います。
高い志を持って海外に出ていきたい人がいても、先ほど言った商習慣とか、文化とか、言語とか、そういう違いを乗り越えるのが難しいんだと思います。
そういう意味で言うと、Rubyはシステムプログラミング、プログラミング言語という、わりとわかりやすいジャンルの中で海外のユーザー層にリーチできたので、非常にラッキーだったなと思います。
最後は、オープンソースであるという話です。
オープンソースの説明は、今さらいらないと思いますが、20年前とは違って無償で自由に配布することができるソフトウェアです。これをソフトウェアプロダクトを作るプロジェクトとして考えると、とにかくお金がないんですよね。つまり、ソフトウェアそのものは無償で配っているので売上がないわけです。
売上がないので、開発している人たちのほとんどは、ボランティアというか有志で開発しているんですね。私自身はRubyを作っていることで給料をもらっていますが、それも特殊というか、スポンサーに支援していただいているのであって、ほとんどの人はボランタリーで自主的に参加していて売上がないので、採用してなんとかみたいなことができないんですよ。人事権もないんですね。
さらに言うと、Rubyコミュニティに強制されて来ている人は誰もいないし、給料を払っているわけでもないので、業務命令というものがないんですよね。「お前、このプロジェクトをやれよ」とかは言いにくいんですよ。そもそもプロジェクトは、プロジェクトをコントロールする、プロジェクトマネジメントみたいなことがすごく難しいんですね。
みなさんに提供できるものは何かというと、例えば達成感ですね。そういうもので、惹きつける。名誉経済みたいな感じですね。やっと回っている感じなんです。そういう意味で言うと、会社の業務として開発するソフトウェアプロダクトとだいぶ毛色が違うところはあると思います。
ですが、そういう困難さがあっても、30年間続いていて、海外にも進出することができて、たぶん〇百万人のユーザーがいるソフトウェアを作ることができた。それだけのソフトウェアプロジェクトを30年間立ち止まらずにここまでできたというのは、自慢してもいいんじゃないかなと思います(笑)。すごく狙ったわけではないですが、結果的にプロダクトオーナーとして、大成功したと言ってもいいんじゃないかなと思います。
(次回につづく)
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