메타포(metaphor): 사전적으로 은유, 비유를 뜻하는 말.
우리가 알지 못하는 어떠한 대상이나 현상을 이해하는데 있어서, 우리가 이미 알고 있는 대상이나 현상에 대한 원리를 동일하게 적용하여 관찰하고 이해하려 하는 방법이나 원리.
예를 들어 아이콘등이 가장 대표적인 메타포를 잘 활용한 예이다. 사용자가 그것을 보고 어떤 기능을 하는지를 알아낼 수 있다면 메타포를 잘 이용한 아이콘이고, 그렇지 못하다면 적절한 메타포를 찾지 못한 잘못된 메타포를 가진 아이콘이라고 할 수 있다. 메타포를 잘 활용한 아이콘은 어포던스가 크다고 말한다.
과거에는 메타포가 문학에서 주로 사용되고 예술의 범주에 속한다고 보았지만, 근래에 들어서 인간의 인지 작용에서 메타포가 매우 중요한 역할을 한다는 것이 밝혀지면서 그 위상이 높아졌다.
{{|
We often think, naively, that missing data are the primary impediments to intellectual progress - just find the right facts and all problems will dissipate. But barriers are often deeper and more abstract in thought. We must have access to the right metaphor, not only the requisite information. Revolutionary thinkers are not, primarily, gathers of facts, but weavers of new intellectual structures. (Gould, 1985. Essay 9)
|}}
We often think, naively, that missing data are the primary impediments to intellectual progress - just find the right facts and all problems will dissipate. But barriers are often deeper and more abstract in thought. We must have access to the right metaphor, not only the requisite information. Revolutionary thinkers are not, primarily, gathers of facts, but weavers of new intellectual structures. (Gould, 1985. Essay 9)
|}}
우리는 종종 단순하게 결손 데이타(missing data)가 지적인 진보의 원초적인 방해물이라고 생각한다. - 제대로 된 사실을 찾기만 하면 모든 문제점이 사라질 것이라고. 하지만 방해물은 종종 더 깊고 더 관념적인 사고에 있다. 필요한 정보 뿐만 아니라 적절한 메타포 (right metaphor)를 가져야 한다. 혁신적인 사고자는 근본적으로, 사실을 모으는 사람들이 아니라 새로운 지적 구조를 짜내는 사람들이다.
메타포는 시대성을 가진다.
그리스의 갈렌 (Galen 120-200 A.D)은 체액 병리학을 내세웠으며, 다혈질, 담즙질, 흑담즙질, 점액질의 '4대 기질설'을 주장하였다. 이것은 당시의 가장 주목할 만한 기술 진보의 성과가 수도, 하수도 시스템의 발전인 것과 무관하지 않다. 이 설은 약 1,500년간 도전받지 않았다.
영국의 의학자이자 생리학자였던 하비(William Harvey, 1578-1657)는 "심장과 혈액의 운동에 관한 해부학적 논문"이란 소책자를 통하여, 피가 심장으로부터 나와 몸의 모든 기관을(동맥과 정맥으로) 지나 다시 심장으로 돌아감을 증명하였다. 펌프는 17세기의 중요한 기술의 발전이었으며, 하비는 이에 영향을 받았을 수도 있다.
프로이드의 신경증(neurosis) 모델은 증기기관 메타포이다. 리비도를 억압하면 나중에 이것이 점점 힘이 세져서 폭발하게 되는데 그것이 신경증이다. 당시의 주요한 기술 발전 중의 하나가 증기기관이었다.
최근 인지심리학(CognitivePsychology)에서 인간의 마음과 정신현상에 대해 주로 사용하는 메타포는 컴퓨터 메타포이다.
컴퓨터는 인간의 인지작용을 점점더 닮아가는데 인간의 마음은 컴퓨터를 메타포로 설명한다는게 재미있군요.
KentBeck 같은 달인 프로그래머는 프로그래밍을 할 때 항상 동의어사전을 옆에 갖추어 놓는다고 한다. 변수 이름, 클래스 이름, 메쏘드 이름 등을 지을 때 좀 더 훌륭한 작명을 하기 위해서이다. ExtremeProgramming에서는 시스템 아키텍춰를 디자인할 때, 메타포로써 생각한다. 이를 통해 개발자와 고객이 상호 소통할 수 있는 언어가 마련되는 것이다. 물론 잘 선택된 메타포는 개발자들에게 다양한 가능성과 예외적 경우를 생각할 인지적 틀을 제공한다. KentBeck은 묻는다: "만약 우리가 firewall을 raincoat라고 호칭했었더라면 지금 기술이 이 모양으로 발전했을까?"
--김창준