<< 前 ホーム 次 >>

bakaid: 200611081

そうはいってもやっぱりむつかしいですよね。

ペアでやるときの2人の役割。ドライバとナビ。
パイロットとコパイロット。コーダーとテスター。
生徒と教師。ボケとツッコミ。アリとキリギリス。

生徒と教師にしても、どっちが生徒で、どっちが教師
なのか。

ここでは仮にドライバとナビという呼び方をしますけど。
やっぱり、ナビの仕事を1つあげるとしたら、先を見る
ことなんですよね。先を見るっていうのは、高い視点
から見るっていうことですよね。ドライバは目の前の
路面に集中してますから、今走ってる道が正しいルート
なのか判断しにくい。

高い視点っていうと、アーキテクチャとかストーリーとか
から見るってことですよね。デザイン・パターン導入する
とか、大きなリファクタリングのネタとかっていうのが
アーキテクチャの視点。コードが仕様を満たしているか
とか、仕様そのものに抜けがないかっていうのが
ストーリーの視点。

それと、目的地が同じでも、そのルートの選び方で、
早く着けたり、安全に着けたりできる。そういう
選択肢を提示することもナビの仕事。

たとえば、ベタに書かれた関数群があって。そこに
Compositeパターンを導入したいと。この『Compositeを
導入する』っていうのが目的地。で、『じゃあ、どこ
から手をつけいく?』っていうのがルート。既存の
機能を壊さないような着実なルートで進みたい。
あるいは、一気に作り直すルートもある。そういう
選択肢を示す。

あと、余裕があるなら、ドライバと一緒にモニタを
見るだけじゃなくって、ちょっと周りを見てほしい
ですよね。別のペアの様子だとか、部屋全体とか。

アリとキリギリス。これを避けるためには、ナビは
ドライバに自分がいることを伝えないといけませんし、
ドライバはナビが眠らないようにしないといけない (笑)。

W.Cunningham氏もいってますけど、ドライバは何を
やるかを声に出して伝えないといけません。自分では
わかりきっていることでも、ナビにそれが伝わっている
とは限りませんから。というか、声に出さないとまず
伝わりません。

ビックリしたんですけど、黙ってキーを叩く人が多い
んですね。何をしゃべればいいかわかんないのか、
しゃべる習慣がないのか。

そんなもん、キーでタイプすることをそのまんま
しゃべるのでもいいと思うんですけどね。たとえば、
下みたいなコードを書くときに:

  def foo
    p true
  end

『でふふーぴーとぅるーえんど』って口に出すだけでも
違うと思うんですけど。

まぁ、自分なんかは1人でもしゃべりますけど (笑)。

ナビのほうは、先が見えないなら、まず見えないことを
はっきりと伝えないと。で、わからないことがあったら
遠慮なく尋ねる。できる人がドライバやってて安心
してると、案外ドライバも先が見えてなかったってことが
結構あります。第一、質問でもしないと眠くなっちゃう (笑)。
もう眠くなったら、無理矢理バカネタでも何でも話す。
眠るよりナンボかまし。もちろん、typoとかも気づけば
指摘しますけどね。

先が見えないなら見えないなりに、ナビするやり方は
あると思うんですよね。っていうか、ナビの極意は
それなんじゃないかと思うわけです。

だから、単純な『教える・教わる』っていう関係を
超えないと。そこを超えないと、死ぬほど知識を溜め
こまないとナビできないってことになっちゃいます。
知らないなら知らないなりに、ペアを組むことの
効果をあげないと。

本家Permlink

<< 前 ホーム 次 >>


Copyright © 1905 tko at jitu.org

バカが征く on Rails