読者です 読者をやめる 読者になる 読者になる

チラシ裏日記上等!!新館

オタクWebエンジニアの雑記ブログです。本や漫画や映画の感想なんかを主に書いています。最近は勉強会の感想とかも書いています。

コードレビューの辛さと大切さ

はじめに

いわゆるWeb系の企業に転職して一ヶ月以上たった。まだつたないながらもRubyRailsにも慣れてきて、ちょっとした修正やページの追加ぐらいはできるようになってきた。

そうやって仕事をしていく上で避けて通れないのがコードレビューである。今やだいたいのWeb系企業が取り入れているのではないだろうか?

このコードレビュー、いまだに慣れないのである。

慣れないながらも今までコードレビューを受けてきて、思ったことをつらつらと書いてみる。まぁ有り体に言えばコードレビューに関するポエムである。とりあえず言いたいことは以下である。

  1. コードレビューは辛い(その文化外から来た人は
  2. コードやレビューと人格は切り離して考えるように努めよう
  3. コードレビューは成長への近道

コードレビューは辛い(その文化外から来た人は

コードレビューはそういうことをやってこなかった人にとってはひたすら辛い。

レビューの指摘はとても的を射ていて、コードの品質をよくするとは頭ではわかっている。わかっているけど結構辛い。

自分で作ったモノに対していろいろ批判が入るのは慣れていないと精神的に来るものがある。学生時代に論文とか書いたとき、批判的な意見がくるのは慣れていたと思ったんだが。特にインデントやら変数やクラス名、Ruby的でないなどの批判は結構辛い。

インデントはまぁしょうがない。コーディング規約とかもあるだろうし。でも前もって言ってほしかった。コミュニケーションロスによる辛みを感じる。

変数やクラス名について批判されるのもなんだかセンスがないと言われているようで辛い。自信の語彙力のなさに絶望する。まぁこれもわりと些細な部類である。指摘されると一瞬いらっとするけれど。このいらっとは指摘されたことに対するいらっとなのか、自分へのいらっとなのかうまく判断できない。

地味にきついのがRuby的でないという批判。Ruby的とは?JavaJavaScriptぐらいしか相手にしてこなかったので、Ruby的という言葉の意味がわからなかった。これも郷に入っては郷に従えというやつだから慣れるしかないんだろう。日々指摘を受けRuby的にはたまたRails的にかけるように努力していくしかない。がんばらないとなぁ。

コードやレビューと人格は切り離して考えるように努めよう

コードレビューはコードをよくするモノであって、決して作者の人格を否定しているわけではない。

これも頭ではわかっている。でも心がついていけていない。

自分的にはちゃんと書いているつもりでも、間違いは往々にしてあるモノでそれを指摘されるのはもっともなことである。

でも間違いを指摘されると「こんなこともわからないの?」と言われているような気分になって恥ずかしさといらだちを感じる。

もちろんそんなことはないと言うこともわかっている。自分が過剰に反応しているというのもわかってはいる。でもなんというか心がついていかない。心がついて行かないと言うことは、頭のどこかで自分を馬鹿にしているんじゃないかというメンバーに対する疑いの気持ちがあるのかもしれない。

だからこれは自分の考え方の問題なんだろうと最近は思っている。

間違いを真摯に受け止める大人な心と、メンバーに対する信頼が自分には欠けているのではないだろうか?あるいはコードとの距離の取り方がうまくいっていないのかもしれない。

なんにせよこれも慣れるしかない。コードへの批判はあくまでコードに対してだということをよく自分に言い聞かせていこう。

コードレビューは成長への近道

コードレビューは辛い。だけど辛さの先には成長がある。

レビューされれば間違いに気づく。それは変数やクラスの命名や、Rubyのイディオムだったりする。

人間指摘されなければ気づかない。気づかないでそのまま進めてしまうと後で手戻りが発生して時間を無駄にしてしまうこともある。そういうことを事前に防いでくれるという点ではコードレビューは初学者にとってはかなりありがたい。

コードレビューは辛いけど、一番効率よく学べるいい機会だと思う。

さんざん辛い辛い言ってきたが、自分自身を振り返ってみると指摘されたことで学ぶことがとても多かった。自分だけの力でやろうとするとかなり時間がかかったのではないだろうか?

おわりに

コードレビューは辛い。だけど辛いなりに成長できる。何とかプラスに考えて自分の成長につなげていきたい。

でもやっぱりまだ心はついて行けていないので、しばらくは苦しむことになると思うとちょっと憂鬱なのであった。

まぁ慣れるしかないだろう。