현대 사회에서 프로그래밍은 우리 생활의 필수적인 요소가 되었다. 하지만, 이 개념이 처음 등장한 순간을 떠올리면 대부분 20세기의 컴퓨터 과학자들을 떠올리기 쉽다. 그러나 최초로 ‘컴퓨터 프로그래밍’이라는 개념을 정립한 사람은 19세기의 한 여성, 에이다 러브레이스(Ada Lovelace)였다. 그녀는 찰스 배비지(Charles Babbage)의 해석기관(Analytical Engine)을 연구하며 세계 최초의 알고리즘을 작성했고, 이는 현대 프로그래밍의 기초가 되었다. 하지만 그녀의 공로는 오랫동안 인정받지 못했고, 후대에 와서야 재조명되기 시작했다. 이 글에서는 에이다 러브레이스의 삶과 그녀가 남긴 코드, 그리고 현대 프로그래밍에 미친 영향을 살펴보고자 한다.
에이다 러브레이스: 시인의 딸에서 과학자로
수학과 예술을 넘나든 천재
1815년, 영국의 낭만주의 시인인 조지 고든 바이런(George Gordon Byron)과 수학적 사고를 강조했던 어머니 앤 이사벨라 밀뱅크(Byron Lady Wentworth) 사이에서 태어난 에이다 러브레이스는 부모의 상반된 기질을 모두 물려받았다. 어머니는 그녀가 아버지처럼 문학과 감성에 치우치는 것을 우려해 어릴 때부터 엄격하게 수학과 과학 교육을 받게 했다. 이는 그녀가 후에 해석기관을 연구하는 데 중요한 기반이 되었다.
어린 시절부터 기계와 숫자에 대한 호기심이 남달랐던 에이다는 17세에 수학자이자 논리학자인 오거스터스 드 모르간(Augustus De Morgan)에게 수학을 배웠고, 이는 그녀의 수학적 사고를 더욱 깊이 있게 발전시키는 계기가 되었다.
찰스 배비지와 해석기관
미래를 앞서간 기계
1833년, 에이다 러브레이스는 수학자 찰스 배비지를 만나게 된다. 배비지는 ‘차분기관(Difference Engine)’이라는 계산 기계를 개발 중이었고, 이후 이를 확장하여 더 복잡한 연산을 수행할 수 있는 ‘해석기관(Analytical Engine)’을 설계했다.
배비지의 해석기관은 오늘날의 컴퓨터와 유사한 개념을 가지고 있었다. 기계는 펀치카드를 이용해 데이터를 입력받고, 조건문과 루프와 같은 논리적 연산을 수행할 수 있도록 설계되었다. 하지만 배비지는 이 기계를 계산기로만 생각했다. 반면, 에이다 러브레이스는 해석기관이 단순한 계산을 넘어서 어떠한 기호도 연산할 수 있는 보편적인 기계가 될 수 있다고 보았다.
세계 최초의 컴퓨터 프로그램
루프와 알고리즘의 시작
1842년, 이탈리아 수학자 루이지 메나브레아(Luigi Menabrea)가 배비지의 해석기관에 대한 논문을 발표했을 때, 에이다 러브레이스는 이를 영어로 번역하며 자신의 주석을 덧붙였다. 흥미로운 점은 그녀의 주석이 단순한 번역이 아니라, 해석기관이 실행할 수 있는 최초의 알고리즘을 포함하고 있었다는 것이다.
그녀는 해석기관을 이용해 ‘베르누이 수(Bernoulli numbers)’를 계산하는 방법을 설명하며, 이를 단계별로 정리했다. 이 과정은 현대 프로그래밍의 루프(반복문) 개념과 유사한 구조를 가진다. 즉, 그녀가 작성한 이 알고리즘이 세계 최초의 컴퓨터 프로그램으로 평가받고 있다.
왜 그녀의 업적은 오랫동안 인정받지 못했을까?
여성이라는 한계와 역사 속 잊혀짐
19세기 사회에서 여성의 학문적 성취는 인정받기 어려웠다. 당시 과학과 공학은 남성 중심의 학문이었으며, 여성의 기여는 종종 무시되거나 축소되었다. 또한, 배비지의 해석기관이 결국 완성되지 못했기 때문에, 에이다 러브레이스의 알고리즘이 실질적으로 구현될 기회를 얻지 못했다. 이는 그녀의 연구가 한동안 학계에서 잊혀진 이유 중 하나였다.
또한, 에이다 러브레이스는 1852년 36세의 젊은 나이에 유방암으로 세상을 떠났다. 그녀가 남긴 연구는 오랫동안 주목받지 못했고, 이후 컴퓨터 과학이 발전하면서 서서히 재조명되기 시작했다.
현대 프로그래밍에 미친 영향
컴퓨터 과학의 선구자로 인정받다
20세기에 들어서면서 컴퓨터 과학이 본격적으로 발전하자, 연구자들은 초기 컴퓨터 개념을 정리하는 과정에서 에이다 러브레이스의 논문을 다시 주목하게 되었다. 특히, 1970년대 미국 국방부는 새로운 프로그래밍 언어를 개발하며 이를 그녀의 이름을 따 ‘에이다(Ada) 프로그래밍 언어’라고 명명했다. 이는 그녀가 컴퓨터 프로그래밍의 개념을 최초로 정립한 인물이라는 것을 공식적으로 인정하는 사례가 되었다.
오늘날 에이다 러브레이스는 여성 과학자들을 대표하는 인물로 자리 잡았으며, 그녀의 업적을 기리기 위해 매년 10월 두 번째 화요일을 ‘에이다 러브레이스 데이(Ada Lovelace Day)’로 지정하여 기념하고 있다.
에이다 러브레이스는 단순한 수학자가 아니었다. 그녀는 기계가 단순한 계산을 넘어서 다양한 기호를 조작할 수 있으며, 궁극적으로 음악과 예술까지 창조할 수 있다는 비전을 가진 선구자였다. 그녀가 남긴 코드는 비록 해석기관 위에서 실행되지 못했지만, 현대 프로그래밍의 개념을 탄생시키는 데 결정적인 역할을 했다.
우리가 사용하는 모든 프로그래밍 언어와 알고리즘은 그녀가 처음 구상한 개념의 연장선에 있다. 그리고 그녀의 이야기는 여성 과학자들이 역사에서 어떻게 잊혀졌고, 어떻게 다시 조명될 수 있는지를 보여주는 중요한 사례로 남아 있다.