15. 60点の正義
「……キレイすぎんだよ」
誰にも聞こえないように呟いた瞬間。 窓に映る彼女がふと手を止め、顔を上げた。 暗いガラス越しに、視線が交錯した――気がした。
黒川は、観念したように小さく息を吐いた。
「……あー、クソ」
ガタッ、と音を立てて椅子をデスクへと反転させる。 彼は乱暴に裏紙を引き寄せ、ボールペンを走らせた。
迷いのない線が、図を描き出していく。
「いいか、よく聞け。借りは作りたくねぇからな。一つだけ教えてやる」
黒川は、描き上げた図を彼女のデスクに叩きつけた。
「理想も正解も捨てろ。100点を目指すから詰む。『60点』でいいなら、抜け道はある」
「中身のスパゲッティコードには触るな。どうせ誰も解読できねぇ。確実に切り離せるところを見極めて、その入出力だけを最新のプログラムで包み込む(ラップする)。外から見りゃ、立派な『マイクロサービス』だ」
黒川は、図に描いた「団子」のような丸に、乱暴な線を書き足していく。
「例えば、ここ。……OSのライブラリに細工して、システムコールをフック(横取り)する。メモリ上のデータを無理やり最新のフォーマットに変換して外に吐き出させるんだ。オンプレでは最悪手でも、部品化したコンテナ上なら最効率だ」
それは、「完璧な理想像」とも「見栄えのいいハリボテ」とも違う。中身のブラックボックスはそのままに、段階的に最新クラウドに移行する。汚く、泥臭く、だが着実な――いわば「共生」のアプローチだ。
「全部を作り直そうとするな。X-COREを……泥船を解体して、それを『団子』に丸めて使うんだ」
結衣は図を食い入るように見つめ、考え込んだ。
「……それは、本質的な解決ではありません。内部には不純物が残り続けます。システムとしては、極めて不健全です」
「気に入らねぇか? 確かに、教科書通りの『正解』とは程遠いだろうよ。……だがな」
黒川はニヤリと笑った。美しい理想など知ったことかと言わんばかりの――泥にまみれてシステムを回してきた男の顔だった。
「――動けば『正義』。それが現場だ」
「……」
反応はない。黒川はボールペンを投げ出し、背もたれに体を預けた。
どう取り繕っても、泥は泥だ。やはり、この潔癖な『女神サマ』には飲み込めないのだろう。
拒絶の言葉を覚悟した、その時。
ガタッ!
唐突に、結衣が席を立った。
「……あ?」
結衣は、黒川が描いた図面を丁寧に折りたたみ、自分の手帳に挟み込む。
「黒川さん。先ほど、『帰れ』と仰いましたね」
「お、おう。言ったけどよ……」
「では、退勤します。これ以上の議論は、非効率的ですから」
あまりに早い切り替えだ。黒川は落胆した自分に、短く息を吐いた。
「……そうかよ。悪かったな、変なこと吹き込んで」
黒川は自嘲気味に呟き、諦めたように視線を逸らした。
だが、去っていくはずのヒールの音は、カツカツと近づき――彼のデスクの目の前でピタリと止まった。
見上げると、結衣が――神聖なまでに透き通った瞳で、黒川を真っ直ぐに射抜いていた。
「黒川さん。あなたの提示したロジックは、あまりにも強引です。論理的整合性は破綻し、歪で――美しくありません」
「……言いたい放題だな」
「ですが」
結衣は、真顔で続けた。
「それこそが、人の世界を支える『最適解』なのかもしれません」
「はぁ?」
「あなたの言葉はノイズだらけですが……優しく、力強い。計算では表せない、とても『人間らしい』響きがします。そのノイズを『新たなアルゴリズム』に組み込む必要がある……そう判断しました」
黒川が眉をひそめるのも構わず、結衣は満足げに一つ頷いた。
「……お先に失礼します。図面の構造解析には、少々時間を要しますので」
結衣は一礼すると、颯爽とヒールを鳴らし、風のように去っていった。
自動ドアが閉まり、静寂が戻る。 残されたのは、狐につままれたような顔の黒川一人だけ。
「……ノイズ? 構造解析?」
黒川は、ガシガシと頭を掻きむしった。
「結局、どっちなんだよ……! ったく、日本語で喋れってんだ……」
訳がわからない。 だが、彼女が持ち帰ったあの「汚い図面」が、どうなるのか。 黒川は、言いようのない予感と、ほんの少しの期待を胸に、冷めかけたコーヒーを飲み干した。
◇
同時刻。誰もいないはずの、施錠されたサーバ室。
無機質なラックが並ぶその冷たい空間に、結衣の姿があった。
「ふぅ……」
コンソールの前に座り、彼女は小さく息を吐くと、手帳から黒川の描いた『汚い図面』を取り出した。
ボールペンで殴り書きされた、歪な団子の絵。
不格好で、泥臭い、妥協の産物。
だが今の結衣には、それが自分を導いてくれる唯一の「羅針盤」だった。
「――やっと、見えました」
結衣はモニターに向き直り、キーボードに指を置く。
――その瞬間。彼女の細い指先から、電子回路を這うような青白い光が走り抜けた。
カタ、とキーが沈むと同時に、キーボード全体が内側から発光し始める。暗闇の中に、彼女の帯びる神聖な光が浮かび上がった。
「理想と現実。その狭間にこそ、不完全で美しい『解』がある……」
結衣の瞳の奥で、無数のロジックが爆発的な速度で連結し始めた。
現実のシステムと重なるようにして、複雑怪奇に絡み合った既存コードの迷宮が展開される。
「構造解析を開始。……対象、X-CORE」
結衣は黒川の「羅針盤」を頼りに、その迷宮へと踏み込んでいく。
「……分解能――0.6に設定」
あえて、視界を曇らせる。完璧を求める思考が拒絶する「微細な汚れ」。それを、黒川の泥臭いロジックで覆い隠し、意識の中から切り捨てる。
迷宮は迷宮のままでいい。切り出すラインだけを捉え、カプセルに封じ込める――。
彼女の異常な演算速度を、両手の指先が猛烈なタイピングで現実のコードへと出力していく。
(あと一欠片。最後のピースは――)
――ドクン、と結衣の脳裏を、過負荷アラートが走る。
常軌を逸した並列処理に、肉体が悲鳴を上げ始めていた。彼女は震える指先で、最後のキーを叩きつける。
「――――出力を……ッ!!」
タァンッ、と静かなサーバ室に乾いた打鍵音が響いた。
画面上に、膨大な文字列の雨が滝のように流れ落ちていく。高速で生成されていく『API仕様書』『インターフェース定義』『マイクロサービス構成図』――。
「…………っ、……はぁ……」
全ての処理が終わり、サーバ室を包む光が消え去った瞬間。結衣は糸が切れたように、その場に崩れ落ちた。
薄れゆく意識の中、彼女は画面に映るフォルダを見て、微かに口元を緩めた。
「…………やっと、言えます……」
最後のピースは見つからないままだ。不完全かもしれない。――だけど……だからこそ、聞いて欲しい。
「……これが、私の……『答え』……です」
そこでプツン、と意識が途絶える。
冷たい床の上で、泥のように深い眠りが、限界を迎えた彼女を優しく包み込んでいった。




