ふつーのプログラマです。主に企業内Webシステムの要件定義から保守まで何でもやってる、ふつーのプログラマです。

夜の翼 (6) セクションD

»

 オペレーションルームの中央で仁王立ちになって怒鳴っているのは、末永リンだった。肩までのストレートな黒髪をポニーテールにしている。普段は細い切れ長の目が、怒りのせいか大きく見開かれていた。16 歳だが、165 センチを超える身長と、大人びた風貌のため、大学生だと紹介されたら素直に信じてしまうだろう。
 「ファイル開くときは」リンは喚いていた。「with 使えって言ったでしょ。言ったよね!? 何で使わないの? 何で、わざわざException で見てるの? あんた脳がないの? その肩の上に乗ってるのはカボチャか何か?」
 罵声を浴びているのは、牧村カズトだ。デブ、とは言い過ぎだが、確かに小太りの体型ではある。
 「動くんだからいいじゃねえか」カズトは低い声で言った。「お前、いちいち細かいんだよ」
 「with 使った方が確実にクローズできるじゃん。なんでわざわざ面倒な方法でやるの? 前に全員でミーティングしたとき、使えるとこには使おうって決めたのに、どうして使わないの? 聞いてなかったの?」
 「知るかよ、そんなの」
 「カズトくん」小平ハルが口を挟んだ。「確かに決めたよ、それ」
 「うるせえな」カズトは陰気な声で吐き捨てた。「黙ってろよ、チビ」
 ハルの顔色が瞬時に変化した。17 歳でセクションD のPO の中では最年長だが、身長は154 センチと同年代の男子と比較すると低い方だ。15 歳の妹がいて、兄より高い身長を持っているという事実も、ハルが抱えるコンプレックスの一因だ。温厚な性格だが、身長をネタにからかわれると、たやすく沸点を超えてしまう。ハルが誰かとケンカするとき、その原因は身長が原因であることが多い。
 「何だと、てめえ......」
 「ハル」リンはハルを見もせず遮った。「まだあたしの話が終わってない。ちょっと待ってて」
 そう言うと、リンはカズトに向かって、また文句を並べ始めた。リンは優秀なプログラマだが、とにかく理屈っぽい。学校では陸上部に所属しているが、練習よりも理論を追求する姿勢が強すぎて、顧問の教師に独自の練習メニューを提案したり、私が名前を聞いたこともないような筋肉の強化方法を講義したりして、周囲から敬遠される傾向があるらしい。
 4人目のPO、保科マイカは、そんなリンとカズトの言い争いを、おろおろしながら見守っていた。まだ12 歳なので、フィジカル面でも精神面でも、他の3 人とケンカできる力がない。その大きな目が私の姿を捉えると、急いでこちらに向かってきた。右足を引きずっているのは、幼い頃の事故で関節に障害があるためだ。
 「チーフ!」マイカは涙を浮かべて訴えた。「早く止めて」
 「今日は何が原因なんだ」私はマイカに訊いた。
 「さっきの反省会をしてたら、リンちゃんが、その......」
 「いつもみたいに細かい指摘をした?」
 マイカは頷いた。サチがマイカを抱き寄せ、片目からこぼれた涙を拭いてやる。
 「おい、お前たち」
 私は呼びかけたが、リンとカズトの言い合いは止まらない。ハルまで参戦しそうだ。私は後ろを向いて、ドアが閉じていることを確認すると、近くのデスクに拳を振り下ろした。
 ドン!
 突然響いた打撃音に、リンとカズトは言葉を切り、揃ってこちらを見た。
 「あ、チーフ、サチさん」
 「おかえりなさい」
 「おかえりじゃないわよ」サチが二人を睨んだ。「議論するのはいいけど、相手の欠点だけをひたすらあげつらうような不毛な言い合いになるな、って何度も言ったよね」
 「......だって」
 「だってじゃありません」サチはハルを見た。「ハル、あなたもよ」
 「で、でも」ハルは抗議した。「オレは止めようとしたんだけど......」
 「うん、それは見てた。でも、すぐカッとなるのは相変わらずよね」
 「言われっぱなしで黙ってろっての?」
 「そうは言ってないでしょ」
 サチの言葉遣いは穏やかだった。私ではこうはいかない。たぶんさっさと議論を終わらせ、二度とやるな、と言うのがせいぜいだ。サチは違う。対症療法ではなく、原因そのものに対応しようとしてくれる。
 「悪意を持ってあなたを侮辱してくる相手に対してなら、いくらでも怒りをぶつけていい。大切な人を守るためなら、全力で立ち向かえばいい。でも、大した意味もない悪口に、いちいちエネルギーを消費してたら、いざってときに何もできなくなる。本当に力を使うべき時に、その力が出せなかったら、ものすごく悔いが残るよ」
 ハルは気まずそうに下を向いた。サチは、そんなハルの肩をぎゅっと掴むと、ケンカをしていた二人の方を見た。
 「あなたたちもよ」
 その言葉に、すっかり頭が冷えたらしいリンとカズトが首をすくめた。
 「あなたたちはエネルギーの使い方を間違えてる。正確に言うと、エネルギーを使う時と場所を間違えてる。今、ここですべきは何かってことを、少し真剣に考えてみたらどうなの。それができないほど子供じゃないでしょう」
 「......」
 「マイカを見なさい」サチは最年少のPO を示した。「唯一冷静だったのは、マイカだけってことよ。どう思う?」
 「マイカ」リンがマイカに駈け寄って、その細い身体を抱きしめた。「ごめん。怖がらせちゃったね」
 マイカは何も言わず、リンを抱き返した。それを見ていたカズトもおずおずと二人に近付きかけたが、リンが険悪な顔を向けたので足を止めた。
 「ちょっと冗談でしょ。ハグなんかしたら蹴っ飛ばすよ」
 「いや、そんな気は......ただ、その......」カズトは少し離れた場所からマイカに声をかけた。「マイカ、ごめん」
 それを見たサチは、自分の出番は終わり、とでもいうように一歩下がった。私は感謝の意を込めてサチに頷くと、進み出て小さく手を叩いた。
 「おーい、注目」私はシュンを手招きした。「さっきは急な改修なのに、よく対応してくれたな。助かった。おかげで無事にこの子を連れてくることができた。加々見シュンだ」
 シュンは緊張した顔で、4人のPO を見回した。
 「あ、えーと、よろしく」
 「今ケンカしてたのが、末永リンと牧村カズト。16 歳と15 歳だ。そっちが小平ハル、高2。その子は保科マイカ、12 歳だ」
 四人はそれぞれ挨拶の言葉を口にした。歓迎が3 割、残りが観察のようだ。物怖じしないリンが進み出て訊いた。
 「いつから来るの?」
 「あ、いや」シュンは小さく手を振った。「まだ決めたわけじゃ......」
 「そうよ」ナナミが進み出た。「シュンがここで働くなんて、まだ誰も決めてないんだからね」
 リンはナナミを上から下まで眺めた後、私を見た。
 「チーフ、なんか変な人が混じってるみたいだけど」
 「変な人じゃない」私は急いで答えた。「彼女は辻本ナナミ。シュンの関係者だ」
 「プログラマなの?」
 「いや、違う」
 「なんだ」リンはつまらなそうに言った。「じゃ、なんでここにいんの?」
 「あたしにはシュンを守る責任があるからよ」ナナミが胸を張った。
 リンはバカにしたように口元だけで笑った。
 「つまり保護者ってわけ?」
 「そうよ」
 「知ってる? そういうのって、たいてい本人の自己満足なんだよ」
 「な!」
 「シュンくんに確認したことあんの? 言えないだけで、心の中じゃ迷惑だと思ってるかもよ」
 ナナミが何か言い返そうとしたとき、オペレーションルームの天井全体が、赤く点滅を始めた。侵入アラートだ。同時に壁面のメインスクリーンがオンになり、コマンドセンターのオペレータが映った。
 「侵入を検知しました」オペレータは手元のコンソールをせわしく操作しながら告げた。「セクションD、セクションF、セクションM は迎撃オペレーション態勢を取ってください。パッケージパターンはズールー・エックスレイ・ダッシュ・ツー。繰り返します。セクションD、セクションF、セクションM はZX-2 パターンで、迎撃オペレーション態勢を取ってください」
 「みんな、すまんが残業だ」私は命じた。「ZX-2 パターン準備。ドライバはハルとマイカだ。リン、カズトはナビゲータ」
 ハルとマイカが、オペレーション端末の椅子に飛び込み、素早くログインした。リンとカズトは、それぞれハルとマイカの斜め後ろに座る。サチも自席に駈け寄ると、ヘッドセットを装着し、誰かと会話をしながら端末にログインしている。
 私もヘッドセットを装着しながら、シュンとナナミに空いている椅子に座っているよう手で合図した。
 「コム―セクションD。詳細情報をくれ」
 『ポイントは戸塚区東戸塚西口プラザ付近です』オペレータが答えた。『敵勢力はナイト・ゴーンツが17 ないし21 と推定。ポイントがアクティブになる時間まで117 秒』
 同時にスクリーンの一つに「T-117」の文字が表示され、カウントダウンが開始された。
 「2 分か。侵入までにポイントを閉じるのは無理だな」
 『はい。セクションF がポイント修復、セクションD は侵入してきた敵勢力への攻撃を担当。セクションM はバックアップを担当してください』
 「わかった。そうだ」私は思いついて訊いた。「現場の映像は?」
 『今、空撮ドローンを急行させています。ETA は100 秒後』
 「映像が来たら、こっちのスクリーンにも転送してくれ。映像だけでいい。音声は不要だ」
 『映像を?』オペレータは首を傾げたが、すぐに頷いた。『了解しました』
 私はPO たちに指示を与えようとしたが、別の映像が割り込んできた。
 『ちょっと』諸見里が喚いた。『うちのセクションがバックアップってどういうことよ! どうしてセクションD ばっかり......』
 『申し訳ありませんが、ZX-2 パターンの最新バージョンは、Python 版のみ対応しています。Java 版は検証が完了していないため、実戦投入は否認されました』
 諸見里はなにやらブツブツ文句を言ったが、それでもおとなしく引き下がった。私は安堵したが、一息つく間もなく別の人間が映った。中年太りの丸顔。セクションF の福崎だ。
 『台場』福崎は焦った様子で言った。『すまんが、そっちのPO をこっちの作業に回してくれ』
 「え?」
 『さっきお前が出ている間に、横浜市内だけで7 カ所の侵入があったのは聞いてるか?』
 「いや、日報に目を通す時間がなかった。そんなにあったのか」
 『あったんだ。うちとセクションJ、セクションA でずっと対応してた。もう連続勤務時間の限界値だ。昨日から夜間当直だったからな。本来なら、お前の戻りと入れ替わりにオフにする予定だったんだが』
 「他のセクションは?」
 『どこも手一杯だ。木更津の件でフル稼働してるからな』
 「まだ続いてたのか」私は舌打ちした。「だが、こっちも......」
 言い終わらないうちに、佐藤管理官の映像が割り込んだ。
 『状況は確認しました』佐藤管理官は無表情な顔で告げた。『ポイント閉鎖を優先します。セクションD はロジックをF から引き継いでください』
 「わかりました」私はPO たちに、手で合図してオペレーション切り替えを指示した。「でも、侵入してくる敵への攻撃はどうするんですか」
 『セクションM に対応させます』
 「M はZX-2 パターンの最新バージョンに対応が......」
 『前のバージョンで何とか間に合わせます。とにかくセクションD はポイント閉鎖に集中してください』
 佐藤管理官の映像は消えた。私はPO たちを振り向いた。
 「聞いたな。防壁ロジックの準備だ」
 「チーフ」ハルが戸惑った顔を上げた。「ZX-2 の最新版が来てないんだけど」
 私は舌打ちしてサチを見た。サチはすでにキーボードに手を走らせていて、数秒後に報告した。
 「デザイン課から決定稿が降りてきてません」
 「やっぱりか」私はデザイン課を呼び出した。「セクションD の台場だ。ZX-2 パターンの最新バージョンが来てないぞ」
 『まだ検証中だ。少し待て』デザイン課の宇野はカメラを見ようともせず、フレーム外の誰かに怒鳴った。『おい、テストパターンが違ってるぞ。プロトコル合わせろ』
 「あとどれぐらいだ?」私は苛立ちを抑えて訊いた。「もう、こっちは準備に入ってる」
 『少しだ』
 言うなり宇野は回線を切った。私は罵りながら、オペレータを呼んだ。
 「最新モジュールがデザイン課で止まってるぞ」
 『すいません。確認します。あ、映像来ました。転送します』
 スクリーンにショッピングモールの一角らしい映像が映った。オープンスペースになった広い中庭に、いくつかの丸テーブルが置かれ、周囲にカフェやバー、レストランなどが並んでいる。テーブルの半分ほどに、仕事帰りのサラリーマンやOL、学生らしい集団などが座り、楽しそうに談笑しながら、ドリンクや軽食に手を伸ばしている。スマートフォンで料理の写真を熱心に撮影している女性グループもいた。
 私はカウントダウンの数値を確認した。残り数秒だ。二人の来客は、予告編が終わった後のような期待感を浮かべてスクリーンを注視している。
 カウントダウンがゼロになると同時に、石材が敷き詰められた中庭の中央に、長さ3 メートルほどの黒い線が音もなく出現した。鱗粉のようなグリーンの光がその線に沿って生まれている。光は周囲に拡大し、黒い線も広がっていく。
 「あれ」ナナミがかすれた声で呟くように訊いた。「何?」
 私は答えなかった。事前情報を与えて、思考を誘導したくなかったからだ。シュンにもナナミにも、自分の目で見たものを、自分で考えてもらわなければならない。
 黒い領域が幅30 センチほどに広がったとき、一番近いテーブルに座っていたスーツ姿のサラリーマングループの一人が、石畳に生じた異常に目を止め、訝しげな表情で覗き込んだ。細いグラスでビールを楽しんでいた連れの女性も、笑顔のまま地面に視線を移す。サラリーマンが何かを落としたのか、とでも思ったのだろう。
 その途端、黒い帯の端から、緑色の太い腕が飛び出した。
 音声を転送していたら、女性のすさまじい悲鳴がオペレーションルーム全体に響きわたったことだろう。出現した腕には不揃いの毒草のような鱗がびっしりと覆い、4 本の節くれ立った指の先端には、人間の皮膚などバターのように切り裂けそうなかぎ爪が生えている。その爪の一本が、女性の眼前数ミリの空間を横切ったのだ。女性は文字通り飛び上がり、スツールから転げ落ちた。サラリーマンはポカンと口を開いて、その光景を凝視していた。私にも経験がある。理解力を超越したシーンが目の前で展開され、脳内のデータ処理が追いつかないのだ。
 身動きひとつできないのは、シュンとナナミも同じだった。シュンはまだ冷静に事態を見極めようとしているようだったが、ナナミは嫌悪と恐怖を等分に浮かべてスクリーンを見つめている。
 私は再びデザイン課を呼び出した。
 「おい、まだか」私は努めて冷静な声を出した。「始まってるぞ」
 『もう少しだ』宇野は同じ答えを返したが、さすがに焦りの響きがある。『急かすと余計に遅れる。おとなしく待ってろ』
 公園での対応のように、佐藤管理官が介入してくれないものか、と考えたが、すぐにその望みは薄いと思い直した。アーカムの侵入対応プロトコルは、かなり厳格でよほどの例外的事態でない限り、逸脱されることがない。焦っていたので気にしなかったが、公園でのショゴス対応ロジックがQM 課を飛ばして承認されたのは、考えてみると異例なことだ。シュンに危険が及ぶのを防ぐことは、アーカムの官僚的手続きを何段階も省略するだけの価値があったということか。
 私がそんなことを考えている間にも、スクリーンの中では事態が進行している。時空を超えて開いた裂け目から、鱗だらけの細長い腕全体が飛び出し、頭部と胴体が続いて出現しつつあった。瞳のない黒い目、一見不揃いだが実は規則正しく並んでいる尖った歯の列、人間なら耳がある位置から生えている器官は左右で大きさが異なる。胴体はキチン質のような外殻に覆われていて、中庭の照明が鈍く反射していた。下半身は骨そのもののように細く、複雑な形状の関節がいくつもつながっている。胴体の二倍ほどの長さの尻尾は、まだ量子情報から再構成中でモザイクがかかったように見えた。
 およそ2 メートルほどの身長のナイト・ゴーンツが完全に実体化すると、それまで凝固していた人々のうち、ようやく危険を察知したらしい何人かが後ずさり始めた。まだ脳内の警報ランプが点灯していない数人がスマートフォンを向けていたが、続いて数匹のナイト・ゴーンツが這い出してくると、さすがに距離を取ろうと動き始める。ナイト・ゴーンツたちは、しばらくの間、獲物を品定めしてでもいるように、周囲の人々をゆっくり見回していた。
 「ねえ、ちょっと」ナナミが震える声を上げた。「あれ、まずいんじゃないの?」
 まるでその声がキッカケになったように、不意に最初のナイト・ゴーンツが先ほどのサラリーマンに飛びかかった。サラリーマンの男性は驚愕の表情で身を守ろうと両腕を上げたが、異世界のクリーチャーは意に介した様子もなく、かぎ爪を一閃した。鮮血が飛び散り、サラリーマンの腕と頭部が胴体から分離する。他のナイト・ゴーンツたちも、それぞれ目標と定めた人間に襲いかかると、正確無比な精度で確実に身体の一部を切断してのけた。
 瞬く間に、パニックが空間を埋め尽くした。
 私は叫び出したい衝動を必死でこらえ、爪の跡が残るほど拳を固く握りしめた。オペレーション端末の前に座るPO たちは、とっくに視線を逸らしていたが、シュンとナナミは顔面を蒼白にしながらも目が離せないでいる。
 ほんの数秒で20 人以上の罪もない市民が石畳の上に転がった。半数は致命傷だと思われた。出現したナイト・ゴーンツはまだ4 体だ。予測が正確なら、さらに数が増えるし、比例して被害も増大するだろう。
 『侵入ポイントの現実度数が上昇しています』オペレータが報告した。『対応ロジックの構築を急いでください』
 もう一度、デザイン課を呼び出そうとしたとき、向こうから回線が開いた。
 『待たせたな。承認したぞ』
 いろいろ言ってやりたいことはあったが、私は仕事を優先した。
 「パスフレーズは?」
 宇野が口にしたワンタイムパスフレーズを、私はそのまま入力して、サチを見た。同じことをしていたサチが頷く。私はEnter キーを叩いた。
 「パッケージ来たぞ」私はPO たちに言った。「ロジック構築開始」
 ハルとマイカが、待ちかねたように端末に飛びつくと、すごい勢いでキーを叩き始めた。打鍵音はない。PO 課の端末は、全てソフトウェアキーボードだ。マウスなどのポインティングデバイスもなく、ウィンドウの切り替えなどはショートカットキーかタッチパネルの直接操作で行う。
 私はスクリーンの解像度を下げた。映像がぼやける。これだけ見れば、シュンにも事態が飲み込めただろう。あまり長時間見ていると、ナイト・ゴーンツのRR が上昇し、後処理が難しくなってしまう。
 シュンが席を立ち、めまぐるしく指を動かしてロジック構築作業を行っているハルとマイカの横から、モニタを覗き込み始めた。ナビゲータのリンとカズトは、それに気付くと、問いかけるように私を見たが、私が小さく頷くと、肩をすくめて作業に戻った。
 私は別のスクリーンにシチュエーションマップを表示した。出現したナイト・ゴーンツ、犠牲者、接近しつつあるソード・フォースがアイコンで表示されている。シュンはスクリーンに目をやりながら、私に近付いてきた。保護者を自任しているらしいナナミもついてくる。
 「これがペアプロですか」シュンは囁いた。
 「そうだ。やったことないだろう」
 「ないです」シュンは興味の色を浮かべて、4 人のPO の後ろ姿を眺めた。「コードを正確に書くためですか?」
 「まあ、それもある」
 ペアプロを行う最大の理由は観測問題によるRR なのだが、長くなるので説明はしなかった。シュンがここで働くことを選択すれば、いやでも学ぶことになるし、そうでなければ知る必要はない。シュンも別の理由があることを察したようだが、追求することなく別の質問を口にした。
 「あのモンスターを」シュンは現場の映像が映るスクリーンを指した。「これから攻撃するんですか?」
 「違うよ」リンがちらりとシュンを見た。「ポイントを塞いでるの」
 「ポイントって?」
 「あいつらが侵入してくる穴だ」私は説明した。「量子もつれポイントだよ」
 「ちょっと待ってよ」ナナミが愕然とした顔で囁いた。「じゃあ、あの変な怪物はどうするの」
 「ポイントを閉鎖してから対応することになるな」
 シュンとナナミは信じられない、言わんばかりに顔を見合わせた。
 「あそこで襲われてる人たちはどうなるんですか」
 「どうにもならない」
 「さっきの」シュンが動揺した声で訊いた。「ソード・フォースでしたっけ、あの人たちは?」
 「向かってるが、まず侵入ポイントを閉鎖しなければ、現場には突入できない」
 「そのポイント閉鎖には、どれぐらいかかるんですか」
 私は淀みなくキーを叩いているハルとマイカを見た。PO の前には4 つのモニタがモニターアームで固定されて並んでいる。ロジック構築を行うウィンドウは左下のモニタにあり、他のモニタには分析課で解析された量子化データが、短いキーワードと700 種類以上のグラフィックパターンで表示され続けていた。PO はこれらの情報を読み取り、構築中のロジックに適切なライブラリを組み込み、入れ替え、迂回サブルーチンを追加し、不明部分を予想し、デバッグし、モジュール化し、上位ランナーとのパラメータを設計しているのだ。ナビゲータの二人は、同じことを外側から客観的に行い、差が生じたときにはドライバの手を止め、矛盾を解決する役目を負っている。
 「そうだな」私はそれぞれの進捗状態を確認した。「順調にいけば、10 分から12 分というところだな」
 シュンとナナミは息を呑み、スクリーンを見た。ぼやけた映像だが、すでに10 体以上のナイト・ゴーンツが実体化し、大きな翼を広げて飛び回り、逃げ惑う人々を殺傷し続けているのは見て取れる。
 「あそこで逃げている人たちは......」
 「運が良ければ、何人かは生き残る」
 「冗談じゃないわよ!」ナナミが怒りを爆発させた。「先にあいつらを攻撃すればいいじゃないの。そうすれば助かる人だって増える。違いますか?」
 「ポイントを長時間放置しておくと」私はナナミに、というよりシュンに向けて言った。「それ自体のRR が上昇して、この世界にとっての現実になってしまう。トンネルの内側をコンクリートで固めるみたいにな。そうなると、SPU にとっての橋頭堡ができたことになるんだ。別のもっと強力なクリーチャーが容易に侵入してくる」
 「それはつまり」ナナミが気味が悪いほど冷静な口調で言った。「もっと多くの人が死なないために、あそこの人たちを犠牲にするということ?」
 「そういうことになるな」
 「わかった」ナナミは断固とした口調で言うと、シュンの手を掴んだ。「シュンにこんな仕事をさせられない。帰らせてもらいます。シュン、行くわよ。シュン?」
 シュンは動こうとしなかった。その細面には、どこかで見たことのある表情が浮かんでいる。それが何かはすぐにわかった。熟練したプログラマが頭の中で複雑なビジネスロジックを組み立てているときの顔だ。私がまだ、前職のシステム開発会社に勤務していた頃、同僚プログラマが浮かべていたのと同種の表情だった。

(続)

 この物語はフィクションです。実在する団体名、個人とは一切関係ありません。また、特定の技術や製品の優位性などを主張するものではありません。本文中に登場する技術や製品は実在しないことがあります。

Comment(2)

コメント

「重箱の隅」の匿名改め勝手に校正

>私は答えなかった。(略)シュンもナナミにも、自分の目で見たものを、(略)
シュンにもナナミにも、
でしょうか

>黒い領域が幅30 センチほどに広がったとき、(略)、訝しげな表情を覗き込んだ。
訝しげな表情で or 訝しげな表情をして
では

>およそ2 メートルほどの身長のナイト・ゴーンツが完全に実体化すると、それまで凝固して人々のうち、(略)
それまで凝固していた人々のうち、

>私は淀みなくキーを叩いているハルとマイカを見た。(略)解析された量子化データが短いキーワードと、700 種類以上のグラフィックパターンで(略)
解析された量子化データが、短いキーワードと700 種類以上の
ではいかがでしょう

>「わかった」ナナミは断固とした口調で言うと、(略)。シュン、行くわよ。シュン?」
シュン、行くわよ。……シュン?」 or シュン、行くわよ。」「シュン?」
のように,シュンの反応を示す間を取るのはどうでしょう

リーベルG

勝手に校正さん、ありがとうございます。
最後の間は、そのままにしておきます。

コメントを投稿する