커뮤니티
스포츠
토론장


(구)유머 게시판[1] [2]
HOME > 커뮤니티 > 유머 게시판
 
작성일 : 21-02-21 14:02
[스타] 버그가 0이었다는 나사의 전설적인 프로그래머
 글쓴이 : 러키가이
조회 : 5,979  


버그가 0이었다는 나사의 전설적인 프로그래머

 

1969년

 

그녀가 손으로 직접 쓴 코드 옆에 서있는 모습

 

인간이 내린 우주선 제어명령을 컴퓨터가 종합적으로 판단해

 

안전하다고 여길 경우에만 실행에 옮기는 '플라이바이 와이어 시스템'을

 

최초로 완성한 나사의 여류 엔지니어 마가렛 해밀턴

 

(위 짤은 손으로 직접 쓴 코드 옆에 서 있는 모습)

 

 

컴퓨터 프로그래밍을 배울 때 가장 기본으로 배우는 것이 바로 C언어 인데요. 이 C언어는 1972년 벨 연구소의 켄 톰슨과 데니스 리치에 의해 개발된 프로그래밍언어 입니다. 하지만 이보다 수년이나 앞선 1960년대, 소프트웨어란 용어조차 없었던 시기에 프로그래밍이란 영역을 개척한 사람이 있었으니, 그 주인공이 바로 '마거릿 해밀턴' 입니다. 남성들이 주도하던 공학에서 최초의 소프트웨어 엔지니어링의 개념을 만든 사람이 여성이라는 사실이 참 흥미로운데요.

 

 

 

▼그녀가 없었다면, 미국은 달착륙을 성공할 수도, 그리고 우주비행사들을 무사히 지구로 귀환시킬 수도 없었다고 합니다. 그래서 오늘은 '소프트웨어 엔지니어링의 어머니'라 불리는 마거릿 해밀턴의 이야기에 대해서 알아보도록하겠습니다.

 

 

 

▼그녀는 1936년 인디애나 주 파올리에서 태어났는데요. 미시건 대학교에서 수학을 전공하고 얼햄 대학교에서 수학과 철학을 전공하면서 학사 학위를 받았습니다. 그녀는 24세의 어린나이에 결혼까지하는데요. 하버드 법학대학에서 공부를 하는 남편 뒷바라지를 위해 고등학교에서 수학과 프랑스어를 가르쳤다고 합니다. 프랑스어는 전공도 하지 않았지만, 학생들을 가르칠 정도였다고 하니 그녀가 상당히 똑똑했음을 알 수 있는 대목입니다.

 

 

▼그녀는 1960년 MIT의 계약직으로 취직을 하게 됩니다. 그녀는 기상학과의 에드워드 노턴 로젠트 교수를 도와 컴퓨터로 날씨를 예측하는 소프트웨어를 개발했습니다. 물론 이때는 소프트웨어란 개념이 없었을 때라, 별도의 교육과정이나 전문가가 없었죠. 그래서 그녀는 말 그대로 맨땅에 헤딩을 해가면서 프로그래밍을 익혔다고 합니다. 그녀는 이 프로젝트에 투입되자 마자 아무도 동작원리를 모를뿐더러 제대로 동작되지도 않는 프로그램을 맡게됐다고 합니다.

 

심지어 그 프로그램에 대한 문서자료는 그리스어와 라틴어로 되어 있었다고 합니다. 하지만 그녀는 놀랍게도 이 프로그램을 제대로 동작하도록 수정했으며 심지어 라틴어로 그리스어로 결과를 출력하도록 완벽하게 개발을 했다고 합니다.

 

▼이렇게 놀라운 성과를 거둔 그녀는 미항공우주국(NASA)에 스카웃 됩니다. 그녀는 미국의 달착륙 프로젝트인 아폴로 우주선의 비행 소프트웨어 선임 개발자로 자리를 옮기게 됩니다. 물론 나사에서도 그녀의 활약은 두드러 집니다. 그녀는 워킹맘으로 야근할때나 주말 근무할 때는 아이를 직장에 데려와서 코딩을 할 정도로 모든 열정을 아폴로 계획에 쏟았다고 합니다.

 

▼당시 개발환경은 지금은 상상조차 할 수 없을 정도로 열악했습니다. C언어 조차 없던 시대에 그녀는 손으로 코드를 적어서 프로그래밍을 했다고 합니다. 이렇게 그녀가 짠 코드들은 책에 적혀서 재봉사들에게 넘겨 졌습니다. 그 책을 받은 재봉사들은 '1'은 구리선을 코일에 통과시키고, '0'은 코일에 구리선을 감는 방식으로 컴파일(?) 됐습니다. 이렇게 그녀가 수작업으로 코딩한 양이 책으로 쌓으면 그녀의 키만큼 이나 된다고 합니다. 이 사실도 놀랍지만 더욱 충격적인것은 컴파일러나, 디버깅 툴도 없이 오직 머리와 칠판을 이용해서 코딩을 했다는 사실입니다.

 

▼당시 재봉사들이 코딩을 도와줘야했던 Rope Memory

 

▼엄청난 수작업을 거쳐서 탄생한아폴로 우주선 비행제어 프로그램은 그 빛을 발하게 되는데요. 아폴로 우주선이 달에 착륙하기 3분전 이 컴퓨터 프로그램은 우주선이 너무나 많은 작업이 동시에 입력되는 바람에 처리할 수 있는 용량을 초과하게 된다는 사실을 미리 감지하게됩니다. 그리고는 우주비행사들에게 우선순위가 낮은 작업들을 중단시키겨야 한다는 경고창을 띄우기되죠. 이를 발견한 비행사들은 달착륙에 관련된 작업을 최우선적으로 처리하게 명령을 내리게 되고 결국 안전하게 달착륙을 할 수 있었다고 합니다. 이 프로그램이 제대로 동작하지 않았다면 아폴로 11호는 달에 착륙하기 전에 과부하로 고장을 일으킬 수 밖에 없었죠.

 

달탐사 관련 그녀의 프로그램이 우주비행사들의 목숨을 살리기도 했는데요. NASA에서는 최고의 엘리트 우주비행사들은 절대 실수 할일이 없다며, 비상상황을 대비하는 기능을 만들 필요가 없다고 얘기했습니다. 그냥 실수를 하지 않게 경고만 해주면 된다고 호언장담을 한것이죠. 하지만 마거릿 해밀턴은 이런 나사의 충고에도 아랑곳 하지 않고 비상상황에 대비하는 기능을 만들어 두게 됩니다.

 

물론 우주비행사들이 실수를 할리 없다는 나사의 예상은 보기좋게 빗나가게 됩니다. 한 우주비행사가 아폴로 우주선의 비행경로를 저장한 파일을 모두 날려버리는 실수는 한 것입니다. 이 파일이 날라가면 우주선은 복귀를 할 수 없었죠. 하지만 다행히 마거릿이 만들어준 복구 기능으로 우주선의 비행궤적을 지구에서 전송받아 우주비행사들은 목숨을 살릴 수 있었다고 합니다.

 

▼그녀가 없었다면 미국의 달탐사 계획은 몇년이 늦춰졌거나 아예 실패로 끝났을지 모릅니다. 그녀가 이런 업적을 세우기전까지는 컴퓨터 프로그래밍은 수학의 한 분야에 불과했습니다. 이로 인해 그녀는 미국의 컴퓨터공학의 기틀을 마련했다는 평가를 받고 있습니다. 이상 소프트웨어 엔지니어링의 창시자 '마거릿 해밀턴'의 이야기에 대해서 알려드렸습니다.

 

그녀가 짠 소스코드엔 버그가 0이었다는 무시무시한 전설이 전해지는데

 

이 소프트웨어는 너무나 잘 작동해 아폴로 미션 이후 개량을 거쳐

 

우주왕복선에도 쓰였으며 요즘은 항공기 등에 적용되고 있음

 

이후 그녀는 그 공로를 인정받아 2016년 자유 훈장을 수여받았다

 


 

실제로 Apollo 안내 소프트웨어는 매우 견고하여

 

승무원이 참여한 Apollo 임무에서 소프트웨어 버그가 발견되지 않았으며

 

Skylab, 우주 왕복선 및 항공기의 최초 디지털 플라이 바이 와이어 시스템에서


사용하도록 조정되었습니다.

 

——————————————————————

 

버그가 없다니….. 대단하네요… 

 

버그가 0..

 

코딩의 신이 분명함

 

 

 

 












출처 : 해외 네티즌 반응 - 가생이닷컴https://www.gasengi.com


가생이닷컴 운영원칙
알림:공격적인 댓글이나 욕설, 인종차별적인 글, 무분별한 특정국가 비난글등 절대 삼가 바랍니다.
러키가이 21-02-21 14:02
   
한이다 21-02-21 14:09
   
본인도 왜 버그가 0인지 몰라서 안절부절 했었을지도..ㅋㅋ
BlackMonday 21-02-21 14:15
   
개발자: 버그가 없다고?
          그럴리가 없어~~
          아주 심각한 오류가 있는 게 분명해
          얘들아 오늘은 야근이다 ㅋㅋㅋㅋ
나기 21-02-21 14:34
   
A4 반장 분량의 그냥 글을 적어도 오타가 생기는데;;
A4 1장 분량의 코딩을 해도 디버깅을 해보는데;;;

진짜 말도 안되는 분이시네
남편이 마가렛 해밀턴님께 거짓말을 하면 어찌 될지 궁금 ㅎㅎ
하늘나비야 21-02-21 15:09
   
그냥 천재였던 거네요 소프트 웨어쪽의 ..저분 지금 젊다면 더  대단 한 일을 하셨을 듯
메로나 21-02-21 15:39
   
디버깅툴이 엄청나게 발전한 지금도 수많은 버그가 나오게 마련인데
종이에 써서 만든 프로그래밍 버그가 0 이라고라??????
사람인가요?
김본좌 21-02-21 15:43
   
울나라 기레기들은 그 짧은 기사에도 오타를 수십자씩 내는데.....마거릿 당신은......
내안의Blue 21-02-21 16:31
   
코딩을 직접 해본 분 들은 알 거에요.
플로우만 적절하다고 해결되는 것이 아니란 걸.
가끔 프로그램이 무거워지면 stag overflow가 어느 순간에 발생할지 조마조마해지는 시점도 오고
재수 없으면 무한 루프에 빠지는 초보적인 실수도 하게 되죠.
제어와 관련된다면 시스템 작동이 예상된 범주 안으로 제한될 거란 생각은 근자감에 가깝죠.
버그가 없었다면 그것을 회피할 수 있는 그녀만의 습관적 루틴이 있었을 것 같네요.
그녀의 코딩을 확인해보고 싶어지네요.
초율 21-02-21 16:34
   
1에서 100까지보다 어려운..0에서 1까지..
커런트스탁 21-02-21 16:43
   
기계어로 코딩을 한 건가?
마왕등극 21-02-21 16:53
   
나사가 외계인의 기술을 이용한다는 의혹이 사실로 판정났군요.

zero bug 따윈 인간의 세계에선 있을 수 없는데... ㄷㄷㄷ
기가듀스 21-02-21 17:45
   
왜 1960년대에 프로그램에 대한 문서자료가 그리스어와 라틴어로 되어 있었던거지?
sunnylee 21-02-21 17:58
   
그냥... 수학의 최고단계는..신의 언어를 푸는 단계라고 하더만..
진짜 신의 영역이내..
guns 21-02-21 19:36
   
막짤 뒤에 톰 행크스가.......
포미 21-02-21 19:41
   
지금 코딩과는 완전 다름, 이진수 기계어임
저기 자기 키만큼의 책에 바로 010011011...... 이런 0과 1이 잔뜩 적혀있음.....
bony 21-02-21 22:51
   
저는 미국 유학 때 프로그래밍 부전공했었는데
읽어 보니 그때는 포트란도 없었을테고 아마도 기계어 같은 걸로 프로그래밍한 듯...
포트란, 코볼 부터 파스칼, C 는 인간에 가까운 언어지만, 기계어는 인간과 거리가 먼 기계에 가까운 언어죠.

친한 마국인 선배 하나가 아주 그 학년 최고 실력자였는데,
나보고 자기는 기계어 수업 들었다가 죽는줄 알았다고, 절대 듣지 말라고 해서 저도 안 들었을 정도죠.
특히 요즘 언어에 에러 발생이 너무 많아 금기시된 GOTO (지정한 위치로 건너뛰는것) 쓰지말라고 한
JMP (였나?) 를 남발할 수 밖에 없어서 에러 발생은 능력자도 절대 못 피해간다고 합니다.
C 언어 등 일반 언어때 나는 에러는 장난 수준이고, 그 에러 원인을 찾는건 완전 차원이 다른 수준이라네요.
이런 걸 버그 없이 만들었다는건 신급 레벨이라고 볼 수 밖에 없습니다.
쌈무사나 21-02-21 23:46
   
헛소리일 듯
재봉사들중에 누군가라도 실수를 했을 듯
미국이고 중국이고 뻥쟁이들이 너무 많아서 이런거 못 믿음
     
맛좋은이슬 21-02-22 08:14
   
참 불편하게 사네요
댁이 믿건 말건 세상은 돌아갑니다
보미왔니 21-02-22 12:08
   
어셈블리~
흰꽃샤프란 21-02-22 23:16
   
외계인 출신...
 
 
Total 99,366
번호 제목 글쓴이 날짜 조회
공지 [공지] 비극적인 사건이나 사고,범법 자료 게시 금지 (20) 가생이 07-12 271976
공지 [공지] 19금을 연상케 하는 모든 자료 절대 등록불가 가생이 08-01 242688
공지 [공지] 유머/엽기 게시판 주의사항(2019.07.18) (17) 가생이 01-13 248797
99364 [안습] 일본 교토 돌려까기 화법에 의심병 걸린 한국 유학생 썰.toon (2) 드슈 01:56 295
99363 [스포츠] 여성 체지방별 몸매.jpg (1) 드슈 01:52 468
99362 [유머] 라스] 요즘 달라진 아이돌 문화에 적응이 안된다는 이특.jpg 드슈 01:48 316
99361 [유머] 日TV] 공사장에서 땅파다 얻은 33년전 즉석 카레를 먹고 싶어… 드슈 01:46 375
99360 [안습] 물어보살 - 스압] 엄마의 복장 때문에 고민인 아들.jpg (1) 드슈 01:42 308
99359 [안습] 유퀴즈] 파묘에서 50% 이상이 애드리브였다는 유해진.jpg 드슈 01:31 298
99358 [유머] 고말숙이 방송하게된 계기.jpg 드슈 01:28 345
99357 [안습] 유독 이상한 손님이 많은 햄버거 알바.toon 드슈 01:25 346
99356 [안습] 미래따윈 생각하지 않는 배민사장님.jpg (3) 드슈 01:21 348
99355 [안습] 국내 과일 야채 물가 근황.jpg (1) 드슈 01:19 337
99354 [기타] 지하철 천원 빵은 안심해도 될까? jpg 드슈 01:17 315
99353 [기타] 기본 2인 손님 받는 가게에 혼자 온 손님이 한 행동.jpg (1) 드슈 01:12 336
99352 [유머] 과외 학생 할머니한테 살크업 당한 선생님.jpg (2) 드슈 01:07 351
99351 [유머] 라스] 노빠꾸 토크하다가 이수만한테 혼났다는 김희철.jpg 드슈 01:05 283
99350 [기타] 경제학과를 만든 경제학자의 명언.jpg 드슈 01:02 350
99349 [스타] 골반이 정말 아름다운 여성의 특징.jpg 드슈 00:57 477
99348 [안습] 일하는데 고객 이름 못알아듣겠더라고.jpg (4) 드슈 03-28 758
99347 [안습] 예능 신인상 대상 커트라인.jpg (2) 드슈 03-28 775
99346 [안습] 인티] 같이 말 섞기 짜증나는 유형.jpg (3) 드슈 03-28 703
99345 [안습] [블라] 의사파업을 본 현대차 반응.jpg (1) 드슈 03-28 853
99344 [안습] 블라] 장모님 불륜 목격 <말한다 vs 안한다>.jpg (5) 드슈 03-28 742
99343 [안습] 독서실에서 여고생한테 차임.jpg (5) 드슈 03-28 917
99342 [동물귀욤] [소리O] 사람 손이 넘나 좋은 새끼 냥이.mp4 (3) 드슈 03-28 619
 1  2  3  4  5  6  7  8  9  10  >