造語
造語(Neologism)
- 新しい単語、用法、または表現
- 精神疾患の影響で作られた意味のない言葉
私の文章を多く読んでいると、私が強迫的に造語せずにはいられないタイプだと気づくでしょう。私はいつも新しい言葉やフレーズを思いつこうとしていて、実のところ、このblikiもその習性を前提にして設計されています。
私がこれをする理由は、私が扱おうとしているテーマの多くがソフトウェア設計という難解な分野であり、その語彙が限られていて、しばしば混乱を招くからです。私は、あまり知られていない概念や誤解されやすい概念を見つけたとき、それに名前を付けることで議論をしやすくしようとします。分野特有の専門用語は、排他的であると批判されることがよくあります。しかし、Kathy Sierraが指摘しているように、そのような専門用語はコミュニケーションをより効率的で面白いものにするのです。
造語は、パターンムーブメントとも共通するものです。初期の頃から、パターンコミュニティは自分たちが記述するパターンに最適な名前を付けることに多くのエネルギーを費やしてきました。
パターンに名前を付けることで、私たちの設計語彙はすぐに拡張される。それにより、より高い抽象レベルで設計ができるようになる。パターンの語彙を持つことで、同僚と話し合い、ドキュメントに記述し、さらには自分自身の思考整理にも使えるようになる。設計について考えたり、それを他者に伝えたり、そのトレードオフを議論したりするのが容易になるのだ。良い名前を見つけることは、パターンカタログを作成する上で最も難しい課題のひとつだった。
– The Gang of Four
もちろん、このような語彙を作ることにはデメリットもあります。確かに、それを知っている人にはコミュニケーションを助けますが、知らない人には排他的なものになってしまいます。しかし、私は全体としてはメリットの方が大きいと感じています。
私の考案したパターンのためであれ、このblikiのエントリのためであれ、私は言葉を慎重に選びます。言葉がどのように機能するかを考え、直感的で、既存の用語とまぎらわしくなく、適度な短さがあり、理想的にはキャッチーなものを探します。
完全に新しい用語を作ることは注目を集めやすいですが、実は私はできればそれを避けたいと思っています。既存の言葉が使えるなら、それを使う方が手間がかかりません。そこで、まずは既存の用語の意味を調べ、それが私の扱う概念にフィットするかどうかを検討します。場合によっては用語を変更することもあります。たとえば、私は制御の逆転という用語が依存オブジェクト注入 (Dependency Injection) を説明するのに適しているかどうかに疑問を持っていました。私はこのような決定を下すのがいつも難しいと感じます。既存の用語が適していれば、それを使うのがベストですが、多くの場合、既存の用語は意味が広すぎてぼやけているため、より明確な表現が必要になるのです。
私は造語しすぎだと言われることがあります。それはよく知られたが曖昧な言葉よりも、馴染みがないが正確な言葉を好む私の性格を反映しているのかもしれません。
もちろん、造語を広めることには限界があります。私や他のパターンライターたちが語彙を標準化できるわけではありません。私の考えた用語が広まるとは限りません。しかし、それでも私はやめません。一貫した語彙がなければ、私は明確に文章を書くことができないからです。たとえ、その語彙が私の中だけで一貫しているものだったとしても。
これが金銭的な目的で行われているとたまに非難されるのが不思議です。私は造語で金銭的な利益を得ている人を見たことがありません。もしそんなことができるなら、POJOを生み出したRebeccaやJoshは、南の島でのんびり暮らしているでしょうし、Ajaxを広めたJesse James Garrettは島を買っているはずです。実際のところ、大半の人はPOJOという用語の生みの親が誰かすら知らないでしょう。それでも私は気にしません。
造語は、私がソフトウェアライターになる前からやっていたことです。ただし、昔の活動は今とは異なります。多くの人が実践していることですが、ドメインモデリングを通じて、ユビキタス言語を作り上げることで、開発者と顧客のコミュニケーションを円滑にするという手法があります。これは対象となる人が限られた活動であり、ソフトウェア開発のプロジェクトごとに行われるものです。実際、多くのプロジェクトがこれを行っており、たとえ明示的に共通言語を作らなくても、コードの中でドメインを表現するための語彙は確立されています。
違いはあるものの、どちらの活動にも共通する目的があります。ある分野について、簡潔かつ正確に語れるようにすることです。どちらのケースでも、私は造語をすることで、その分野の理解を助けるツールを作り出しているのです。そして、それが私にとって役に立つなら、他の人にとっても役立つかもしれないと思い公開しています。