2023年の締めくくり

私が最初に触れたプログラミング言語は Fortran でした。1987年です。当時 R:BASE というデータベースを Fortran で扱っていました。そのシステムを dBASE というデータベースに移行することになり、互換の dBXL や Quick Silver を使い始めました。Quick Silver は EXEファイルを生成することができて、そこそこ高速に実行できたのですが、メモリ使用量が多くて実行するのに難儀しておりました。そういう状況から脱するために dBASEのデータファイル(.dbf)を扱うことができる市販のC ISAMライブラリを使ってシステムを作り始めたのがC言語との出会いです。当時、開発ターゲットだったコンピュータは NEC PC98シリーズで OS は MS-DOS です。MS-DOS 上で、まともに使えるアプリケーションを開発するには、プログラマは PC98 のハードウェアを熟知している必要がありました。例えば業務アプリで入力画面を作る際、今みたいにビジュアルに入力フィールドを配置したり、あるいはHTMLで記述したりできません。どうやっていたのかというと画面にプログラムから直接描画していたのです。それが最も実用的な速度と品質を保つ唯一の手段でした。そのために、私は画面にウィンドウを描画したり、その中に入力域を配置できるウィンドウライブラリを自前で作ってアプリケーションを作っていました。ディスクやシリアルポート、プリンタポートなどもプログラムから直接ハードウェアを制御していたのです。

その世界が一変したのが、Microsoft Windows の登場です。今もメディア等で活躍されておられる CF Computingの西川和久氏が開発した DDD (Display Dispatch Driver) を使って、IBM PC互換機上に英語版MS Windowsをインストールして日本語環境を動かすことができるようになりました。それまではPC98用にOSが移植されるのを待つ必要があったものが、IBM PC互換機で十分だということになったわけです。PC98はもはや不要。今までPC98だけをターゲットに開発していた私達は路頭に迷う状況になりました。ハードをプログラムから直接操作するなんてことは御法度の世界。今までライブラリに溜め込んでいたノウハウとソースは全て無意味になりました。Windows の世界に乗り遅れまいと、私達はメッセージループを回しながら WM_*** というウィンドウメッセージと格闘する日々に身を投じていったのです。その後、Visual C++ の Microsoft Fundation Class (MFC) ライブラリが提供されると、「メッセージループからはおさらばだ」と 必死に C++ を学び、Visual Basic が出ると、「生産性は VB に勝るものはない」とフォーム画面に入力コントロールを貼り付けてイベント処理を記述しました。そうこうしているうちに、「クラサバなんて化石でしょ」と、Web Application が主流になり、最初はCGIでゴリゴリとレンダリングしていたものが、PerlからPHPへ、MSの世界では ASP.NETへ、Java の世界では Servletが生まれて、tomcat、WebLogic、WebSphere、JBossへ、私達は、たくさんの Web Application を作りました。そうこうしていたら、今度は「時代はSPAですよ」と、Node.js で、React、Vue などでの開発が主流となり、「いまだにオンプレでやってるの?時代はクラウドだよ」と、Azure、AWS、Google Cloud へと主戦場が移り今に至ります。もし1987年当時の私がこの姿を知り得たならば、こんな仕事を続けていなかったかもしれません。

以上、様々な抜け落ちがあるし、色々と端折っているけど、私がPCやシステムにかかわった35年の間に起きたことです。これから30年はどうなっていくのでしょうね。AIのパラダイムシフトは始まったばかりですが、今年はその可能性をいやというほど見せつけられた年だったと思います。30年後、AIがどのようにシステムに組み込まれているのか?人とどのようにかかわっているのか?私はもう生きてませんので「知ったことか!」ではありますが、今嬉々としてシステム開発に勤しんでおられる若者よ。これからの30年は今までの30年どころでないかもしれませんよ。と脅しをきかせて2023年の締めくくりとしたいと思います。

タイトルとURLをコピーしました