Copyright © Origin Corp. All Rights Reserved.
v1.0.10
로딩 중입니다
행복에는 덕이면 충분하다안티스테네스
달 착륙 3분 전, 우주선 컴퓨터가 멈출 뻔했어요.
그걸 막은 건 33살 여성 프로그래머가 몇 년 전에 미리 깔아둔 안전장치였어요.
1969년 7월 20일, 아폴로 11호 달 착륙선이 지표면 약 9킬로미터 상공에 진입했을 때 AGC(Apollo Guidance Computer)에 '1202 알람'이 떴어요.
쉽게 말하면 "지금 처리해야 할 일이 너무 많아서 과부하 직전"이라는 경고예요.
그래서 닐 암스트롱은 1분 안에 착륙을 계속할지 중단할지 결정해야 했어요.
그런데 컴퓨터는 멈추지 않았어요.
마거릿 해밀턴이 미리 설계해둔 '우선순위 스케줄링' 코드가 작동했거든요.
노트북에 창이 너무 많이 열렸을 때 중요하지 않은 창부터 자동으로 닫아주는 기능과 똑같아요.
덜 중요한 계산을 스스로 버리고, 착륙에 꼭 필요한 계산만 살린 거예요.
결국 인류 최초의 달 착륙은 시스템이 버텨서가 아니라, 시스템이 똑똑하게 포기할 줄 알았기 때문에 가능했어요.
인류 최초 달 비행에서 우주비행사가 저지른 실수를, 4년 전에 한 어린아이가 똑같이 저질렀어요.
1960년대 후반, 해밀턴은 어린 딸 로렌을 종종 MIT 연구실에 데려와 야근을 했어요.
어느 날 로렌이 혼자 키보드를 만지다가, 비행 중에 절대 실행하면 안 되는 '사전 발사 프로그램(P01)'을 눌렀어요.
시뮬레이션 전체가 그대로 멈춰버렸어요.
해밀턴은 이 오류를 막을 코드를 추가하자고 NASA에 제안했어요.
그런데 NASA의 대답은 단호했어요. "훈련된 우주비행사는 그런 실수를 하지 않아요."
하지만 1968년, 아폴로 8호 비행 중에 우주비행사 짐 로벨이 정확히 같은 실수를 저질렀어요.
회사에서 "이건 절대 일어날 리 없는 상황이에요"라는 말을 들었던 일이 며칠 뒤 현실이 되는 상황이에요.
네 살짜리 아이가 무심코 눌러서 발견한 버그를, 훈련된 우주비행사가 우주에서 재현한 거예요.
오늘 전 세계 IT 회사 명함에 적혀 있는 그 단어는, 한 여성이 동료들의 비웃음을 견디며 만든 말이었어요.
1960년대 초반까지 '프로그램을 짜는 일'은 정식 학문도, 직업도 아니었어요.
사람들은 그것을 단순한 사무 보조 작업으로 봤어요.
진지한 공학과는 다른 것으로 취급했거든요.
해밀턴은 이것이 불합리하다고 생각했어요.
그래서 자신의 일을 의도적으로 '엔지니어링'으로 부르기 시작했고, 소프트웨어 공학(software engineering)이라는 말을 직접 만들어 썼어요.
처음에는 동료들조차 농담처럼 받아들였어요.
오늘날 전 세계 수천만 명이 자신의 직업명으로 쓰는 단어가, 그 직업이 직업으로도 인정받지 못하던 시절에 만들어진 말이에요.
'디자이너'라는 말도 없던 시대에 그림 그리는 사람들에게 직함을 만들어준 것과 같아요.
그건 단순히 이름을 붙인 게 아니라, 이 일이 진지하게 다루어져야 한다는 선언이었어요.
아폴로 11호를 달까지 데려간 모든 명령어는, 한 여성 옆에 그녀의 키만큼 쌓인 종이 더미 안에 들어 있었어요.
1969년에 찍힌 한 장의 사진이 있어요.
해밀턴이 자기 키를 훌쩍 넘는 종이 더미 옆에 서 있는 사진이에요.
그게 바로 아폴로 우주선을 달로 보낸 소스 코드 전체를 인쇄한 거예요.
그녀와 그녀 팀이 직접 손으로 짠 코드였어요.
지금 기준으로 보면 스마트폰 앱 하나의 코드보다 적은 분량일 수 있어요.
하지만 그 시절엔 한 사람을 덮을 만큼의 종이 위에 적혀야 했어요.
2016년, 버락 오바마 대통령은 해밀턴에게 미국 최고 시민 훈장인 대통령 자유 훈장을 수여했어요.
달 착륙 47년 만의 일이었어요.
그 종이 더미 옆에서 찍힌 사진 속 33살 여성이, 세상이 자신의 일을 직업으로 인정해주길 기다리면서 그 이름을 직접 만들었다는 걸 알고 나면, 그 사진이 조금 다르게 보이지 않나요?
TTS 음성이 없어요.
아래 버튼으로 나레이션을 생성할 수 있습니다.
1
개