ソースを読む力

私が就職したころは、2000年を間近にして、どの企業でも情報システムの2000年対応におおわらわになっている時期でした。私も新人のころ、およそ一年間に渡ってCOBOLで作成されたプログラムを2000年問題に対応するために修正する業務を担当していました。毎日毎日、ソースコードを読んでは日付項目の桁を増やし、機能が変わってしまっていないかテストする、という作業の繰り返しでした。
同期入社の他の人がカッコよさそうなツールを使ってきれいな画面を作ったり、新しく作るシステムの設計をしたりしているのを横目で見ながら、「なんで俺はこんなことばっかり...」などと思ったりもしました。
しかし今になってみると、このときにソースコードやJCL(汎用機でのシェルスクリプトのようなもの、と言っていいんですかね)を読みまくったことは、とてもいい経験だったと思います。
特に、1960年代に作成されたCOBOLプログラムは、何しろIF文にELSEの記述が一切ない(おそらく言語仕様になかったものと思われる)こともあって解析に大変苦労しましたが、わかってくると大変に美しい、まさに職人業のもので感動したものです。
また、こうした作業によって身につくソースを読む力というのは馬鹿になりません。今でも、システムテストフェーズなどで他人の作ったソースを追いかけ、バグを発見するスピードはかなり速い部類だと自負しています。
会社で、後輩が同じような「項目の桁数を増やす」仕事をつまらなそうにしていたので、このときの話をしてあげましたが、さてどれくらいヒットしたでしょうか...