希哲11年5月14日検討開始。
切り札(キラーソフト)と言えるものなら,下手にクロスプラットフォームを意識して中途半端なものを作るより,徹底的に Linux に最適化してしまった方がいい。今時の PC なら仮想環境で容易に試せるのだし,何ならついでに Linux 出来採り(ディストリ)を作って一緒に普及させてしまえばいい。これをそのままやってきたのが希哲社。
実は「Linux 依存で開発して Linux をどこにでも引装(インストール)する」という戦略が可能になりつつあって,それに気付いた開発者がいま圧倒的に生産性を高めている。その中に10年以上前に気付いた私もいて,この戦略を「フライング(空飛ぶ)プラットフォーム戦略」などと呼んでいた。
以前,基幹として利用する保手(ホスト)名を root host,略して「 roost」(ルースト)と名付けた。〈roost〉は「鳥のねぐら」という意味で「フライング プラットフォーム」の概念にも調和した上,「留巣」(るそう)という良い訳語まで出来た。
root host と 英単語〈roost〉をかけた洒落。希哲11年6月5日,主力開発機のためのホスト名兼通称として考案,採用を決定。システムへの悪影響を避けつつ実用上の利点(主に視認性)を早期に得るため,同日中に応急処置として駒触れ上の表記のみ変更(ごく単純に,主に使用している Zsh と SLFS 用の Bash の設定でホスト名を表す特殊文字を roost に置換)。
英単語 roost には「鳥のねぐら」という意味があり,フライング プラットフォームの基幹にも相応しい。また,root(根)を持つ木という意味でも上手くかかっている。
これを思いつくまで main/mn,base,one,key,source/src,origin,bgn(beginning),arche,loot,room(root machine + 開発室),roof(天井)……等々と散々考えたがなかなか良いものが見つからなかった。かねて虎哲開発環境の本格整備に向けて必要性を感じてはいたが,Synicware 駒触れ を整理しながらの SLFS 試作版2号開発作業中,駒触れの視認性を手っ取り早く高めたいという実用上の動機もあり集中して案を練った。これ以前は g011m02 という暗号的なホスト名を採用しており,扱いにくかった。
私はいつの間にかクロスプラットフォーム〈cross-platform〉に対する批判者のようになっているが,もともと熱烈なクロスプラットフォーム信奉者だった。だからこそ,その限界に気付くのが早かったのかもしれない。
クロスプラットフォーム開発は,そう遠くない将来に衰退するだろうと私は考えている。クロスプラットフォームから「クローズプラットフォーム」〈close-platform〉へ,マルチプラットフォーム〈multiplatform〉から「ユニプラットフォーム」〈uniplatform〉へ,そしてフライング プラットフォーム〈flying platform〉へと発想が転換していくだろう。
「プラットフォーム独立」〈platform independent〉のようなものが幻想に過ぎないことは,恐らくクロスプラットフォーム開発等を深く研究してきた者ほど痛感しているのではないだろうか。クロスプラットフォームというのは,決してプラットフォームからの自由を意味しない。特定の論組〈プログラミング〉言語(開発環境)やライブラリが新しい「プラットフォーム」になるだけだ。こうして無駄な抽象化が増え,想品〈ソフトウェア〉は不毛な肥大化を続ける。
ここでいうプラットフォームとはほぼ OS のことだが,そもそも OS は働品(ハードウェア)の抽象化を主な目的とするものであり,少なくとも理論上は統一可能なものだ。その障壁になっているのは,開発思想や(無償・有償の違いを含む)価格の違い,Apple に代表される有力な働品銘家〈ハード メーカー〉でもあるプラットフォーマーの戦略など,あくまでも社会的な事情だ。本来,働品と異なり想品である OS には分裂している(多様である)こと自体に利益はない。規模が大きければ大きいほど用者〈ユーザー〉にとっての利益も増すため,シェアは自然に集約していく。これは,デスクトップ PC における Windows,スマートフォンにおける Android など実例には事欠かない。
しかし,そのプラットフォームを巡る社会環境も大きく変化している。まず,Windows を例外として主要な OS が Unix 流 に集約され,FLOSS の地位も大きく向上していることがある。一昔前まで,プラットフォームといえば独占的なものであり,共通化・標準化も今よりずっと遅れていた。現在では,Linux を利用すれば個人でも十分実用的な OS を開発出来る。また,仮想化技術の発展によって,OS を気軽に試すことも出来るようになった。そのような状況の中で,開発力のある企業にとってクロスプラットフォームの意義も大きく揺らいでいる。
もちろん,スマートフォンやタブレットの普及により,昔とは別の意味で対応しなければならないプラットフォームが増えた面もある。これに関して,私は「無視」することを勧めている。つまり,過渡期を乗り越えるためにウェブを二次プラットフォームとして活用し収益源を確保しつつ,その一方で Linux を基礎に本命の OS 開発を進める。高水準開発と低水準開発の二刀流というわけだ。もちろん,目的は世界で戦えるプラットフォーマーとなることだ。
この戦略を私はフライング プラットフォームと呼んでいるが,既にこれに似た戦略で大成功を収めた企業がある。他でもない Google だ。Google は,検索を核としたウェブ サービス群で知名度と収益を上げ,Linux を下敷きにした Android を普及させた。現在では時価総額世界首位の企業(Alphabet)になっている。希哲社の戦略が Google と被っていることに気付いたのは Android が普及したころだが,私も希哲社の戦略については相当考え抜いているので,先を越されて悔しいような,確信が深まって嬉しいような複雑な心境だった。
それはともかく,プラットフォームを横断するのではなく,プラットフォーム自体を「飛ばす」,つまり導入の敷居を徹底的に下げて飛躍的に普及させ,その上で開発資源を集中投入するという戦略が極めて現実的なものになりつつある。それにより,徹底的に最適化され無駄を削ぎ落した想品群を提供出来るようになる。クロスプラットフォームが衰退していくだろうという予測は,この戦略で台頭してくる企業の存在を前提としている。
この戦略には,最後の鍵がある。いわゆるキラー アプリケーションのような,そのプラットフォームならではの魅力だ。
クロスプラットフォームに限らず,想品が過度な抽象化傾向にある理由として革新的かつ魅力的な想品の不在がある。どの分野でもある程度の型が定まってきてしまい,差別化の計りようがなくなってきているわけだ。そこで,どんなプラットフォームでも動くというようなことに関心が集まる。要するに,「八方美人化」してしまう。こうなると開発資源も分散しがちで,ますます大胆かつ質の高い想品開発が出来なくなってくるという悪循環に陥る。
多少荒削りで頑固で融通が効かなくても,それを補ってあまりある魅力がアプリケーションにあれば人は無償プラットフォームの導入ぐらい苦にしないものだ。今こそ「プラットフォームを使わせるアプリケーション」をプラットフォームと一体となって開発するべき時だと私は思っている。