開発中のコミュニケーションには色んなところで想像が入り込む

例えば「会議が多い」という意見に、どう対応しよう?

普通に考えたら「無駄な会議を減らそう!」かな

だけど、できれば僕は「だからどうしたいと思ってるんですか?」というのをその意見をくれた人に確認したい

十中八九「会議を減らしたい」ってことなんだろうとは思いつつ、でも「会議が多いから、」のあとには色んなことが想像できる

  • (順当→)会議を減らしたい
  • それぞれの会議に自分が参加しないといけない理由を知りたい
  • 会議が多くて他のことをやる時間がないから、自分の担当タスクを減らしたい
  • 会議が多いのはいいんだけど、間に休憩が欲しい
  • 「そっかぁ、それは大変だよね。ありがとう」って話を聞いて欲しいだけ
  • もしかしたら「だから、充実してるんです」って可能性もなくはない

さらに「会議を減らしたい」だったとして、その内容も

  • 「無駄な会議が多いから減らしたい」かもしれないし
  • 「開催頻度を減らしてもいい会議があるのではないか?」かもしれないし
  • どれも重要な会議だから、権限を委譲するところから始めたい、かもしれない

もしその対応をするんだったら、できるだけ本人の要望に応えたいと思うので、ここで一歩踏み込んで「こういう想像ができてしまうんですけど、どれですか?」って聞いておきたい

「そんなに深く考えてない」って場合は「じゃあ、その気持ちはどこから来てますか?どうなったら良さそうですか?」って一緒にふかぼりたい

「会議が多い」という意見に対して、想像で「減らしたいってことだと思う」「いや、こういうことなんじゃないか?」とか「減らすなら、こうするべきなんじゃないか?」とか本人不在で話をしている時間は、僕にとっては(なんか無駄な話をしてるなぁ)って時間。本人に確認する以外になくない?って思ってしまう

というようなことを

ふろしきfmの最新話を聴きながら考えた。なんか今回のエピソードは、難しい話題がたくさん出てきた気がする。聴き終わったあと頭が混乱してたw難しくて面白い話題たち

あいだに自分の想像をはさみたくないんよなぁ。いや、はさみたくないってより、想像をはさんだなら、それを自分の想像だと認識しておいて、必要な場合は事実を元にして確認したい。か

開発の現場ではよくある話

こういう話って、開発の現場ではよくある。「自分が相手の言葉から行間を補完してしまう」というもの。「相手がこう言ったんだから、当然こういう意味だろう」で話を進めてしまうもの1

こういうのが要件定義や概要設計あたりで出てくると、とてもめんどくさいことになる。そもそもの方向性が全く変わってくるし、みんなの頑張りにも無駄な作業が発生してしまうから。「あの人がこうしたいって言った!」なのか「あの人はこうしたいってことだと思う!」では全く違うのだ

だから「事実」と「想像」は分けて認識しておきたい。想像しながら話を進めることは悪いことじゃない。だけど、それが「自分の想像」なのか「実際に相手の口から出た言葉」なのかを区別しておきたい。「自分の想像」なんだったら、それを「相手の言葉」として聞きだして確証を得てから進めたい

自分の「なんでこんなこともわからないの?って思われるの嫌だなぁ」っていう気持ちとのたたかいがここにある

「すみません。『会議が多い』というのは具体的にはどういう意図ですか?『会議が多いけどまだまだ増やしていいよ』ってことですか?」「え?あぁ(笑)。いえ、多いから減らしたいってことです」「ありがとうございます!会議の人数をですか?」「いえ、自分が参加しなくても良い会議がありそうなので、そこには不参加にさせてもらいたいなと思っています」「なるほど、ありがとうございます!」

それと同様に

ここまでの話は「自分が相手の言葉から想像で進めてしまう」の話だったんだけど、それが相手側にも同様に発生しうる。自分の言葉から「相手が想像で間を埋めてしまう」というもの

そうすると何が困るかというと相手の「それで問題ないです!」という言葉を元に(相手がそう言ったので!これは自分の想像ではないぞー!)って進めてたら、その相手の認識が違った、っていうケースがあるから

だから、相手ができるだけ想像を挟み込む必要がないように、具体例を入れたり、簡単な絵を描いたり、あとは、明らかに相手の意図と異なることを言って、相手から「そうじゃなくて、こうですよ」という言葉を聞くようにする、みたいにしたりする

特に、自分の発する言葉ができるだけひとつの意味として捉えられるように気をつけようとは思っている

あとは、相手に情報を伝えきれてなくて「あのときはこういう前提だったからAだったけど、そういう前提ならBじゃないとだめだよ」って場合もあるので、前提となる認識合わせも結構意識するかな

それでも認識違いはある

自分の想像を気をつけて減らして、相手にできるだけ誤解を与えないように気をつけてたとして、それでも認識の違いは残る

だから、それでも起こる認識違いのために、言葉だけじゃなくて、できるだけ早い段階でモノを間に置いて話をする

  • プロトタイプを見てもらったり
  • 実際の動くものを見てもらったり(そういう確認が早い段階でできるように開発を進める)

そうすることで、お互いの認識の違いに早い段階で気づくことができて「「なるほどー!そういうことか!」」ってなる

サイン

「と思います」って言われたり、自分が「だと思う」って言ってしまったら「『思う』ってことは、それは想像じゃない?相手の口から『こうしたい』って聞いたわけじゃないんだったら、確認したい!」ってなる

これは、ウェブサービスの開発者として心配性なのと関係してそう。「多分大丈夫」は全然安心できない。「え?それ動かして確認した?」ってなる。それと似てる。「明らかに問題ないでしょ!めんどくさ」って思われてるかもしれないんだけど「ごめん、問題ないとは思うんだけど、ほんとにただの念の為に、動作確認させてくれー!」ってなる

だから、要件や仕様に関して話をする相手としても、プログラマーとしても、僕はとてもめんどくさい人だと思う。ただ、わりと「そういうつもりじゃなかった」は少ないんじゃないかなぁ

「確認したい」は、確認することが好きという意味ではない

以前にもこのブログで書いたことがあるけど、僕は「相手の立場にたってものごとを考えなさい」とか「1を言われたら10を分かりなさい」と言われて育ったので、この「ふつう分かるでしょ?」とか「空気読んでよ」ということに対する質問をするのがあまり得意ではない

え?「会議が多い」って言ったんだから「減らしたい」ってことだってふつう分かるでしょ?どうして確認が必要なの?

って顔をされると(あとでチョコレート買って食べていいから頑張れ自分!)って気持ちになる。それでも、想像で動いてしまって「本人の意図が全く別だった」ということは往々にしてあったので、確認したい、という気持ちが強い(そして「めんどくさいと思われてるかも」ってのは僕の想像であって、事実を元にはしていない)

心配性かつめんどくさがりの僕にとっては、それを確認しない方があとあともっとめんどくさいから(そしてその段階では、エンジニアしかカバーできないことが多い)

とは言いつつ「あー、まためんどくさい質問きたー、どうしてこの人理解が遅いの?って思われてるかもしれない」って思ってしまって、実際はそう思ってないとは思うんだけど、言えないときも結構ある

特に何の結論もないんだけど

だらだらと思ったことを書いたー!明日はドラクエ11してだらだら過ごすー!(夏休み)


  1. そういうのを意図的にか無意識でか利用して、明言や自分の責任を避ける人もいるんだけど、それは今回の話とは別で!