あなたの言葉はなぜ他人の心に響かないのか?オープンソースソフトウェアの育て方(1/7 ページ)

プログラマーとしては二流でもコミュニケーションスキルが優れている人は、結果としてプロジェクトをよい方向に引っ張ることになります。ここでは、オープンソースの世界で暮らす上で、あなた自身がうまくコミュニケーションを行う方法とプロジェクト内での円滑なコミュニケーションを維持する方法を「すべて」説明します。

» 2009年09月29日 08時00分 公開
[Karl Fogel, ]

 明りょうに、分かりやすく書くという技術は、オープンソース界で暮らす上で最も重要なものの1つといえるでしょう。ある意味ではプログラミング技術よりも重要かもしれません。プログラミングの技術は優れているがコミュニケーションスキルに欠ける人は、一度に1つずつのことしかこなせません。また、周りの人の気を引くことにも苦労するかもしれません。逆に、プログラマーとしては二流だがコミュニケーションスキルが優れている人は、周りの人をうまく巻き込んでさまざまな作業をこなせます。そして、結果としてプロジェクトをよい方向に引っ張っていってくれるのです。

 コードを書く能力のある人が、必ずしも他人とうまくやっていくコミュニケーション能力があるとは限りません。よいプログラムを書く能力と技術的な問題をうまく説明する能力とにはそれなりの相関関係があるかもしれませんが、「技術的な問題を説明する」ことはプロジェクト内でのコミュニケーションにおけるほんの一部に過ぎません。それよりもずっと大事なことは、次の3つ。まず聞き手の気持ちになって考えること自分の投稿やコメントを客観的に見るようにすること、そして他人にも自分自身の投稿やコメントを客観的に見させるようにすることです。

 ……といったことを口で言うのは簡単ですが、実際にやってみるとこれは非常に難しいことです。というのも、フリーソフトウェアの開発にはさまざまな人たちが参加しており、彼らのコミュニケーション方法もそれぞれ異なるからです。何か意見を述べたいときはどうすればいいのでしょう? メーリングリストへ投稿する? バグ追跡システムに登録する? それともコードのコメントとして記述する? 掲示板での質問に回答するとき、相手がどれくらいの知識を持っていると想定したらいいのでしょう? 当然、ここでいう「相手」とは、質問の当事者だけでなく、後であなたの回答を読むであろう第三者も含まれます。開発者と利用者の関係を良好な状態に保つにはどうしたらいいのでしょう? 利用者からの機能追加要求や勘違いのバグ報告、そのほかの雑談などに開発者たちが悩まされないようにするには? コミュニケーションの手段が尽きたら相手にどう伝えたらいいでしょうか? また、どう対処したらいいのでしょうか?

 これらの問題に対する解決策は、通常は一時的なものとなります。というのも、どんな解決策でも、プロジェクトの規模が大きくなったりプロジェクトの体制が変わったりすれば意味がなくなるからです。また、これらの解決策はたいていその場しのぎです。刻々と変化する状況に合わせて即興で対応しなければならないからです。すべてのメンバーは、コミュニケーション不全に陥っていないかどうかを常に気にかけ、それに対応する必要があります。このような行動を支援することも、オープンソースプロジェクトの運営の大事な一部です。以下のセクションでは、あなた自身がうまくコミュニケーションを行う方法を扱います。また、プロジェクト内での円滑なコミュニケーションを維持する方法についても説明します*1

[1] これらの問題については、幾つか興味深い研究があります。例えばGutwin、PennerおよびSchneiderによるGroup Awareness in Distributed Software Developmentもその1つです。この論文はオンラインで公開されていましたが、一時しばらく見えなくなっていました。その後、改めてGroup Awareness in Distributed Software Developmentで公開されました。もしこのURLで見つからない場合は、また別の場所に移動した可能性があります。サーチエンジンを使って探してみてください。


       1|2|3|4|5|6|7 次のページへ

content on this article is licensed under a Creative Commons License.

注目のテーマ