第1章

 私はスローン・ウィットモア。

 コンピュータサイエンス学科公認の「コード製造機」として、私はずっと一つの原理で生きてきた。単独行動こそ、存在するうえで最も効率がいい。不要な人間関係は、システムを重くするだけの冗長な駄ソフトにすぎない。

 授業前のどうでもいい雑談を回避するために、私は毎回、七時半きっかりに実験室の最前列ど真ん中の席を確保する。静か。集中。厄介ごとゼロ。

 八時までは。

 バン――!

 扉が乱暴に叩き開けられ、コンピュータ室の絶対的な静寂が一瞬で粉砕された。

「主将、マジで昨夜の打ち上げ、デルタ・ファイの女どもがお前にベタ惚れだったぞ。あの金髪なんか離れようとしなかったし」

「まあな」低い笑い声。

「人気者で困る。ほら、席探せ」

 冷たい外気が流れ込み、ミントの匂いに混じったスポーツ系のボディスプレーが鼻を刺す。傲慢な笑い声が教室にどさっと投げ込まれた。

 私は眉をひそめたが、視線は画面から外さない。どうせまた、テストステロンに酔ったパーティー狂の群れだ。

 視界の端で、黒と赤のスタジャンを着た背の高い男たちがぞろぞろと入ってくるのが見えた。

 先頭はコービン・ホーク。ホッケー部主将にして、学内のハート泥棒。彼女が入れ替わり立ち替わりの男だ。副主将のジャクソンが横に付き、さらにその後ろには、完璧に作り込んだ顔のチアリーダーたちが固まりで続く。露骨に彼の注意を奪い合っている。

 私は画面に集中した。こんな退屈な社交ゲームは、私の問題ではない。

「前の列のど真ん中の子、ちょっと面白そうじゃね?」と、男の声が低く流れてきた。

 誰かの視線が刺さるのがわかる。博物館の展示物みたいに扱われると、皮膚の内側がぞわつく。

「スローン・ウィットモアだよ。CSの悪名高い氷の女王。やめとけって。感情ゼロのコードロボットで、男に時間なんか一秒も割かないぞ」

 コードロボット? 私は心の中で鼻で笑った。こいつらの語彙は、作戦ノート並みに薄っぺらい。

 私はただ、自分が欲しいものを知っていて、無意味な社交劇に時間を浪費しないだけだ。

 ジョンソン教授が入ってきた途端、騒がしさは即座に沈んだ。私はコンパイル中のウィンドウを閉じ、講義の態勢に入る。

「みなさん、おはよう。『コンピュータサイエンス入門』へようこそ……」教授は黒板に文字を書きつける。

「この講義では、プログラミングの基礎となる論理を身につけてもらいます」

 全額給付の奨学金を維持するために必修単位が必要でなければ、「ハロー・ワールド」を半コマかけて説明するような入門一〇一の授業に足を踏み入れることはなかった。

 教授は基礎に入った。データ型、変数、制御構造。高校でとっくに習得した内容だ。私は半分だけ耳に入れながら、頭の中では自分のアルゴリズム設計をデバッグしていた。

 背後で女子の集団がひそひそ笑い合う。

「やば、コービン・ホークが同じ授業とか」 「近くで見るともっとかっこいい」 「パーティーで会ったの覚えてるかな?」 「あの人、誰のことも覚えてないって――」

 目を回したくなる衝動を押し殺す。ありがちすぎる。

 四十分が、這うように過ぎた。

 ようやくジョンソン教授がマーカーに蓋をした。

「よし。みんなが逃げる前に――もう一つ。最初のプログラミング課題だ」

 教室の空気が少し引き締まる。私はわずかに背筋を正した。

「基本的なアルゴリズム課題。二人一組で取り組んでもらう。提出は来週の金曜日だ。では、相手を見つけて」

 二人一組? 私はペン先に力を込め、紙に押しつけた。チームワークなんて、私の足を引っ張るだけだ。

 教室は一気に沸騰し、学生たちが相手探しに駆け出した。私は眉をひそめ、教授に「一人でやらせてください」と頼むべきかを計算する。

 立ち上がろうとした、その瞬間。

 私の机に大きな影が落ち、前方から差し込む光をまるごと塞いだ。

 見上げると、さっきのホッケー部主将のクソ男が、私の上にのしかかるように立っていた。

 近くで見ると威圧感はさらに具体的だ。身長は一九三センチ近く、眉のあたりをかすめるように野性的な傷が一本走っている。今、その濃い茶色の目が私に絡みつき、例のホッケー選手スマイルが口元に浮かんでいた。キャンパス中の女子が正気を失う、あの笑み。

「よう。俺、コービン・ホーク」低くざらついた声。鍛え上げた自信が滲み出ている。

「組まない?」

「あなたのことは知ってる」私は顔も上げず、正面から突っぱねた。

「でも相棒はいらない」

 彼は片眉を上げた。遠慮のない拒絶が、むしろ新鮮だとでも思ったのか。引き下がるどころか、両手を机の縁に置き、長い指が私のノートパソコンの画面の角をかすった。

「噂は聞いてる、ウィットモア」少し身を乗り出す。

「でも教授が言っただろ。二人一組。例外なしだ」

 諦めさせるため、私は画面を彼のほうへ回し、キーを叩いた。緑の進捗バーが即座に表示を埋める。

「シラバスに載ってた基本版はもう終わってる。今は上級構成の最適化に入ってる。あなたは私にとって不要」

 コービンは、ぎっしり詰まったコードの海を見つめ、目に一瞬だけ驚きが走った。だがすぐに立て直す。

「いいね」低く口笛を吹く。

「当たり引いたかも」

 そこへジョンソン教授がこちらに気づいた。

「スローン、二人一組は必須だ。例外はない」

 私は心の中でため息をついた。逃げ道は潰された。

 ノートパソコンを引き戻し、氷みたいな視線でコービンを射抜く。

「わかった。ただし条件がある」

「聞こうか」彼は隣の椅子を引きずってきてどさりと腰を下ろした。長い脚を無造作に投げ出し、通路の半分を占領する。

 私はノートから一枚ちぎり、数行書き殴って、彼の胸元の前に叩きつけた。

「これが進行表」目を合わせ、声は平坦。

「課題自体は簡単なスクリプトだけど、私はアプリとして作る。あなたは画面側。見た目は簡潔に。私は裏側と統合をやる」

 コービンは紙を拾い上げ、軍隊レベルの精密さで刻まれたスケジュールに目を走らせ、低く笑った。

「火曜の夜八時までに画面案提出? トイレの時間も管理する気か?」

「締め切りに影響しないなら、好きにすればいい」

「先にお互いのこと知ったほうがよくない?」気楽で、どこかからかうような口調。

「番号交換とか、あるいは――」

「知り合うことは課題の完成に寄与しない」私は冷たく遮った。この手の口説き文句が私に効くわけがない。

「番号は渡す。ただし連絡はプロジェクトの件のみ」

 私は別の付箋をちぎり、番号と注意事項を書き、手渡した。連絡は常識的な時間帯に限る、緊急時は除く。雑談禁止。

 コービンはそれを受け取り、追記を読んでから、堪えきれないように小さく笑った。

「常識的な時間帯? 学校の課題だぞ。会社じゃない」

 私は指を組み、冷えた目で見据える。

「私はスケジュールで動く。ここではホッケーのスター特権で特別扱いは買えない。遅れたら、教授に掛け合ってあなたを一方的に外す」

 彼は意外そうに目を見開き、そこに火花みたいなものが灯る。小さく首を傾け、隠しもしない挑発を声に滲ませた。

「じゃあ、俺がそれでも電話したら? ウィットモア。接近禁止でも申請する?」

 私は眼鏡を直し、表情を消した。

「ブロックする」

 鐘が、ちょうど合図みたいに鳴った。

 私は一秒も残らない。ノートパソコンをぱちんと閉じ、キャンバス地のバッグに突っ込み、立ち上がる。

「要件書は五分以内に学内メールに送る」

 出口へ一直線に向かう。背中に、焼けつくような視線が刺さり続けているのがわかった。

 建物の外に出ると、冷たい空気が鼻に残っていたミントの匂いを洗い流した。私は深く息を吐く。

 普通なら、振られた男は引き際を知っている。けれど、あの目――諦めないというあの光。

 まあいい。期限までに出してくれさえすれば。

 コービンは、私の人生というプログラムに紛れ込んだ一時的な異常値だ。精神のメモリを一バイトも占有しない程度の、ただの小さな不具合。

 少なくとも、そのときの私はそう思っていた。

次のチャプター