재조명해야 할 여성 과학자 (1)
재조명해야 할 여성 과학자 (1)
  • 이은화 기자
  • 승인 2007.03.28 00:00
  • 댓글 0
이 기사를 공유합니다

최초의 컴퓨터 프로그래머 에이다 바이런

고흐·슈베르트·프리드만. 이들의 공통점은 당대에는 인정받지 못했지만 현재에 와서 그 작품이나 사상의 가치를 높게 평가받는 사람들이라는 것이다. 한 사람이 아무리 기발한 아이디어나 명확한 진리(혹은 이론)를 제시한다 하더라도 당시의 시대관이나 그 분야에 있어서 주류에 부합하지 않을 경우에는 무시되기 일쑤이다.

현대에 와서 과거에 인정받지 못했던 예술가들뿐만 아니라 역사학자·과학자들을 재조명하고자 하는 시도들을 많이 하고 있다. 그러나 이러한 시도들 속에서도 암묵적으로 배제되고 있는 집단이 있다. 바로 여성들이다. 지금의 과학발전에 기여한 소수의 ‘천재’들이 아니라 현재 조명 받지 못하고 있는 몇몇 여성과학자들을 ‘발굴’해 이번호와 다음호에 싣는다.
<편집자 주>




19C초 놀랍게도 초기의 컴퓨터 사용자들은 대부분 여성이었다. 단순반복적인 계산작업 따위는 여성들에게나 맡겨야 한다는 시대상황 속에서 인간 컴퓨터의 역할을 대신해오던 여성들은 ‘컴퓨터 공학’ 분야에 있어 개척자가 될 수 있었다. 그 중에서도 최초의 ‘컴퓨터 프로그래밍’이라는 것을 한 사람은 영국의 유명한 낭만파 시인 바이런의 딸 에이다 바이런(Augusta Ada Byron : 1815~1852)이라는 여성이었다.

어머니의 교육과 타고난 수학적 재능을 가진 에이다는 18살 때 한 파티에서 ‘Difference Engine’의 발명가인 찰스 베버지(Charles Babbage)를 만나게 된다. 에이다는 며칠 뒤 개인적으로 초대받은 베버지의 스튜디오에서 그의 발명품들에 매료되어 그와 평생 동안 학문을 교류하는 친구로 지내게 된다.

Difference Engine은 유한차분법(편미분 방정식을 차분 방정식으로 근사시켜 수치해석을 하는 방법)을 응용하여 숫자를 저장하고 덧셈을 수행하는 방법으로, 다항식으로 구성된 테이블을 하나의 과정으로 계산할 수 있게 해주는 계산기이다. 베버지는 Difference Engine의 아이디어를 발전시켜 세계 최초의 컴퓨터라 할 수 있는 ‘Analytic Engine’을 구상했다. 불행히도 당시 정부와 사람들은 ‘Difference Engine’과 ‘Analytic Engine’의 차이점은커녕 그 위대한 발명품이 차후에 미치게 될 엄청난 영향력에 대해 이해조차 하지 못하고 있었다.

그러나 에이다는 Analytic Engine과 Difference Engine의 차이점과 그 작동 원리에 대해 정확히 이해하고 있었으며, 베버지와는 달리 사람들에게 알기 쉽게 설명할 수 있는 능력을 갖고 있었다. 1843년 에이다는 자신의 수학적 지식에 힘입어 소프트웨어적인 관점에서 Analytic Engine에 대한 자신의 해석을 담은 책을 출간하게 된다. 그 책에서 에이다는 Analytic Engine이 사람이 직접 초기값을 입력해주어야 하는 Difference Engine과는 달리 데이터를 나타내는 심볼에 응답할 뿐 아니라 수 데이터의 계산을 수행하는 ‘Operation Card’를 사용한다고 서술했다.

에이다는 Engine의 세부작동 원리 즉 ‘서브루틴(Subroutine)’이나 ‘루프(Loop)’의 기능을 제공하기 위해 카드를 역으로 회전시켜 반복작업을 수행하고, 횟수에 상관없이 카드 세트에 접근할 수 있는 방법을 설명했다. 뿐만 아니라 Engine이 수행할 수 있는 다양한 기능들과 과학진보에 있어 Analytic Engine이 기여할 수 있는 부분에 대해서도 언급했다. 가장 놀라운 점은 이러한 설명을 하기 위해 그가 단순히 머리릿속에서 고안해낸 서브루틴(Subroutine)겥聆?Loop)겵′?Jump)와 같은 프로그래밍 개념들이다. 그는 Analytic Engine을 해석하는 과정에서 현대프로그래밍의 기초개념을 닦아놓은 것이다.

여성이 과학을 공부하고 자신의 의견을 개진하기 어려웠던 빅토리아 시대에 에이다는 자신의 수학에 대한 열정만으로 ‘남자들’의 분야에서 활동했다. 그녀는 베버지의 Analytic Engine의 중요성에 대해 이해하고, 그것을 프로그래밍하고 상용화하는 미래를 예견할 수 있었다. 에이다의 업적은 1950년대가 되어서야 세상에 알려졌고, 1979년 그를 기리기 위해 미 국방부에서 개발한 객체지향 프로그래밍 언어에 그의 이름을 딴 ‘ADA’라는 이름이 붙게 되었다.