他人のソースコードを読むということ
今日のとある打ち合わせで「チーム内でお互いにソースコードを読んで欲しい」という話があった。 意図としては、
- ソースコードのチェックをしている人が少数できつくなってきているから軽減
- ソースを公開するときに少しでも見せられる状態にしておきたい
- 今後の体制のため(スキルアップ)
というところなんだけど、賛同しない人もいた。
なぜ賛同しないのか?
賛同しない理由としては、
- 勉強会した方がいいんじゃない?
- 同スキル程度の人が見ても効果ないんじゃない?
- 進捗に影響が出るかも?(余裕が無い)
- すぐに効果が出ない
- 効果あるかわからないことをやるのか?
- 意識を上げるにしても上がるかわからない
- 伸びそうな人だけ選んだら?
というようなことだった。 乱暴にまとめると「効果あるかわからないからやめようよ」という感じ。
伸びそうな人だけやらせて伸びればいいんだけど、 人が人を見ている以上、そんな都合よくは行かない。 神様が「おまえなら大丈夫」くらい言ってくれないと。
そもそもの話…
そもそも、効果が出ることは期待していない。 「開発のスキルを向上させる必要があると思っているなら、お互いのソースを読むことを始めてみてはどうか。これでソースコードチェックの負担が減ったり、伸びる人が出てきたりしたらもうけもの。もし、効果がなかったら別の方法を考えよう」 ということでいいと思っている。
この話の前提には「他人のソースコードを読む重要性」というものがある。 じっくり読めば意図や意思を読み取ることまででき、考え方や設計にいい影響が出る可能性がある。 今回はじっくり読む必要はなく、眺める程度で十分だと思っている。 眺める程度でも「この書き方知らない」ということを知ったり、「この書き方だとあれがよくないんだよな」ってことを指摘したりすることが出来る。
少なくとも、今後スキルアップを考えているのであれば効果的だと思っている。 最終的には「本人の意欲次第」というところはあるんだけど。
まとめ
他人のソースを見るということの重要性について、今回はあまり説明しなかった。 時間がないというのもあったが、それなりの量ソースコードを書いていない人には伝わらない感覚だと思っているから。
このまま進むと「納品は間に合ったけど、この程度なの?確かに動いてはいるけどさぁ…こんな人たちに任せておいて大丈夫?」という不安を与えかねない。 けれど、リーダーとか、管理者側からしてみたら「きちんと納品できました!」となっている。 実際のところは「メンバーのスキルアップも出来ていないし、今後も見据えていないんだけど」っていう状態。
とてもナンセンスだなぁ…と思う一方、「SIerにいたらそういう考えしかできないよね、自分ではソースコード書くこともないし、ソースコードを書くことに興味ないんだから」と納得もできる。