会話はコーディングに似ているのでは、という話。
会話というのは、自分が伝えたいことを言葉によって伝える行為、だとする(ジェスチャーとかは置いておいて)。 で、自分の発した言葉は、相手の意識(脳?)で解釈される。
この、「伝えたいことを言葉にする」→「相手の意識で解釈される」というステップは、「コードを書く」→「コンパイルする」に通じるものがあるように思う。
会話においては、自分が言う言葉そのものが伝わるわけではないので、その言葉によって相手の意識の中に、自分の伝えたいことを再構築してもらう 必要がある。
しかし言葉というのは、人によって受け止め方も様々なので、本当に自分が伝えたいことを伝えるためには、相手がどう受け止めるかを意識して、どの言葉が適切なのかを選ばなければいけない。
これって、自分のイメージしたプログラムを作るために、コンパイラに合わせてコードを書く、という行為にとても似ている気がするわけである。
さらに言えば、会話に長けた人というのは、無駄に長くなったりせず、適切な言葉を使って簡潔に、分かりやすく話す。これは、レベルの高いプログラマが、シンプルで分かりやすいコードを書くのと同じに思う。
また、言葉を多くしっていれば、難しい概念でも簡単に説明できるが、仮にそういった言葉を知らなくても、基礎的な言葉を組み合わせればどうにか説明できる。 これもまた、ライブラリを知っている方が手早くコードを組めるが、それを知らなくとも基礎的な関数とかだけでも同じようなプログラムを組めるのに似ている。
しかも、自分しか知らない言葉では相手に伝わらないのと同様、そのライブラリが使える環境でなければ、コードはコンパイルできない。
と、ここまで書いてみて気が付いたが、コーディングが言葉を使って行う行為であり、かつ人によって設計されたものである以上、その仕組みの根本が会話に通じるのは、ものすごく当たり前だな。
でもまぁ、構造主義的なアプローチで会話とコーディングを検証すると、人とCPUの根源的な違いが分かってくるかも、という発想が湧いたので、書いてみたことにそれなりのメリットはあったとしよう。読んだ人には、何のメリットも無い…のかな?

Entries (RSS)