5W1H教

仕事ネタ。
いわゆるひとつのコミットログというのを書かない子や使えない事を書く子が未だに多い。ので困る。困るからいじめたら、使えないくせに「私のログが使えない理由を説明してください」というので説明してやった。ああしてやったさ。
ログやコメントは基本的に、そこにある事物(コミットなりコードなり)の成り立ちについて他人や将来の自分(成り立ちを覚えてないんだから、実質他人と同じ)へ確実に伝えるために書いておくものだ。事物の理解さえできればいいので、事物の背景についてまでグダグダ説明せず、簡潔にするとよろしい。さて簡潔とはどれくらいだ。
ここで5W1Hを投入。どんなアホチンでもリーマンやってりゃあ、なにかしら「仕事のポイントは5W1Hを満たすように伝えると、簡潔に間違いなく伝わります」と聞いてるから、これくらい確実に常識扱いできるプラクテスはない。さてsvnなりgitへのコミットで考えると、

  1. When
  2. Where
  3. Who
  4. What
  5. How
  6. Why

のうち、最初の4つ(場合によっては5つ)はsvnなりgitが自動で完璧に記録してくれる。つまり書くだけムダだ。必要なのは最後の2つ(1つ)だけだ。「場合による」のは変更の複雑さに依る(差分を見ればすぐわかるなら省略していい)。コメントを書くときに「Whyを書きなさい」とプラグマ本(アンブラーも言ってたっけ?)が言うのはこれが理由だ(別に本人に確認しちゃいねえけど)。逆に言えば余計な4つだけ書いてあって、最後のwhyが書いてないのは「使えない」のだ。コメントの例。

modifyed by akiko 2007-10-02

綴りすら間違ってるうえに難しいのだが(モデハイは他動詞なのでなんらかのカタチで目的語を付けていただけると助かります)、私はとても大人だから、「ニホンジンは『ニホンジンは英語が苦手なんです』と言えばなんでも許されると思っている」という事を理解しているので無視してやるとして、無視すると

by akiko 2007-10-02

なんですか、この、中学生が授業中にこっそりやりとりしているメールの署名みたいのは。ボクの時代は携帯ないから便箋でね。なんか変わった折り方しててね。セーラー服とか。ピンクのマーカーで「揚げパン食べ過ぎてちょ〜眠い」とか書いてありそうな。なんにしろ、こんなアキコちゃんは高尾山頂で手前の名前を記念に刻むガキと同程度のノリでプログラミングしていることは明らかだ。仕事なのに。みんな徹夜してるのに。
さて、その山頂でピースしてるバイ・アキコはともかく、5W1Hはログやコメントの他にもうひとつ、テストケースの作成にも使える。リーマン臭いと馬鹿にしたもんじゃない。要求でもヒンシツトクセーでもなんでも、5W1Hで書けるところまで具体的に落ちない事にはテストが実施できないから、そう解釈できない箇所を狙って詰めていくのに使える。


...と、あるプログラマが今回テスターとして働いているゲンヴァに入った時に教えたんだけんども、

ごだぶりゅーいちえいち、さいこうですね!!

とばかりに布教を始めた。いや、盲信はヤバいからそれ。そうやって盲信するボンクラ・リーマンがわんさか居るから、こんなもんゴミな扱いを受けるんだから。このスキームで伝わるのは一番単純な「なにをした」だけで、「なにをせざるを得なかった」とか「なにをしたいな」は伝わらない。カネ貰って期日までにやる仕事で一番伝えておきたいのは大抵「せざるを得ない」ことなんだから、他の手段が要るんだってば。絶対に。
と言っても、ドラクエで言うイオナズンウィザードリィで言うマハマン(古いか)並みに振り回す。さーて、どう止めたもんだかなあ。