Some Days You Get the Bear

IT系エンジニアの、日々の気づきや考えたこと。

コピペやめようよ ~ちゃんとしたコードを書く文化とは~

「ちゃんと」という言葉をよく使う。
今回も、「美しく」とか「きれいな」とか使ってみようかと思ったけども
やっぱりしっくり来なかったので。
 
さて。
ちゃんとしたコード書きたいと思うし、ちゃんとしたコードで書いてほしいと思う。
でも、もしかしたら、「ちゃんとしたコードってなんなの?」って思っているかもしれない、
そう思った。もしかして、知らないんじゃないかな?って。
見たことないまま、ここまで来たんじゃないかな?って。
 
例えば。
プログラムがまだ小さなうち。
最初に書いた人は「最初だから」ってふつうに書くよね。
で、同じような処理を作ることになって、2つめだから
「2つめくらいは真似してコピペでいいか」って書くわな。
3つめ4つめくらいまでは許そうか。
でもそれ以上になると、
「いくら書きやすいからって、もうコピペはやめようよ」って言いたいじゃん。思いたいじゃん。
美しくないじゃん。共通化したいじゃん。テーブルとかにしたいじゃん*1
たぶんそのほうが、あとあと増やしていくのもラクになるし、きっとバグりにくくなるし。

でもたぶん誰もそうしない中にいると
「そうするのがいいこと」っていう知識が、審美眼が
身に付かないまま過ごしてしまうのではないかと、思ったのだ。
いや、そのくらいのことは自分で勉強して身に付けろよ、
っていうのもあるけども、
ふつうの会社のふつうの人たち(そしてそれは自分たちの後輩であり部下なんだから)には
教えて身に付けてもらわなければならないことなのである。

いや、もしかするとそう思っているのかもしれない。
でも、下っ端なので言い出せず、同じように書くのが無難で、右へならえ、で
そうしているだけなのかもしれない。

でも、そういうのって、そのチームのカルチャーなんだよね、きっと。
プログラムが大きくなって「もうめんどうだし、動いてしまっているし、このまま行っちゃお」
ってほっとけるかどうか、っていうのが。
几帳面とかそういうことじゃなくって。
これ、仕事だから。ちゃんとやらないといけないんだから。ソフトの品質ってこういうところのことでしょ。
 
だから、わかっているひとがやらないといけない。
「やれ」って言ったってやらないと思う。誰もしないんだから。
誰かがお手本を示さないといけない。
でなければいつまでもそのチームはそのまんま変わらないと思う。
 
たったこれだけのことだけど、たったこれだけが決定的なことになると思うよ。

*1:発想がC言語の人なので...