1章 ITという大河の源流をたどる
これから書くお話は、私自身のIT人生における経験がベースとなっている。私が初めてコンピュータというもののしくみを知ったのが中学時代。某国営放送教育TVのフォートラン講座なるものを見たときだった。コンピュータが、こんな言葉を理解して動いてくれるのだと驚いたことを覚えている。コボルに至っては、まさに英語そのもののように思えて、改めて驚いたものだ。
そんな大昔の話をなぜするのかといえば、クラウドがどうして生まれたかを本当に理解するためには、ITという大河の源流からの流れをある程度知っておいたほうがいいと思うからである。特に、若い人たちには、かえって新鮮かもしれない。ご同輩の方々は適当に読み飛ばしていただけるとうれしい。私の過去の経験を通して、最後に導き出される結論の理由を考えてほしいのだ。
さて、実際に私がプログラミングというものに触れたのは、70年代前半の高校時代。といっても、コンピュータというよりは、今のプログラミング電卓、しかもコンビニのPOS端末よりもうひとまわり大きいような代物だ。もちろん性能など論ずるにも値しないようなものだし、プログラミングも高級言語ではなく、数字と記号を組み合わせたコマンドを並べていくようなもので、レジスタが実数演算可能なことや、印刷や磁気カードへの入出力命令を持っている以外は、アセンブラとそんなにたいしてかわらないレベル。当時、ちょうど教育課程が、私たちの年代の少し下からかわって、数学に2進演算やアルゴリズムなどの概念が入ってきたころだったので、文部省(今は文科省)が高校への「電卓」導入をすすめていたころである。数学クラブに顔を出して、プログラムを作って遊んでいたのを覚えている。中でもバイオリズム計算は、文化祭で出したら女子の長い列ができた。今だから言うが、自分だけではなく好きな娘のバイオリズムをひそかに計算したりしていたものだ。
私が大学に進んだころには、いわゆる「マイコン」が一般でも手に入るようになる。N社が出した基盤丸出しのマイコン検証キットTK80は人気で、卒研のお隣の研究室で遊んでいるのを見に行った。16進で機械語を直接打ち込んでプログラミングするのだが、オプションの基盤を1枚加えるとBASICが使えるようになる。高級言語でプログラムできる環境が個人で手に入るのかと驚いたと同時にわくわくしたものだ。
当時、卒研の実験データは、同期のお金持ちなオーナー社長の息子が持ち込んだテキサス・インスツルメンツ(TI)社製の30万円ほどするプログラム電卓を使って処理していた。なぜかと言えば、私が通っていた大学は(当時は・・の話だが)貧乏大学で、理工学部にはパナファコム製のミニコン(死語)が1台あるだけ、ややこしい計算はご近所の某国立大学の計算センターを使わせてもらっていた。当然、そんな貧弱なミニコンでも学部の学生は直接使えない。当時は、紙のパンチカードに1枚1行ずつプログラムを打ち込み、束にして事務室に持っていくと、空いた時間で処理して結果を返してくれる。しかし、FORTRANで、しかも複雑な数値計算をするプログラムをそんなに簡単に書けるはずがない。まず、文法エラーの山が帰ってくるので、それを修正してカードを入れ替えて再度提出する。そんなことを数回繰り返してやっと何がしかの結果が返ってくるのだが、まだ単に文法が正しいというだけで、アルゴリズムは別物。間違っていても結果が出ればまだいいのだが、不正処理で落ちてしまうことも多く、これじゃ、電卓でやったほうがマシ・・と半ばあきらめていた。ところが、それを見ていた院生が、自分のJOBカードを貸してくれた。ちなみに、JOBカードは、プログラムやデータのカードの先頭に置くカードで、これがないとコンピュータを使えない、いわばIDカードのようなもの。当時は、セキュリティのセの字もない管理状況。これを借りて、堂々と計算機室に行って、院生面をして使っていたのだが、ある日、悲惨な事件が発生した。
ようやく文法エラーが取れたプログラムを走らせたところが、結果を数行打ち出したあと、わけのわからない数字列をがんがん打ち出し始めた。あっという間にラインプリンターの用紙がひと箱なくなってしまった。いわゆる「ダンプ」である。プログラムが暴走して強制終了させられたときに出るアレだ。今のOSなら、HDD上に吐き出されるのだが、こいつはプリンタに吐き出してしまう。いくらメモリが少ないとはいえ、全部ダンプされたらたまったもんじゃない。とりあえずアボートして、紙の束を研究室に持ち帰ったのだが・・・、使った紙の枚数をノートに書いてくるのを忘れた。シングルタスクのミニコンなので、自動でカウントなどできないから、ノートで課金管理していたのだけど、消費枚数と記載枚数が大幅に狂ったため、さすがの事務室も気がついたようだ。コンソール(タイプライターだが・・)の記録でJOBカードから、うちの院生を割り出した。悪いことに、その院生氏、その年度の利用更新をしていなかったため、使ったカードは前年度のもの・・・。orz である。年度のチェックすらシステムには入っていなかったわけだ。その院生氏、事務室からの呼び出しに悪びれる様子もなく、私に「君が使ったのだから、君が言ってきてくれ」とのたもうた。しかたがないので、恐る恐る事務室に行き、たっぷり油をしぼられて帰ってきたというわけだ。これは、なかなか忘れることができない思い出である。
大学を出てから、しばらくの間、いわゆるプータロー状態で、学生時代からのバイト先である舞台音響・照明の会社で音響(PA)の仕事のバイトをしながら食いつないでいたのだが、そのころに、まだ高価だったS社のマイコン(当時はまだPCと呼ばれる前だったのだが)を購入、よなよなプログラミングにはまり、BASICでは飽き足らず、PASCAL、そして最後には、当時主流だったザイログ社の8ビットCPU、Z80のアセンブラを使って、モニタプログラムの改造などをはじめ、機械語コードもほとんど暗記してしまった。Z80は、たかだか200個あまりの命令しか持たず、しかも同種の命令はパターンがあって、覚えやすかった。
これが高じて、やがてソフトウエア開発会社に就職することになる。さすがに、プータロー生活に不安を感じ始めたからだが、そこから地獄の日々がはじまる。
(続く)
コメントする