パンチカードとプログラミングスキル
吉崎 航
(アスラテック(株)取締役/チーフロボットクリエイター)
パンチカードを読めるエンジニアをカッコいいと思っていた時期がありました.計算機という,変化の激しい研究開発分野と我々はどう向き合うべきか,普段思っていることを書きます.
私はロボットエンジニアで,建機や地雷掘削装置,大きなものでは横浜の“動く実物大ガンダム”など,ジャンルを問わずソフトウェア開発を主導しています.ロボット開発に必要なスキルはこの20年で大きく変わりました.機械語やはんだ付け等,保守性を下げる技術を扱う頻度は減る一方で,小型マイコンにLinuxが入っていることが当たり前になりました.2024年現在,通販で購入した部品とPython言語だけでも,新しいロボットを“作る”ことができます.
そんな話を友人としていたとき,話題に上ったのが“パンチカード”でした.パンチカードは紙シートにたくさんの穴が開いた形状で,フラッシュメモリや磁気テープのご先祖様と言える記憶媒体です.そして,慣れれば目視で中身を理解できるのです.ルールを覚えてさえいれば.
私くらいの世代(30歳代後半)から見ると,パンチカードを読むのは“世界最古のプログラミングスキル”を持ってるのと同様でした.自分が中学生だった25年ほど前,コンピュータを最下層から理解したいと考えて自作パンチカードとトランジスタのみで制御できるロボットを作ったり,当時流行っていたマイコンで機械語も習得したりしましたが,それでも実際にパンチカードを読むことはできませんでした.
なぜかというと,現役の計算機がなかったのです.若い方からすると25年前はずいぶん昔と思われるでしょうが,パンチカードを読める計算機など見たことがありません.みなさんが持つ輝かしい専門スキルも,あと
25年したら,そのスキルで尊敬を集めることは難しくなるかもしれません.昨今の最先端スキルはAI・ロボット分野でしょうか? そのスキルの寿命に関して言えば,寿命は5年,あるいは1年程度かもしれません.
私は小学生向けに講演を引き受けることがあるのですが,「何のプログラミング言語を覚えたらよいですか?」と聞かれるたび,こう答えていました.「みなさんが大人になるころ,Siriに話しかければプログラムできる時代が来るでしょうから,プログラミング言語はなんでもいいです.むしろ日本語で文章を論理的に要約する練習の方がおススメかもしれませんね.私はC#が好きです」と答えていました.昨今のOpenAIなどの躍進を見ていると,なんとなくその判断は正解であったような気もするし,まだまだ実用の域に達していないようにも見えます.
いまだに(パンチカードと同時期に使われていた)COBOL言語も現役な令和,私自身ははんだ付けもベアメタル開発も毎日やっています.しかし,主流のソフトウェア開発方法はこれからも変わっていき,いつかはパンチカードのように手の届かないところに行くのでしょう.その寿命は,人間のそれよりはるかに短いのかもしれません.
(「情報処理」2024年10月号掲載)