表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
過労死エンジニアの異世界リファクタリング ~孤独の管理者と不変の定数~  作者: 雨山識


この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

2/26

第1話:目覚めのリブート

「……う、あ……?」


目を開けると、そこは知らない天井だった。

いや、天井だけではない。

空気の匂いが違う。湿度も、重力さえも、何かが違う。

肌に触れる布の感触はゴワゴワとしていて、化学繊維特有の滑らかさがない。まるで麻袋の中に詰め込まれたような居心地の悪さだ。


(……どこだ、ここ)


起き上がろうとして、僕は自分の体に致命的な違和感を覚えた。

動かない。

手足が、まるで鉛を流し込まれたかのように重いのだ。

神経がうまく繋がっていないような、ドライバの不具合にも似た感覚。


視界を動かす。

ぼやけた視界に入ったのは――クリームパンのように白く、ムチムチとした小さな手だった。

指の関節にはエクボができている。どう見ても、三十路を超えた社畜エンジニアの手ではない。


(……は? なんだこれ。僕の手か?)


状況を整理しようと脳をフル回転させる。

だが、思考速度に体がついてこない。

少し複雑なことを考えようとしただけで、脳みそが焼き切れるような猛烈な疲労感が襲ってくる。CPU使用率が常に100%に張り付いているような重苦しさだ。


【System Check Initiated...】

【Warning: Hardware Spec Verification Failed.】

【CPU: Low Performance (Infant Type)】

【Memory: Insufficient (32MB)】

【Storage: Write Protected】


脳裏に、無機質なエラーログが走った。

幻覚ではない。システムエンジニアとして長年培ってきた「論理的思考ロジック」が、現状をシステムトラブルとして解釈しているのだ。


(ハードウェア……スペック不足? 僕が、赤ん坊になってるってことか?)


転生。

ラノベやアニメで見たことのある概念だ。

ブラック企業でのデスマーチの果てに過労死した社畜が、異世界で第二の人生を歩むというやつ。

まさか自分がその当事者になるとは。


「……あう、あー」


声を出そうとしても、情けない喃語しか出てこない。

声帯の制御すらままならない。言語モジュールもまだ初期化されていないらしい。

絶望的な「低スペック環境」へのダウングレード。

愕然とする僕――レインの視界に、若い女性の顔が覗き込んだ。


「あらあら、レイン。起きたの? いい子ねえ」


母親だろうか。

優しげな微笑みと、栗色の長い髪。

彼女は僕を抱き上げると、あやしながら優しく語りかけてくる。


レイン・リファクト。

それが、この世界で僕に与えられた個体識別名フルネームだった。


だが、僕の関心はすぐに、彼女の顔から指先へと移った。

そこには、物理法則を無視した不可思議な「光」が灯ろうとしていたからだ。

夕暮れ時の薄暗い部屋を照らすために、彼女は魔法を使おうとしていた。


「暗いから、明かりをつけましょうね。《ライト》」


彼女が指先を振ると、小さな光球がふわりと浮かび上がった。

魔法だ。

間違いなく、ファンタジー世界の魔法だ。

普通なら感動する場面だろう。文明の利器を使わずに光を生み出すなど、前世の常識ではあり得ない奇跡だ。


だが。

僕の反応は違った。


(……なんだ、そのクソコードは!!)


僕は心の中で絶叫した。

僕の目には、その魔法が「輝く光」ではなく、「醜悪で非効率なプログラム」として視覚化ヴィジュアライズされていたのだ。


――『低レイヤー・ビジョン』。


それが、僕がこの世界に持ち込んだ唯一のユニークスキル。

世界の物理法則を、ソースコードとして視認する——エンジニアの職業病が具現化したような目だ。


僕の目には、母の指先で実行されている処理が、コンソール画面のログのように流れて見えた。

そしてそれは、見るに耐えない代物だった。


```

function cast_light() {

// 無駄なループ処理。なぜここで100回も魔素を回転させる?

for (i=0; i<100; i++) { gather_mana(); }


// 冗長な条件分岐。火属性のチェックなんていらないだろう。

if (is_fire == true) { error(); }


// 変数の宣言場所がおかしい。グローバル変数を汚染している。

var light_intensity = 50;


// メモリ解放漏れ! これじゃ魔力が垂れ流しだ!

emit_light(light_intensity);

// return; ←ここ! 終了処理がない!

}

```


(汚い! コードが汚すぎる! インデントも揃ってないし、コメントもない! なにより、メモリリーク(魔力漏れ)が酷すぎて見てられない!)


母は光を出すたびに、少し疲れたように息を吐く。

当然だ。

本来なら「1」の魔力で済む処理に、「100」の魔力を浪費しているのだから。

エネルギー効率が悪すぎる。これでは電球を点けるために火力発電所を一基燃やしているようなものだ。


(直したい……! 今すぐその場でリファクタリングしてやりたい!)

(その `for` 文はいらない! 条件分岐も `one-liner` で書ける! 変数はローカルスコープに閉じ込めろ!)


エンジニアの職業病が疼く。

バグを見つけたら修正せずにはいられない。最適化されていないコードを見ると蕁麻疹が出る。

だが、悲しいかな。

僕の体は、まだ生後数ヶ月の乳児なのだ。

キーボードを叩く指もなければ、呪文を唱える口もない。

ただ「あーあー」と喚くことしかできない。


(くそっ、見えてるのに! 解法は分かってるのに、実装コーディングできない!)

(インターフェースがない! 入力デバイスがない! `Standard Input` が `Null` だなんてふざけるな!)


僕は悔しさのあまり、「あー! うー!」と手足をバタつかせて抗議した。

母はそれを「元気いっぱいね」と勘違いして、ニコニコと頬ずりをしてくる。

柔らかい頬の感触。母の匂い。

それは本来なら安らぐべき温もりなのだが、今の僕にとっては「バグを放置する開発者」への憤りでしかなかった。


違う。そうじゃない。

僕は愛されたいんじゃない。デバッグがしたいんだ。

【今節の専門用語解説】


・低レイヤー(Low Layer)

プログラムの中でも、より機械ハードウェアに近い部分のこと。レインは世界の法則をこのレベルで視認し、直接いじることができる。


・メモリリーク(Memory Leak)

使い終わったメモリ領域(作業スペース)を解放し忘れること。これが起きると、パソコンの動作がどんどん重くなる。魔法で言うと「魔力の無駄使い」である。


・リブート(Reboot)

システムの再起動。レインにとっての「転生」は、まさに人生のリブートだった。前世の膨大な知識と経験を引き継いだまま、新しいハードウェアで再起動した状態。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ