So-net無料ブログ作成

他人のソースは読まない、直さないという流派 [プログラミング]

僕が職業プログラマーとして最初の数年間にした仕事は、おもにアメリカから買ってきた CAD の日本語化、機能拡張、(UNIX で動いていたものの)PC へのポーティングだった。僕は、その権利を持っている会社から外注された会社のプログラマーだった。

もうすでに、日本語化されて販売されているものにソースの追加・修正をするのだが、なにしろ資料といえばソースコードしかないし、オリジナルのアメリカ人の書いたソースから客先のエンジニアの入れた日本語化のコードから自社のエンジニアの書いた機能拡張や PC 版のためのソースやらあって、そのなかに既存の処理を壊さず自分のいれたソースもいつか読まれる、修正されるということを想定して処理をいれないといけなかった。
ほとんどがもともとのソースを書いた人に聞くことができないので、おのずと自分でソースを読んで判断するようになったし、あとあと修正可能かというのは、その頃の自分の技量の範囲では気を使ったつもりだ。

今のご時世、スクラッチからプログラムを書くというのは職業プログラマーの世界ではほとんどないので、既存のプログラムを読むことはプログラムを書くために必須だし、他人の書いたコードに修正を入れるのは当然のことだと思っていた。

ところが、世の中には職業プログラマーでありながら他人のソースを直したことがあまりない人がいるらしい(そのため、他人のソースを読む必要もない)。・・・というか、そういう流派の中で仕事をしてきた人がいるらしい。本当か?
「そこ、nakagamiさんが書いたんで(僕が書いたんじゃないんで)よくわかりません」
・・・って、ソースに全部書いてあるから。
今時はフレームワーク(例えば Django)のソースだって全部読めますから。

同様のことだと思うけど、自分の書いたソースが知らない間に書き換えられてるとびっくりするという流派もあって、ぼくにとっては意外な出来事。うーん、書き換えちゃだめだった?動くようにしたんだけど。
思うに、分業体制がしっかりしていて仕様書の書かれた通りのロジックを書いておしまい、という仕事のやり方をしてたんだと思う。プログラムはどんどん積み上がり、古いソースは捨てられない。で、仕様書の通りにロジック書いて動かなければ仕様がおかしいと。

「仕様書はないのでソースを読んで直す」というやり方に適応してきてる人もいれば、なかなか昔の習慣が抜けずに、「ソースを読むのは大変なので、似たようなソースを積み上げて行く」という人もいる気がする今日この頃。習慣というか、そういう流派の経歴が長いひとはソースを読むのが大変なだけなのかもしれない。(そして、読むのに比べれば書くのは苦にならないのでどんどん書いちゃう)

まぁ、そんなような体験をすると「これは、ひょっとしてジェネレーションギャップ?」と思ってしまう今日この頃。
nice!(1)  コメント(2)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 1

コメント 2

t2y

世の中には「自分の書いたコードのメンテナンスを一切しない」という人もいたりします。練られていない設計、コピペの横行、トライ&エラーでテストは通したぜと誰にも(本人すら)理解できないロジック、、、
本当に困っています(T T)
by t2y (2010-06-15 17:32) 

nakagami

そうですか「自分のソースも読まない、直さないという流派」が存在するんですね。
実際、「この機能は○○さんが書いたけど、なんでこうなってるのか○○さんに聞いてもわからないだろうなー」ということは以前からよくあります。
書いた本人もわからないのに動いているという恐怖。

そういえば、この前
「実は、恥ずかしながら以前の職場では、使えそうな Java のソースをネットで検索してコピペしてました」
という話をカミングアウトしてくれる人がいて
「えー、コピペで動くの?それはそれで凄いなー」
と思いました。

>トライ&エラーでテストは通したぜ
凄い。そんなコードでもテストは存在するんですね。
(きっと、テストパターン以外動かないんだろうなー)
by nakagami (2010-06-16 07:17) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0