なぜ「シンプル」は、
こんなに強いのか。
機能てんこ盛りで、どこを押せばいいか分からないアプリ。増え続けるタスク。盛りすぎて、結局何が言いたいのか分からなくなった資料。——世界は、ほうっておくと複雑になっていきます。
で、しんどい。そう感じているあなたに、聞いてほしい話があります。
半世紀前、その「複雑さ」に正面からぶつかって、勝った人たちがいます。勝ち方は、一言で言えます。「シンプルにしておけ」。……それだけ? と思いますよね。それだけです。なのにその答えの上で、あなたのスマホも、Macも、ネットの裏側も、今この瞬間動いている。
考え方の名前は、UNIX(ユニックス)。コンピュータの土台(OS)の名前です。でも、これはコンピュータの記事ではありません。「複雑さに、どう立ち向かうか」の記事です。専門用語ぬきでいきます。——話は、1969年の、ある大失敗から始まります。
小さく、単純に保つ。複雑なものを、複雑なまま扱わない。それだけ。でも、これがとんでもなく強い。
- 透明シンプルだから、中身が見える
- 自由シンプルだから、自分で操れる
- 長持ちシンプルだから、半世紀たっても壊れない
これはコンピュータの話に見えて、本当は「複雑なものと、どう付き合うか」の話。プログラミングを知らなくて、だいじょうぶ。
始まりは、「失敗した
プロジェクト」だった。
1960年代。コンピュータは、まだ部屋いっぱいの巨大な機械でした。
そのころ、ある野心的なプロジェクトが動いていました。名前は「Multics(マルティクス)」。MIT、ゼネラル・エレクトリック、そしてベル研究所。当時の超一流が集まって、「何でもできる、究極のOS」を作ろうとしていた。
用語は、この記事でこれ一つだけ。OS(オーエス)=コンピュータの土台になる基本ソフト。アプリと機械の間に立って、全体を切り盛りする“管理人”です。あなたのスマホにもパソコンにも、必ず一つ入っています。
でも——大きすぎました。あれもこれもと機能を盛り込むうちに、複雑になりすぎて、迷走。完成は遅れ、お金もかかりすぎる。ついにベル研究所は、このプロジェクトから手を引きます。
残されたのは、二人と、ポンコツのマシン
行き場をなくした研究者がいました。ケン・トンプソンと、デニス・リッチー。
ここで、ちょっと笑える本当の話。トンプソンには、どうしてもやりたいことがありました。自分で作ったゲーム「Space Travel(宇宙旅行)」を、動かしたかったんです。宇宙船を操縦して、惑星に着陸させるゲーム。
でも、手元にあったのは、誰も使っていない、隅っこに転がっていた古くて非力なマシンだけ。メモリは、今のスマホの何百万分の一。この「ポンコツしかない」という制約が、歴史を変えます。
非力だから、削ぎ落とすしかなかった
非力なマシンでは、Multicsのような「何でも入り」の巨大なものは、絶対に動きません。だからトンプソンは、削るしかなかった。本当に必要なものだけを、小さく、単純に。よけいなものは、ぜんぶ捨てる。
そうして彼は、たった1か月ほどで、新しいOSの最初の形を書き上げてしまいました。これが、UNIXの誕生です。
名前には、皮肉が込められています。複雑で肥大化した「Multics(マルチ=たくさん)」に対して、ぜんぶ削ぎ落としたから「UNICS(ユニ=ひとつ)」。のちに、UNIXと綴られるようになりました。
きれいごとじゃなく、必然だった。だから、筋金入りなんです。そして、この身軽さが思わぬ強さになります。小さくてシンプルだから、他のコンピュータにも移しやすい。UNIXは研究所を飛び出し、大学へ、企業へ、世界へと、雑草のように広がっていきました。
22年後、一人の学生が「同じもの」を作った
ここで物語は、もう一段おもしろくなります。1991年、UNIXの考え方に惚れ込んだフィンランドの学生、リーナス・トーバルズが、「同じ発想で、一から自分で作ってみよう」と、ゼロからOSを書き上げてしまうんです。名前はLinux(リナックス)。いま、世界中のサーバーの大半が、これで動いています。
立ち止まって考えると、これは小さな奇跡です。OSというのは本来、何百人もの技術者が、何年もかけて作る超巨大なもの。それを、なぜ学生が一人で?
答えは——UNIXの考え方が、シンプルだったから。設計が明快で、小さな部品の組み合わせでできていた。だから、一人の人間でも「全体」を頭に入れて、真似て、作り直すことができた。複雑怪奇な代物だったら、ぜったいに無理でした。
トーバルズは、もう一つすごいことをしました。作ったLinuxを無料で公開し、しかも中身(設計図=ソースコード)を丸ごと全部、世界中に見せたんです。「文句があるなら、自分で直していい。みんなで良くしていこう」と。結果、世界中の技術者がおもしろがって、よってたかってLinuxを育てはじめた。一人の学生の小さな作品は、世界中の手で、巨大で頑丈なものに育っていきました。——中身が見えたから、世界中を巻き込めた。この「見せる」という話は、あとでもう一度出てきます。
そして今、あなたの手の中に
- ›macOS … UNIXの血を直接受け継いだ、直系の子孫
- ›iPhone・Android … どちらも、この大きな家族の一員
- ›世界中のサーバー … その大半が、“あこがれて生まれた弟子”のLinux
血筋は違っても、根っこの考え方は同じ。だから、まとめて「UNIX系」と呼びます。ポンコツマシンの上の小さな思いつきは、半世紀かけて、世界の土台になりました。
蛇口をひねれば水が出る。あたりまえですよね。でもその地下に、街じゅうの水道管が走っていることは、ふだん意識しません。
UNIXは、それと同じ。あなたがスマホを触るたび、その奥で、半世紀前に作られた「シンプルな仕組み」が静かに働いています。見えないけど、ないと何も動かない。
では、削りに削って残ったその中身は、何だったのか。彼らの道具箱には、ルールが4つしかありませんでした。ここから、その中身です。
ルール1と2:
「分けて、つなぐ」
4つのルールの前半2つは、セットです。まず、分ける。それから、つなぐ。
ルール1:一つのことを、うまくやる
一つの道具に、一つの仕事だけ、うまくやらせる。あれもこれもと欲張らせない。新しい仕事が必要になったら、機能を継ぎ足して太らせるのではなく、新しい道具を作る。
🔧 十徳ナイフ
ナイフもハサミも栓抜きも一本で全部入り。便利。でも、プロは魚をさばけない。何でもできるけど、どれも「そこそこ」。
🔪 専用の包丁
野菜用、魚用、刺身用。一つの仕事のために磨かれている。料理人は、その時々で持ち替える。UNIXが選んだのはこっち。
一つに集中して磨かれた道具は、鋭い。中身が単純だから、壊れにくい。そして一つ壊れても、他に響かない。
でも、包丁一本では、一皿は作れません。そこで、相棒のルールが要ります。
ルール2:小さな道具を、つなぐ
UNIXには「パイプ」という仕組みがあります。ある道具が出した結果を、そのまま次の道具に流し込む。それをまた次へ。数珠つなぎにして、大きな仕事をさせる。
言葉だけだとピンと来ないので、一度だけ、実演させてください。コマンドは出しません。日本語でやります。
あなたの会社に、全国300店舗から毎日、売上の記録が届くとします。積もり積もって、20万行。その山から「昨日、いちばん売れた店トップ10」が知りたい。ふつうなら、そういう機能のついた専用ソフトを探すところです。UNIXの人は、こう組みます。
使ったのは、4つの道具。どれも、それしかできない単純な道具です。「拾う」係は売上が何かを知らないし、「並べる」係は店が何かも知らない。なのに、つないだ瞬間、「売上ランキングを作る」という気の利いた仕事が生まれる。
ここが大事なところです。「昨日いちばん売れた店トップ10」機能は、誰も作っていません。どこにも存在しなかった機能を、あなたがその場で、ありあわせの道具から組み立てた。明日「客足が落ちた店ワースト5」が見たくなったら? つなぎ替えるだけ。
巨大な「何でもソフト」だと、できることは作り手が用意した範囲だけ。でもUNIXは、どうつなぐかをあなたが決める。作り手が思いつかなかった組み合わせも、自由に作れる。主導権が、あなたに移ったんです。
ルール3と4:
道具箱を「長生き」させる
分けて、つなぐ。これで仕事は回ります。残りの2つは、この道具箱が何十年も壊れないためのルールです。
ルール3:窓口を、一つにそろえる
UNIXには「すべてはファイルである」という有名な合言葉があります。むずかしそうですが、意味はシンプル。キーボードの入力も、画面への出力も、ネット通信も、機器の操作も——本来バラバラの複雑なものを、ぜんぶ「ファイルの読み書き」という一つのやり方で扱う、ということです。
強さの理由は、覚えることが激減するから。相手が何だろうと、同じ作法で向き合える。例外がないから、まちがえようがない。
海外旅行のたび、コンセントの形が違って困る。あれ、地味にストレスですよね。
UNIXの世界は、コンセントが一種類。プラグ一本あれば、どこでも、何にでもつなげる。複雑な世界を、一つの単純なルールでならしてしまう。
ルール4:中身は、人が読める形にしておく
データを、どんな形で扱うか。UNIXは「人間が読める文字(テキスト)」を選びました。機械にしか分からない暗号みたいな形のほうが、効率はいい。でもUNIXは、あえて非効率でも「人間が目で読める形」を選んだ。
なぜか。中身が見えるから。何が起きているか、人間が目で確認できる。おかしくなっても、見て、直せる。
中が見えない電子レンジは、故障したらお手上げ。でも、ガラス張りのキッチンなら、調理の様子が全部見える。何かあっても、すぐ気づいて直せる。UNIXは、ガラス張りのキッチンを選んだんです。
そしてもう一つ、地味で強烈な効きめがあります。読める形のデータは、死なない。30年前のワープロ専用機で作った文書は、機械が滅びた今、もう開けません。ただの文字で残したメモは、50年前のものでも、今日ふつうに読めます。50年後も、読めるでしょう。
思い出してください。Linuxが世界中を巻き込めたのも、「中身を見せた」からでした。見えるものは、直せる。直せるものは、育てられる。育てられるものは——長生きする。
なぜ「シンプル」は、
こんなに強いのか
4つのルール、ぜんぶ一本の線でつながります。
共通点は、ぜんぶ「シンプル」。そして、このシンプルさが、すべてを生みます。
- 透明シンプルだから、中身が見える
- 主導権シンプルだから、自分で組み替えられる
- 長寿シンプルだから、壊れにくく半世紀生き残った
ごちゃごちゃ盛るのは簡単。削って削って、本質だけ残すのが、いちばん難しい。シンプルさは、手抜きじゃなく、究極の洗練なんです。
⏰ からくり時計
美しい。でも壊れたら専門家しか直せない。時代遅れになれば、丸ごと捨てられる。
⚙️ 歯車の組み合わせ
自分で組み替えて、時計にもオルゴールにも計算機にもなる。時代を超えて、生き続ける。
UNIXは、歯車を選んだ。だから半世紀、生きている。
それなのに世界は、
「全部入り」だらけ。
……と、ここまで読んで、引っかかりませんでしたか。そんなに強い考え方なら、なぜ世界はこうなっているんだろう、と。
スマホを見てください。アップデートのたびに機能が増えて、重くなっていくアプリ。チャットも買い物も決済も、ぜんぶ抱え込もうとする「スーパーアプリ」。どこを押せばいいか分からない設定画面。——「一つのことを、うまくやる」の真逆が、画面いっぱいに並んでいます。
そうなんです。UNIXは、土台では勝って、表側では負け続けている。しかも皮肉なことに、その盛りに盛ったアプリたちも、一枚めくれば、UNIX系の上で動いている。シンプルの上に、複雑が積み上がっているんです。
なぜ、世界は盛ってしまうのか
理由は単純。盛るほうが、売れるから。機能の一覧表は、買う瞬間に見えます。「あれもできます、これもできます」は宣伝になる。一方、シンプルさの強さ——壊れにくい、直せる、長持ちする——が姿を現すのは、5年後、10年後。買う瞬間には、見えません。
会議でも、同じことが起きます。「機能を足しました」は拍手される。「機能を削りました」は、説明を求められる。盛るのは誰にも怒られない仕事で、削るのは、勇気の要る仕事なんです。
🚢 豪華客船
快適で何でも揃ってる。でも氷山にぶつかれば、全員一緒に沈む。一か所の不具合が、全体のリスク。
🛶 ボートの船団
独立した小さな道具が、ゆるくつながる。一艘が沈みかけても、乗り換えて航海を続けられる。
全部入りの行き着く先が、これです。快適で、何でもそろっていて、一か所の故障で全員が沈む。UNIXは、小さな船団のほうに賭けました。
シンプルの側にも、影はある
フェアに言えば、シンプルの側も、きれいごとでは済みません。
影 1「シンプル=やさしい」ではない
UNIXのシンプルさは、「使う人にやさしい」という意味じゃありません。「作りが単純」という意味。そのぶん、使いこなす苦労は、あなたが背負う。
有名な言葉に「Worse is Better(劣ったものが、勝つ)」があります。完璧で美しい設計より、荒削りでも単純で広まりやすいものが、結局生き残った——という話。UNIXが世界を制したのは、美しさよりも「単純で、しぶとかった」から。
シンプルさの自由は、タダじゃない。主導権を握るぶん、学ぶ責任も自分持ちなんです。
影 2理想は、現実で妥協する
「一つのことだけやる」という理想。でも現実には、UNIX自身のよく使う道具たちも、便利さを求めて、だんだん機能を盛って太っていきました。理想と実用のせめぎ合いは、身内でも続いています。
影 3難しさへの、怨嗟(えんさ)
暗号みたいなコマンド名、不親切なつくり、エラーすら出さず黙って失敗する……。これに怒った人たちが、批判の本まで出しました。『UNIX-HATERS Handbook』という、その名もずばりの一冊です。
面白い後日談。その批判本に、なんとUNIXを生んだ本人の一人(デニス・リッチー)が、皮肉たっぷりの「反・序文」を寄せた。自分たちを笑えるユーモアが、UNIX文化にはあるんです。
世界は、ほうっておくと複雑になる。「シンプルにしておけ」は、放っておけば自然とそうなる、という話ではぜんぜんない。流れに逆らう、意志の言葉です。だからこそ、覚えておく価値がある。
ここからは、
あなたの机の話。
ここまでは、半世紀前の、よその国の技術者の話でした。でも最初に言ったとおり、これはコンピュータの記事ではありません。
UNIXの4つのルールは、コンピュータの性質から生まれたものじゃない。人間の頭の限界から生まれたものです。人が一度に把握できる量は、驚くほど小さい。見えないものは、直せない。例外が増えるほど、記憶は食いつぶされる。——トンプソンとリッチーが戦った敵は「複雑さ」そのものであって、その敵は、コンピュータの中だけでなく、あなたの会議室にも、受信トレイにも、同じ顔をして棲んでいます。
だから、4つとも、そのまま持ち帰れます。
一つの会議に、一つの目的。一つの資料に、一つのメッセージ。「ついでにあれも」と盛りはじめたら、それは十徳ナイフへの道です。
欲張らない。分ける。それぞれを、ちゃんと切れる包丁にする。
完璧な大作を一発で作ろうとしない。小さく終わらせて、次へ「渡せる形」にする。メモ→下書き→たたき台→完成。仕事は、パイプでつなぐと流れだします。
大きな仕事は、小さな仕事の数珠つなぎでできている。
案件ごとに保存場所がバラバラ。人ごとに報告のやり方がバラバラ。——例外が増えるほど、頭は複雑さに食われます。やり方を「一つ」にならせないか、まず疑ってみる。
ルールは少ないほど、覚えることが減って、まちがいも減る。
「私の頭の中にしかない仕事」は、中の見えない電子レンジと同じ。あなたが休んだ日に、誰も直せません。多少めんどうでも、人が読める形で残す。あとで一番助かるのは、未来のあなたです。
見える形で残したものだけが、引き継げて、直せて、長生きする。
そして、思い出してください。盛るのは拍手されて、削るのは説明を求められるのでした。あなたが資料から1ページ削るとき、会議の議題を一つに絞るとき、あなたは半世紀前の二人と同じ、分の悪い、でもいちばん強い戦い方をしています。
最先端が、半世紀前の
答えに戻ってきた。
最後に、いまの話を。テクノロジーのいちばん先端で、何が起きているか。
AIです。そして、AIに大きな仕事をさせる仕組みの最前線は、いま、こういう形をしています。仕事を小さな係に分ける。係どうしは、人間の言葉(テキスト)で結果を渡し合う。つないで、流す。
……どこかで見た形ですよね。半世紀前の道具箱、そのままです。「一つのことをうまくやる」係を、「読めるテキスト」で「つなぐ」。最先端のAIは、流行を何周もした末に、1969年のポンコツマシンの上で生まれた答えに戻ってきました。
理由は、もう分かるはずです。複雑さの性質が、変わっていないから。それに立ち向かう人間の頭の限界も、変わっていないから。道具は半世紀で別物になったのに、答えは一度も変わらなかった。たぶん、次の半世紀も変わりません。
ここまでの話を、一度たたみます。
UNIXの考え方は、技術の話ではありませんでした。「複雑な問題に、どう立ち向かうか」という、生き方の知恵です。やることは、いつも同じ。
- ›一発で解く魔法を、探さない
- ›小さく分けて、一つずつ単純に解く
- ›解いたものを、つなぐ
- ›中身は、見える形にしておく
失敗した巨大プロジェクトの隅っこで、ポンコツのマシンしかなかった二人が、削って削って、本質だけを残した。その「削る勇気」が、半世紀後の世界を動かし、最先端のAIの設計図になっている。
あなたがこれまで、シンプルな道具になんとなく感じてきた安心。多機能のごちゃごちゃに感じてきた、うっすらとした不信。——あれは気のせいではありません。名前のある、半世紀の実績がある、由緒正しい感覚です。
机の上の、盛りすぎた資料。増え続けるタスク。次に複雑さに押しつぶされそうになったら、思い出してください。
「シンプルにしておけ」。
削ることは、手抜きじゃない。半世紀証明されてきた、いちばん強い戦い方です。
この考え方が生きて動いている現場を、のぞくこともできます。Macを使っているなら、それ自体が由緒正しいUNIX。「ターミナル」というアプリが入り口です。Windowsでも、設定すれば中でLinuxを動かせます。急がなくて大丈夫。この記事の持ち帰りは、黒い画面の外でも、ちゃんと効きます。