달 착륙 소프트웨어 개발 이끈 마거릿 해밀턴 별세···“업적 제대로 인정받지 못한 여성 세대 상징”
지난 9월 30일(현지시간) 향년 90세로 별세한 마거릿 해밀턴을 두고 MIT뉴스 “NASA의 아폴로 계획에서 소프트웨어 개발을 이끈 컴퓨터 분야의 선구자”(10월 7일자 부고 기사)라고 평했다. 해밀턴은 아폴로 계획에 참여한 MIT 계측연구소(현 드레이퍼연구소)에서 소프트웨어 개발팀을 이끌었다.
미국과 영국 주요 언론도 부고 기사를 내고 인류 최초의 달 착륙을 가능하게 한 컴퓨터 소프트웨어의 개발을 이끈 해밀턴 업적을 조명했다. 그는 MIT 아폴로 프로젝트의 첫 프로그래머였다. 첫 여성 프로그래머이기도 했다. 오랫동안 대중의 주목을 받지 못했지만 말년에 과학기술 분야 여성의 상징적인 인물로 재평가됐다.
1936년 인디애나주 파올리에서 태어났다. 1955년 미시간대에 입학해 수학을 공부하다 얼럼칼리지로 옮겼다. 1958년 수학 학사학위를 받았다. 철학을 부전공했다. 1959년 법학을 공부하던 남편과 함께 매사추세츠주 보스턴으로 이주한 뒤 MIT 기상학과에서 일자리를 얻었다. ‘카오스 이론의 아버지’로 불리는 에드워드 로렌츠 연구실에서 날씨 예측 소프트웨어를 개발하며 컴퓨터 프로그래밍에 입문했다.
1961년 MIT 링컨연구소로 자리를 옮겨 프로그래머로 일했다. 미국의 방공 시스템인 반자동 지상환경(SAGE) 프로젝트에 참여했다. MIT뉴스는 지난 7일 부고 기사에서 “이 시기 해밀턴은 당시에는 새롭고 거의 연구되지 않았던 개념인 소프트웨어의 신뢰성에 관심을 두기 시작했다”고 전했다.
1965년 아폴로 계획의 소프트웨어 개발 인력을 모집한다는 MIT계측연구소의 신문 광고를 남편에게 전해 듣고 지원했다. 이 연구소는 NASA에서 아폴로 계획에 사용될 비행 소프트웨어 개발 계약을 따낸 상태였다.
마거릿 해밀턴이 1969년 11월 25일 MIT에 전시된 아폴로 사령선 모형 안에 앉아 있다. AP연합뉴스
처음에는 무인 아폴로 임무에 사용할 소프트웨어를 개발했다. 이후 유인 우주비행에 필요한 소프트웨어 개발팀을 이끄는 자리로 승진했다. 1968년엔 사령선·서비스 모듈 소프트웨어팀의 부책임자가 됐다. 그는 2009년 MIT 뉴스와 인터뷰하며 이렇게 말했다. “소프트웨어는 정체를 알 수 없는 블랙박스였기 때문에 경영진은 우리에게 전적인 자유와 신뢰를 줬다. 우리는 방법을 찾아야 했고, 결국 찾아냈다. 돌이켜보면 우리는 세상에서 가장 운이 좋은 사람들이었다. 개척자가 되는 것 말고는 다른 선택지가 없었다. 초보자로 머물 시간도 없었다.”
해밀턴은 “뛰어난 리더십과 문제 해결 능력, 비판적 사고력”으로 아폴로 계획 진행 중 여러 위기를 넘기는 데 이바지했다. 대표적인 사례가 훗날 ‘로런 오류’로 알려진 사건이다. 어느 날 네 살이던 딸 로런이 MIT 계측연구소의 사령선 시뮬레이터를 가지고 놀다가 키를 눌러 ‘발사 전 프로그램인 ‘P01’을 실행했다. 비행 상황을 모의 실험하던 시뮬레이터는 작동을 멈췄다. 해밀턴은 기술 문서에 비행 중에는 P01을 실행하지 말라는 경고를 추가했다. 실제 임무에서 같은 오류가 발생하지 않도록 소프트웨어 자체를 수정하는 방안도 제안했다. 훈련받은 우주비행사들이 그런 실수를 할 리 없다는 이유로 받아들여지지 않았다.
1968년 아폴로 8호 임무 중 우주비행사 짐 러벨이 비행 중 실수로 P01을 실행하면서 항법 데이터가 사라졌다. 그제야 해밀턴 수정안이 반영됐다. 사람이 실수할 가능성을 전제로 오류를 예방하고, 문제가 발생해도 시스템이 대응할 수 있도록 설계하는 ‘방어적 프로그래밍’의 초기 사례다.
해밀턴의 업적이 가장 널리 알려진 계기는 1969년 7월 아폴로 11호의 달 착륙이었다. 달 착륙선 이글이 달 표면에 내려앉기 직전 컴퓨터 과부하 경보가 울렸다. 앞서 해밀턴의 팀은 컴퓨터가 과부하에 걸려도 우선순위가 높은 필수 작업을 계속 수행하도록 소프트웨어를 설계했다. 이를 신뢰한 휴스턴 관제센터는 착륙을 계속해도 된다고 판단했다. 닐 암스트롱과 버즈 올드린은 인류 최초로 달 표면에 발을 딛게 됐다.
해밀턴은 1970년대 중반까지 MIT에서 일했다. 1976년 첫 소프트웨어 기업인 하이어 오더 소프트웨어를 설립했고, 10년 뒤에는 해밀턴 테크놀로지스를 세웠다. 두 회사 모두 오류 예방과 방어적 프로그래밍을 중시했다.
마거릿 해밀턴이 1969년 MIT에서 개발한 아폴로 소프트웨어의 출력물 더미 옆에 서 있다. 이 사진은 수십 년 뒤 해밀턴의 역할이 재조명되면서 소셜미디어에서 널리 알려졌다. 출처: 위키피디아
해밀턴은 소프트웨어 공학을 독립적인 공학 분야로 정립하는 데 이바지했다. 그가 ‘소프트웨어 공학’이라는 용어를 사용하기 시작했을 때 사람들은 이를 농담거리로 여겼다고 한다. 소프트웨어 개발이 독립된 공학 분야로 인정받지 못하던 시절이었다. 그는 2018년 스페인 일간지 엘파이스와의 인터뷰에서 이렇게 말했다.
“나는 소프트웨어와 그것을 만드는 사람들이 마땅한 존중을 받도록 소프트웨어의 정당성을 확보하기 위해 싸웠다. 하드웨어 공학이나 다른 공학 분야와 구별하면서도 각 분야를 전체 시스템 공학 과정의 일부로 다룰 수 있도록 ‘소프트웨어 공학’이라는 용어를 사용했다. 사람들은 내 급진적인 생각을 놀리곤 했다. 소프트웨어는 결국 다른 공학 분야와 똑같은 존중을 받아야 했고, 실제로 그렇게 됐다.”
해밀턴은 2003년 NASA 특별 우주법상, 2016년 대통령 자유훈장, 2017년 컴퓨터역사박물관 펠로우상을 받았다. 2019년에는 인트레피드 평생공로상을 수상했고, 2022년 미국 국립항공명예의전당에 헌액됐다.
마거릿 해밀턴 레고. 출처: 아마존
버락 오바마 당시 미국 대통령은 2016년 해밀턴에게 대통령 자유훈장을 수여하며 “해밀턴은 소프트웨어 공학의 새로운 형태를 정립하고 인류 역사를 영원히 바꿀 산업의 출범을 도왔다. 그가 설계한 소프트웨어 구조는 인류의 거대한 도약을 이끌었으며, 미국이 달에 발을 내딛도록 도운 코드를 작성했다”고 평가했다. 올리비에 드 베크 MIT 항공우주학과 임시 학과장이자 아폴로 프로그램 교수는 해밀턴에 대해 “시대를 앞선 인물이라고 말하는 것만으로는 크게 부족하다. 그는 소프트웨어 분야의 태동기에 소프트웨어 엔지니어로 일하면서 고도화된 코드를 직접 개발했다. 오류를 예방하고 자신이 ‘미지의 것을 다루는 일’이라고 불렀던 문제를 해결하는 데 평생을 바쳤다. 우리 모두 그 혜택을 누리고 있다”고 말했다.
해밀턴이 아폴로 프로젝트에 참여한 1960년대 미국의 과학기술 분야는 남성이 다수를 차지했다. 당시 NASA 전문직 가운데 여성은 3~5%에 불과했다. 해밀턴이 팀을 맡았을 때 상사 한 명은 팀에서 일하는 남성들이 반발할까 봐 걱정된다고 말하기도 했다.
마거릿 해밀턴이 2016년 11월 22일 당시 미국 대통령 버락 오바마에게서 대통령 자유훈장을 받고 있다. 위키피디아
해밀턴은 아폴로 계획의 핵심 인물이었지만 오랫동안 대중에게 잘 알려지지 않았다. 업적이 뒤늦게 조명되면서 과학기술 분야 여성의 상징적인 인물이 됐다. 오바마는 대통령 자유훈장 수여식에서 “(해밀턴은 업적을) 제대로 인정받지 못한 여성 세대를 상징한다”고 말했다.
MIT에서 개발한 아폴로 소프트웨어 출력물 더미 옆에 선 해밀턴의 사진은 최근 수년간 소셜미디어에서 널리 퍼졌다. 2019년 아폴로 11호 달 착륙 50주년 기념행사도 해밀턴에게 관심이 쏠리는 계기가 됐다. 2017년 NASA 역사에 공헌한 여성들을 기리는 레고 세트에도 해밀턴의 미니 피겨가 포함됐다. 2015년에는 그가 개발에 참여한 아폴로 소프트웨어가 코드 공유 사이트 깃허브에 공개됐다.
딸 로런은 AP통신에 “어머니는 자기 분야에서 성차별을 많이 겪었지만 공격적으로 맞서지는 않았다. 유머 감각으로 상대를 무장 해제하거나 그저 조용히 상대를 압도했다”고 말했다. 해밀턴은 2019년 가디언과 인터뷰하며 “나는 그 시대 기준으로 상당히 진보적인 남편을 만나는 행운도 누렸다. 평등을 이해하는 남자들도 있었다”고 말했다.
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.