意味の希薄化
ソフトウェア開発で目撃したものを説明するために、私は造語を作る習慣があります。 便利な用語が少ないので、ソフトウェア開発の分野の書き手はこのようなことをよくやります。 造語を作るときの問題は、意味の希薄化により本来の意味が失われ、別の意味が追加されてしまうことです。
意味の希薄化が発生するのは、個人やグループが作った用語があり、適切に定義されていたにもかかわらず、歪められた定義がコミュニティに広まったときです。 これにより、用語の定義が完全に失われる危険性があります。 また、それに伴い、用語の利便性も失われてしまうでしょう。
私が本記事を書こうと思ったのは、「アジャイル」と「Web 2.0」に意味の希薄化が発生しているからです。 いずれも数年前に作られた用語であり、しっかりとした定義があります(アジャイルにはアジャイルマニフェストがあり、署名者たちが執筆した書籍や記事も多数あります。Web 2.0にはTim O’Reillyが定義を記したすばらしい記事があります)。 しかし、どちらの用語も現場では意味が改変されています。 私は「アジャイル手法では計画を立てることはない」や「Web 2.0とはAJAXを使用することである」と誤解している人たちに出会ったことがあります(個人的なケースとしてはリファクタリングの誤用もありますが、それは脇に置いておきましょう)。
意味の希薄化は伝言ゲームの一種です。 用語の発案者ではない人たちが、元の定義に注意を払うことなく用語について話しているのです。 その話を聞いた人たちが、さらに独自の歪みを追加します。 このような伝言ゲームを何度か繰り返していくと、発案者まで戻らない限り、用語の重要な意味が失われます。 皮肉なことに、この影響を最も受けやすいのが人気のある用語です。 人気のない用語の伝言ゲームに加わる人はいないので、これは必然とも言えます。
意味の希薄化は、アイデアのハイプサイクルの「ピーク」と一致します。 アイデアが魅力的になると、多くの人たちが……何と言うか……その魅力にひかれます。 そして、その用語について話したり、教えたりします。 こうした人たちが原典に戻ることはありません。伝言ゲームの始まりです。 また、人気のあるアイデアは誤解を生みやすいメディア(文書)を通じて広がります。 多くの人たちが発案者から直接学べるわけではないのです。
人気と関連する指標は「望ましさ」です。 響きの良い単語は意味の希薄化の影響を受けやすいのです。 「アジャイル」はそうなりたいと思えますが、アジャイルの反対語はそうではありません。 「Web 1.0」のままでいたい人などいるでしょうか? Kent Beckはこうした効果に気づき、意図的に「エクストリームプログラミング」という名前を選びました。 「エクストリーム」は本質的に望ましいものではなく、非難するときに使われる言葉だからです。 望ましくない用語を使用すると、意味の希薄化の可能性は下がるでしょうが、問題を完全に回避できるわけではありません。 中立的な用語である「オブジェクト指向」にも意味の希薄化が発生したわけですから。
意味の希薄化は、具体的な技術よりも幅広い概念のほうが発生しやすいです。 たとえば、今はRuby on Railsがブームですが、具体的なツールなので意味が歪められることは少ないでしょう。 エクストリームプログラミングの具体的なプラクティスも、アジャイルの価値や原則などと比べると、こうした問題は軽減されるでしょう。
意味の希薄化は、これらのアイデア(アジャイルとWeb 2.0)が有用だと思っている人たちにとっては見るのが辛いプロセスです。 現時点では、どちらの用語にも絶望の兆しが見えています。 アジャイルの世界にいる一部の人たちは「アジャイル」を捨てようとしています。
しかし、私は楽観的です。似たような状況を見たことがあるからです。 以前、ほぼすべてのソフトウェアツールや手法がオブジェクト指向だった時代がありました。 数年後の現在では、OOの本質的な意味が理解されています。 同じことはパターンでも起こりました。 したがって、用語の意味は回復しており、用語が普及しても意味が失われるわけではありません。 このプロセスは以前にも経験したことがあり、予想もできているので、それほど心配はしていません。 これはアイデアが普及する際には避けられないことですし、問題はあるものの、誰にも知られないよりもブームになるほうが好ましいと思います。 最後に気休めの考えを伝えておくと、同じく避けられない反論があった場合には、本来の意味に立ち戻ればいいのです。 また、実際に起きたことではありますが、意味が完全に失われた用語をすぐには思いつかないので、私は安心しています(SOAは当てはまりません。合意された意味が最初から存在しなかったからです)。
最終的な結果が何であれ、私たちは意味の希薄化が起こるたびに対処しなければなりません。 選択肢のひとつは放棄です。希薄化した用語を捨て、新しい用語を選択します。 私はこの選択肢は好きではありません。新しい用語は混乱を招くだけであり、たとえうまくいったとしても、新しい用語が同じプロセスを繰り返すことになります。 したがって、本当の意味を理解している人たちに向けて、現在の用語を何度も説明し続けることのほうが私の好みです。
さらに複雑なのは、これらの用語が変化することです。 アジャイルマニフェストの署名者17人は、今なら別の文書を残すことでしょう (彼らは現在のムーブメントを語るのに最適なグループではありません)。 繰り返しになりますが、このことを指摘するのは発案者の責任です。 そのためには、アイデアの進化について語ったり、進化に積極的に関与している新しい人たちに注意を向けたりする必要があります(この点に関して言えば、発案者の17人が「船を出航」させ、自由な展開を許したことを嬉しく思います)。 明確な定義を維持することと教義主義の間には難しいバランスがあることを忘れないでください。
いずれも大変な作業ですが、優れた用語は守る価値があります。必要な武器は言葉だけなのですから。
意味の反転
意味の希薄化の一般的な形態は、当初の意味とは反対の意味になってしまうというものです。 たとえば、「DevOps」が隔離された運用チームの名前になったり、「MVP」が1,200万ドルかかった最初のリリースに使用されたりすることです。 Holly Cumminsはこうした概念を説明するために「意味の反転」という用語を作りました。