見出し画像

CTO 松田進也 自己紹介 Vol.2

自己紹介2回目、大学・社会人になったよ編です。

FORTRAN

F1やりたくて機械工学に進んだものの、ホンダが去年のように撤退してしまいました(最終戦アブダビのラスト1周は熱かったですねえ)。さてどうするかということで、機械工学には四力と呼ばれる機械力学、熱力学、材料力学、流体力学があるんですが、その中でもコンピュータでいろいろできそうかなということで、数値流体力学の研究室で大学院に進学することにしました。

研究室のサーバールームには、当時スパコンと言えばのCRAY、計算結果を可視化するためのSGI Indigo、ワークステーションとしてSunとかが並んでいたものの、コンピュータやネットワークの整備はあまり進んでおらず、NISとNFSでどのマシンからログインしてもいいですよってするだけでみんな大喜び。研究室のPCはMacのQuadraや、出たばっかのWindows95を載せたDOS/V機とかで、ネットワークをAppleTalkNetBEUIからTCP/IPに切り替えたりしてたような気がします。

数値流体力学は流体をコンピュータ上でシミュレーションするわけですが、計算メッシュが多くなるとメモリが足りなくなるので、複数台のコンピュータで領域を分割して計算するというのを修論にしました。以前の研究で作られたFORTRANの計算プログラムを元に、PVM(Parallel Virtual Machine)というライブラリを使ってデータの交換とプロセスの制御を行うCのプログラムを追加して、複数マシンで計算を実行し、その様子をIndigoで可視化します。ちなみに修論を見返したら「計算プロセスはそれぞれメモリ40MB」と書いてあって、涙が止まりません。そういえば初代プレステが発売されたとき、助教授が「これうちのスパコンより計算能力上なんだよな…」と悲しげに話していたような。

FORTRANはこのとき初めて触れたんですが、限られたメモリで計算するために、どんな大きさの配列が必要になるのかを予め設計して、サイズが大きいやつをプログラム冒頭で確保して、小さな配列はその中で使い回す、といったテクニックが必要でした。とは言え計算部分は引き継ぎなので手を加えず、PVMの組み込みとデータの受け渡し(エンディアンではまった記憶があるようなないような)が主で、ネットワークについて経験できた環境でした。

Perl

やっとWebですよ。機械工学とは全く関係ない外資系のコンサルティング会社に就職しまして、システム開発を担当することになりました。ほとんどの同期が基幹システムに関わる中、入社のきっかけになった方のプロジェクトにアサインされた私の最初の仕事はWebのグループウェア開発、PerlでCGIでした。

当時DBと言えばOracleやSybaseだったので、お金的にイントラネットのグループウェアには使えず、気合いでテキストファイルです。Perlで十分な処理ができましたし、正規表現からのオートマトンの勉強なんかもしてました。私は情報学科出身じゃないのでコンピュータに関することはほぼ独学で、RDBMSに触れたのも、オブジェクト指向をちゃんと勉強したのも社会人になってから(GoF本が1995年で、就職が1996年)が、それまでの経験があったので何とかなってます。

Webのシステムも当時は目新しく、入力フォームの一部を修正するのにどれくらいかかるか上司に聞かれて、5分くらいですかね?と答えたら怒られた記憶があります(コンサルは時間いくらでやってますからねえ)。あとHTML直してたときに、君にはこれがあの画面に見えてるのか?と言われたこともありました。当時も今でもそんなことはないんですけども…。

自己紹介は今回で終わりにするつもりでしたが長くなってしまったので次回に続けます。ガラケー時代に突入!

この記事が気に入ったらサポートをしてみませんか?