3


 ポッポタイムには二つの顔がある。
 昼は絶え間なく外の広場からも街ゆく人々の声や鳥の囀りが聞こえ、来訪者と仲間の往来で賑やかな空間が広がる。だが一度太陽が沈むと、リビングやガレージは色鮮やかな風景を忘れ、静寂が訪れていた。
 
 シャワーを浴びて作業机の前に戻った遊星は、デスクトップのスリープモード状態を解除した。普段なら、この時間でも隣の席で作業しているはずの共同開発者の姿が見えない。席に着いた遊星は作業途中のファイルをざっと見直し、ブルーノが残したメモを見つけた。
 昼時、仲間たちとプログラムは秘密の呪文──とは言っていたが、実はプログラム知識がない彼彼女らでも明確に読める箇所がある。

 コメント機能で書かれたメモだ。

628 // ごめん遊星、今日は先に寝るね
629 // 明日起きたら先はボクが埋めておくから!

 コーディングの原則として、プログラム内にこのような余計な私的コメントを書くのは望ましくない。使う場合も、厳密なルールを決めて「必要最低限」活用されるべきものである。実際、遊星とブルーノは元々チャットや別の共有メモを利用して、コードの進捗状況や問題点の洗い出し、情報共有などを行っていた。
 それがいつの間にか、頻繁にプログラム内に直接二人の”会話”が書かれるようになった。

 遊星はログをスクロールさせながら”感染源”を探した。きっかけとなったブルーノのコメントが、これだ。

352 // クロウとジャック、本気で決闘したらどっちが強いんだろう?

 確か、作業中にクロウとジャックが口喧嘩を始めた時にブルーノが打ち込んだものだ。それも、二人の口喧嘩に眉を顰め、深刻そうに紡がれた彼の文字列が、この内容だったのだ。
 さすがの遊星もブルーノのこの書き込みには仰天した。当然、遊星もコメントアウト機能を利用したことはある。ただし、それは自分が分かるように問題点や書き途中の箇所、注意点など必要最低限の内容だ。このブルーノの一手は、遊星の頭の中に確固として存在していたはずのプログラミング作業の概念を”頭から書き換え”てしまうほどの衝撃だった。
 リアルタイムで書き込まれたブルーノの文字列に驚きながらも、長年二人の幼馴染として過ごしてきた義務感に駆られ、遊星は「コメント」を返した。

364//これまでの勝敗数を自動計算してくれるマクロを組んでおけばよかったな

 これに対するブルーノの回答も鮮やかなものだった。

353//今度、二人のケンカが始まったら決闘で決着つけてもらおうか!

 こうして、魔術的儀式の呪文の中に二人の生きた言葉が混ざるようになったのだ。

 このコメントを利用した会話は、文字通り「内緒話」をしているような面白さがあった。ブルーノの茶目っ気に吊られるままに、ついつい、遊星もプログラム内でブルーノと会話することが増えた。
 開発上のメモや覚え書き、質問、進行の相談といった開発上発生する必須のやり取りから、新しいカップ麺の感想、工具の買い出しの相談、その他日常生活の報連相に雑談から独り言のような呟きまで。専門職の玄人が見たら、間違いなく顔を顰める画面だろう。
 普段から隣で作業しているのだから話しかければよいのだが、昼の大所帯のポッポタイムではそうはいかない。前述の通り、背後でジャックとクロウが言い合いを始めることもあれば、龍亜と龍可の宿題の面倒をアキが見ていることもある。今回のように片方が仮眠などで席を外した場合に書き置きを残すこともあれば、「何でも屋」の遊星が外に貸し出しされることもある。
 そこで、コード内に直接コメントを書き置きしたり、リアルタイムで書き込む──儀式は、意外にも二人の間で続いていた。

 遊星は再度、コードの最深部までスクロールし、大量の行間に潜む深淵を眺めた。おそらく先日のブルーノが宣言した伏せの魔法カードとは、この「コメント機能」を活用したものだろう。
 出題最初、遊星はプログラム制作者の署名かと推理した。これまで一人で全部コードを書き上げ、そして共同制作することもなかった遊星には縁遠いものだったが、今回ばかりはブルーノと共に開発したものなのだから無記名のまま最後のエンターキーを押すわけにはいかない。だが、どうやら署名はファイルの冒頭に記すのが通例らしい。ならば署名の類ではなく、別の線だろう。また、最後の最後に断りもなく別のコードを挿入するのも現実的ではない。となると、終行に刻んでも問題ないものといえば──コメントではないか。問題は、その内容だ。

 いずれにせよ、ブルーノの魔法は遊星の想像をはるかに超えたものになるだろう。それこそ、チームのWRGP優勝を確実にしてくれるような魔法の呪文が。


次へ


1 2 3 4 5 6 7 8