bakaid: 20090916
今日の東スポ、13面を開いてくれ。 そこに『のりピー親衛隊』という見出しでデカデカと 写真が出てるだろ? そのキコ隊長の顔をよ〜っく 見てくれ。 え? カ、カクタニしゃん? -- だから、デバッグっていうのは、修正する量が問題じゃ ないんだよね。いや、そりゃ、量が多けりゃ手間がかかる わけだから、まったく問題ないわけじゃないけど。 でも、たとえば、NULLポインタで落ちる場所があったと して。そこで単純にNULLチェックして済ますのと、その 落ちる場所を通るパスをぜんぶ調べて、それでやっぱり NULLチェックが有効なんだと確信を持って修正するのとじゃ 雲泥の差があるわけ。 修正する量が多かろうが少なかろうが、直ったと確信を 持てること、誰かから『こんなときはどうなの?』って いうツッコミに『大丈夫です』っていえることが大切な わけ。 -- だから、自分らは継続的な統合、進化的な設計をやってる わけで。それで一番恐いのは作り壊し、直し壊しなわけね。 新しい機能を追加したら古い機能を壊しちゃったとか。 ある機能のバグを潰したら、別の機能がバグっちゃったとか。 だから、既存のコードをよく理解しないとダメなのね。 デバッガで動きを追うのも『コードを読む』うちに入ると 自分は思ってるけど。でも、だからっていって、grepが いらなくなるってことはないわけ。 ある箇所がバグってたら、別の似たような箇所もバグっ てる可能性が高い。そういうのはデバッガじゃ追えない んだよね。パスが違うんだから当たり前だよね。 小手先のデバッグっていうのはモグラ叩きみたいに なっちゃうのね。表面的な事象ばかりじゃなくって、 そいつらの根っこに何があるのかっていうのを見ようと しないと。そういうのを見つけることが『システムを 理解する』ということのひとつで、そういう根っこの 問題を解決するには『設計』が必要になるわけね。 -- 自分は当たり前のことしか書いてないんだけど。でも、 そういう当たり前を言葉にして話せるっていうのは とっても大切なことなんだよ。 自分の周りは若いヤツばっかりっていうのもあるんだけど。 こういう話をあんまりしないわけね。前は、恥ずかしい とか照れとかのせいかと思ってたけど。でも、違うんだよね。 言葉を知らないんだよね。 言葉を知らないっていうことは、何に価値があるかって いうことを知らないっていうことなんだよ。何に価値が あるか知らないっていうことは、どうすれば開発っていう 仕事がうまくいくかっていうことを知らないっていう ことなんだよ。 言葉を知らないっていうことは、仕事について考えてない っていうことでもある。それはプロとして非常に恥ずかしい ことなんだよ。 -- 安いものが安いままであるのには理由がある。 人はイヤでも学習する。つまり、人は時間が経てば自然と 価値が上がる。まぁ、ぶっちゃけ人件費が高くなる。 それをイヤでも抑えるにはどうするか。価値が上がった 人間を切って、価値の低い人間、たとえば新人を連れて くればいい。 まぁ、これはオフショアに限ったことでもないだろうけど。 でも、安いところで安定してるんなら、品質も低いところで 安定すると思うほうがフツーだよな。
Copyright © 1905 tko at jitu.org