見出し画像

私がプログラマーだった頃

 今は昔、
 とでも書き始め切れそうなほどに、
 今となっては古臭く感じられる話であろうから、
 聞き流して頂いて構わないのだが、

 私がプログラマーだった頃、
 メモリーには冷酷なまでの制限があった。


 プログラムは物質であり、
 半導体素子を中心とする集積回路がその実体であった。
 そして物質である以上は物理法則で成り立っている。

 当時の我々の仕事として、
 私の目に映っていた姿は、

 限られたメモリーから必要なだけの部品を切り出し、
 部品ごとに数値データを記憶させ、
 表示や参照や計算に使用した後、
 役目を終えた部品は中のデータを消去してメモリーに戻す。

 そのひたすらな繰り返しと組み合わせだった。


 時折中身の消し忘れや、
 部品の組み合わせ間違いに、
 使用済み部品の戻し忘れが発生する。

 システムエンジニアが、
 予め綿密な設計を築き上げようとも、
 プログラマー各人が、
 如何に気を配ろうとも発生する。

 なぜならば部品にデータは際限無く、
 常に切り出され記憶され利用され戻され続けているから。

 データゴミは日に日に、
 有機物のように生み出され溜まり込んでは、
 最も厄介なバグの発生源になる。

 明らかなミスがコードに刻まれていればまだ良し。
 誰もそんな動きを書き込むはずの無い謎のバグが、
 まれにではあるがわりと致命的に発生した。
 

 プログラマーとしての私の、
 コード作成能力は平均値かそれ以下だったが、

 部品の一つ一つを丹念に磨き、
 ゴミの溜まっている箇所を見つけ出す能力には、
 我ながら天才的なほど長けていた。

 当時有り得ないくらいに珍しかった、
 文系出身プログラマーだった私は、
 コードも文章のように「読んで」いたからだ。

 データの流れが滞り澱んでいる箇所を、
 「なんとなく」で察知できたわけだ。


 一方で半導体素子も物理である。
 ICチップに付属するピン一本一本が、
 電気信号を伝えデータをやり取りする。

 私がプログラマーだった頃、
 そのピン一本一本ごとの指示を書き込む事は、
 「ピンを叩く」と表現されており、

 「ピンを叩ける」者は、
 熟練の技術者として敬意を払われていた。

 当時のICチップの中には、
 同じロットで生産されたはずの平均より動きが悪いものや、
 接触不良なのか電気信号を伝えないピンが存在した。

 だからと言って取り替えは効かない。
 当時のメモリーは高価だった。

 しかしながら「ピンを叩ける」者は、
 ICチップごとに書き込む指示を調整し、
 まるで初めから何の支障も無かったかのように、
 機能させる事が出来たのである。


 私がプログラマーだった頃、
 突然「ピンを叩ける」者達の数多くが、
 現場からいなくなった。

 半導体素子が海外から調達できるようになったため、
 メモリーは買い放題使い放題になった。
 もはや「ピンを叩く」技術など不要である。
 それも込みで海外に任せれば良い。

 三畳一間の小さな下宿から、
 タワーマンション最上階の4LDKに、
 引っ越せる事になったようなものだ。
 髪の毛一本くらいは落ちていたところで気付かれない。

 程無く私も「単価の割に実績が上がらない」と、
 仕事を頂けなくなり退職した。


 とは言えプログラムも物理である。
 「2、3年で壊れるプログラムが組み込まれている」
 といった都市伝説はウソだと言い切れるが、
 
 「3、4年も使えばどんな動きをし出すか分からない程度の、
  プログラムしか組み込まれていないだろうな」
 とは思っている。

 その頃には旧型になっていて持っている事自体恥ずかしい。
 買い直した方が経済も回りますよ、
 というだけの話だ。
 運悪く平均よりも機能しない、
 ICチップを引き当てる事もあるだろうが、
 だからこそ「初期不良」として回収される。

 皆々様に結構な事として選択された、
 効率的かつ便利な世の中である。

 どうぞご自由に、
 としか申し述べようは無い。
 

 
 

何かしら心に残りましたらお願いします。頂いたサポートは切実に、私と配偶者の生活費の足しになります!