|
컴퓨터를 배우면 맨 처음 나오는 것이 컴퓨터의 발전 과정이다. 파스칼의 계산기부터 라이프니쯔 계산기, 해석기관, 차분기관, 천공 카드 시스템, 튜닝 기계으로 해서 최초의 기계식 자동 계산기인 MARK-1, 최초의 컴퓨터인 애니악, 최초의 상업용 컴퓨터인 UNIVAC-1, 최초의 프로그램 내장방식을 도입한 EDSAC, 폰 노이만이 제작한 컴퓨터인 EDVAC까지를 열거하게 된다. 그런데 그레이스 호퍼는 MARK-1 에 프로그램을 작성하였으면 UNIVAC-1에까지 참여를 했던 대단한 사람이었다.
그레이스 호퍼는 어떤 문제가 생기면 그 이유가 무엇인지를 생각하고 그 작동원리를 알아내곤 했다. 시계의 작동 원리를 알고 싶어 집에 있는 일곱 개의 시계를 분해해서 원리를 알아냈다. 복잡한 설계도를 보고 몇 번의 실험을 통해 원하는 것을 알아냈더. 어려운 개념을 배우는 것을 좋아했으며 잘 해냈다. 수학과 과학을 좋아했고 방에는 수학과 과학에 관한 것으로 가득찼다. 그렇게 공부해서 대학을 들어간 후에도 공부와 재미있는 일이나 모험이라고 할 만한 사건이 있을 때마다 늘 앞에 나섰다고 한다. 또한 배우는 것 못지 않게 가르치는 것도 좋아했다고 한다. 그래서 대학에서 아이들을 가르쳤다고 한다. 미국이 전쟁을 하면서 최고의 수학자를 찾자 그레이스는 나라를 돕기 위해 해군에 입대하려 했다. 그러나 나이 36살이고 몸무게는 48킬로그램이라 들어갈 수 없다는데도 1년 넘게 필요한 사람이고 설득을 했다는 것이다.
"나는 만족할 줄 모르는 호기심을 가진 사람이었다. 호기심으로 문제를 해결한다. 문제를 해결할 때마다 다른 문제가 뒤이어 나타난다. 그것이 바로 도전이다."
그레이스 호퍼는 문제가 생기면 회피하는 것이 아니라 원인을 찾아내려 했다. 그런 과정에 버그도 발견한 것이다. MARK-2가 작동을 멈추었다는 말을 듣고 기계를 샅샅이 찾았는데, 글쎄 나방 한 마리가 기계 안족에 걸려 있는 발견했다. 그 나방이 집게로 꺼내자, 컴퓨터는 아무 문제 없이 작동하기 시작한다. 그때 그녀는 작업일지에 나방을 붙이고 "버그가 발견된 첫 번째 사례"라고 덧붙였다. 그때부터 컴퓨터가 제대로 작동을 하지 않으면 버그때문이라는 말을 하게 되었다. 이렇게 나이가 들어서야 '버그'라는 말이 나온 것을 알게 되다니 말이다.
컴퓨터가 개발된 이유도 계산이 필요했기 때문이다. 사람들이 계산하는 시간이 많이 걸리니 그 시간을 단축하기 위해 필요했다. 컴퓨터는 0, 1로 작성을 해야 되기 때문에 많은 시간이 걸리고 잘못하면 엉뚱한 프로그램이 나올 수 있다. 그런 문제를 인식하고 그레이스 호퍼는 프로-매틱을 개발하였다. 프롤-매틱을 기반으로 COBOL을 만드는데 도움을 주었다. 기계어는 잘 모르지만 우리가 사용하는 컴퓨터 언어들을 컴퓨터가 알 수 있는 언어 바꾸어주는 것을 컴파일러가고 안다. 그 개념을 바로 그레이스 호퍼를 만들었다. 그래서 컴퓨터 코딩의 여왕이며 코딩의 시대를 연 선구자라고 말하나보다.
* 이
리뷰는 두레아이들에서 도서를 제공받아 작성되었습니다.
|
|
프로그래밍 언어로 작성을 완료하고 컴파일을 하는 순간 예기치 못한 상황이 발생한다. 바로 "Error"이라는 메세지가 화면에 출력이 되면 프로그래머는 다시 코딩 내용을 확인하면서 무엇이 잘못 되었는지를 살펴보게 된다. 흔히 이러한 에러를 버그(Bug)라고 표현을 하며, 그러한 에러를 찾는 과정을 디버깅(Debugging)이라고 한다. 프로그래밍에서 갑자기 벌레라는 뜻의 버그(Bug)가 사용되는 것일까? 프로그래밍과 관련된 공부와 업무를 경험하였지만, 그동안 이 용어를 사용하는데 있어서 아무런 의심조차 하지 않았는데, 그레이스 호퍼라는 인물에 의하여 버그(Bug)라는 용어가 사용되었다고 하니 [컴퓨터 코딩의 여왕 그레이스 호퍼]라는 책에 대한 관심은 당연한 것처럼 보여진다. 여기에 더하여 일전에 읽었던 에이다 러브레이스에 대한 책도 이 여성 프로그래머에 대한 호기심을 증폭시키는 것에 대하여 한 몫을 한 것 같다.
프로그래밍을 배우기 전에 컴퓨터의 역사에 대한 교육은 선행적으로 이루어진다. 최초의 컴퓨터인 에니악이라든지 그 전에 이미 파스칼의 계산기에 대한 내용은 학창 시절에도 한 번쯤 들어봤을 것이다. 하지만 그러한 컴퓨터와 프로그래밍의 역사에서 여성의 역할은 의도적으로 배제된 느낌을 받게 된다. 에이다 러브레이스의 기계식 전자 계산기에 기여한 부분이라든지 [히든 피겨스]에 등장하는 여성 수학자와 프로그래머에 대한 내용들은 최근에야 대중들에게 알려지기 시작했기 때문이다. 그레이스 호퍼 역시 그러한 케이스 중 하나라 할 수 있다. 프로그래밍에서 사용되는 버그(Bug)라는 용어를 처음으로 사용한 인물이라는 점과 이 책을 통하여 알게된 프로그래밍에 대한 그녀의 업적과 성과는 이제 널리 알려져야 함을 깨닫게 된다.
먼저 이 책에 대한 흥미를 갖게 된 버그(Bug)는 그녀가 해군으로 복무하면서 프로그래머로 활동하던 시절의 경험에서 비롯되었다고 한다. '마크 2'라는 당시로서는 최신의 컴퓨터가 갑자기 동작을 멈추었기 때문에 그레이스를 비롯한 동료들은 그 원인을 찾고자 백방으로 노력하게 된다. 그들이 작성한 프로그래밍 코드에 의한 것이 아닐까라는 생각에 다시 검토를 하였지만, 코드 자체에는 아무런 문제가 없었기에 그들은 당황할 수 밖에 없었다. 결국 '마크 2'의 내부를 검사하던 과정 중에 나방 한 마리가 기계 안쪽에 걸려 있었고, 그로 인하여 스위치가 제대로 작동하지 않아서 컴퓨터가 동작하지 않음을 알게 된다. 나방 한 마리로 인하여 컴퓨터의 동작이 멈추었다니 얼마나 황당한 일인가? 그레이스는 그 나방을 표본으로 만들어서 버그(Bug)가 발견된 첫 사례로 기록하고, 이후 이 용어는 컴퓨터의 동작 또는 프로그래밍에서 문제를 일으키는 것을 지칭하는 용어로 자리잡게 된다.
프로그래밍을 하다보면 알고리즘 자체의 문제도 있겠지만, 단순히 철자 또는 특수 기호를 잘못 입력하여 문제가 되는 경우가 많다. 이러한 경우를 버그(Bug)로 지칭하는데, 애초에 실제로 나방 한 마리가 물리적으로 컴퓨터의 동작을 막은 사례에서 비롯되었다는 사실이 흥미롭다. 이는 그레이스 호퍼에 대하여 관심을 갖게 되는 작은 사건일 뿐이다. 그녀의 큰 업적은 바로 오늘날 컴파일러에 대한 개념을 정립하고 실제 탄생에 있어서 기여한 부분이라 할 수 있다. 컴파일러는 쉽게 말하면 인간이 입력한 프로그래밍 언어를 컴퓨터가 인식할 수 있는 기계어로 바꾸는 것이기 때문에 오늘날 프로그래밍의 기본 요소라 할 수 있다. 즉, 인간의 언어와 비슷한 체계의 고급 프로그래밍 언어를 컴퓨터가 이해할 수 있는 0과 1로 구성된 2진 체계로 변환해주는 것이 바로 컴파일러라고 하며, 그러한 과정을 컴파일이라고 한다.
물론 처음부터 컴퓨터가 인식할 수 있는 기계어로 프로그래밍을 한다면 컴파일러가 존재할 필요가 없다. 그러나, 0과 1로 구성된 숫자의 조합으로 프로그래밍을 한다는 것은 점점 방대하면서 복잡해지는 상황에서 쉽지 않은 일이었다. 그레이스 호퍼는 바로 이러한 불편함을 해소하기 위하여 인간의 언어와 유사한 형태의 고급 언어로 프로그래밍을 작성하는 방안을 고안하였고, 이는 결국 컴파일러의 개발로 이어지게 된다. 'while', 'if', 'else', 'printf', 'scanf'라는 용어는 실제 프로그래밍에서 사용되는 단어들이고, 이 단어들의 일반적인 의미대로 컴퓨터에서 동작을 하게 된다. 위 명령 또는 조건문을 모두 숫자로 구현을 한다면 결코 쉽지 않음을 깨닫게 될 것이다. 이제 프로그래밍이 교과 과정으로 편성된다고 하지만, 그레이스 호퍼의 생각에 따른 코볼과 같은 고급 프로그래밍 언어가 개발되지 않았다면 교과 과정으로 자리잡는 것은 아마도 불가능했을 것이다. 0과 1로 모든 것을 프로그래밍을 하려면 초등학교에서는 거의 불가능했을테니까.
이러한 그레이스 호퍼의 업적은 잘 알려지지 않았다. 대학에서 컴파일러라는 과목 자체도 존재하지만, 거기에서도 따로 그레이스 호퍼에 대한 이야기는 들은 기억이 나질 않는다. 잠깐 언급했다고 하더라도 너무나 간단히 지나쳤을지도 모른다. 다행이라면 그녀가 삶의 대부분을 해군으로 보내면서 제독의 지위까지 올랐으며, 현재 그녀의 이름을 딴 미국의 구축함까지 있으니 내부적으로는 충분히 인정을 받은 셈이지만, 컴퓨터와 프로그래밍의 역사에서 잘 알려지지 않은 점은 에이다 러브레이스와 크게 달라 보이지 않는다. 에이다에 비하여 최근까지 활약한(그레이스 호퍼는 1992년 사망) 그녀의 삶을 떠올린다면 여전히 이러한 분야에서의 여성들의 활약이 제대로 알려지지 않고 있다는 사실은 그저 안타까울 따름이다.
[컴퓨터 코딩의 여왕 그레이스 호퍼]라는 책 제목과 같이 그레이스 호퍼에 대한 칭호는 지나쳐 보이지 않는다. 나 역시 이러한 분야에서 일을 했지만, 그녀의 존재는 이제서야 처음 알았으니 뒤늦게라도 그녀의 업적에 관심을 가졌으니 말이다. 이 책이 그림책 형식으로 되어 있는데, 이는 아이들에게 꼭 알려져야 할 인물이라는 점에서 의미를 부여할 수 있을 것 같다. 교과 과정에 프로그래밍이 편성되었으니 아이들이 프로그래밍을 공부하면서 동시에 그레이스 호퍼의 삶을 이 책을 통하여 깨닫게 된다면 그녀의 호기심과 열정을 자연스럽게 배우고, 기억할 수 있으리라 생각된다. 나 역시 아직은 딸이 어리긴 하지만, 조금 시간이 지나면 프로그래밍을 배우기에 앞서 그레이스 호퍼의 삶에 대하여 먼저 알려주고 싶다. 이 책과 함께.
( 이 리뷰는 출판사 두레아이들로부터 도서를 제공받아 읽고 쓴 글입니다. ) |
|
나는 어렸을때 위인전 전집세트를 모두 읽었는데, 과학자로 유일한 여성은 퀴리부인이었다. 당시 왜 여자는 퀴리부인만 있는가에 대해서 생각해본 적은 없었다. 과학자는 업적으로 평가받는 것이지 성별이 중요한 것이 아니니까 말이다. 그런데, 영화 '히든 피겨스'를 보면 핵심인력임에도 여자라서 흑인이라서 정말 큼직한 것부터 깨알같이 차별받는 것을 보며, 저런 상황이면 여성과학자는 업적을 세워도 알려지기 힘들겠다란 생각을 했다. 그러다가 우연히 이 책에 대해 알게 되었다. '컴퓨터 코딩의 여왕'이라니, 얼마나 대단하면 그렇게 불리지? 그녀는 누구지? 내가 본 워드 시험 등에서는 마크, 매니악같은 옛날 컴퓨터이름가 나오고 파스칼, 폰 노이만 등의 인물 이름이 나오지만 그레이스 호퍼는 본적이 없었기 때문에 그녀에 대해 알고 싶었다. 그런데 좋은 기회가 닿아 이번에 읽어볼 수 있어서 매우 좋았다. 그레이스 호퍼는 수학으로 박사학위를 받았고 아주 초창기부터 컴퓨터 업계에서 일했던 사람이다. 수학을 가르치다가 세계2차 대전때는 무려 36살의 나이(입대를 안 받아주는 나이)로 해군에 입대하여 정보와 컴퓨터 관련 업무를 했다고 한다. 그녀는 영어와 유사한 프로그램 언어를 컴퓨터가 이해할 수 있는 기계어로 번역하는 컴파일러 개념을 만들고 그것을 구현했는데, 이것은 컴퓨터 역사에서 큰 위치를 차지하는 것이라고 한다. 아마 그래서 그녀를 코딩의 여왕이라고 말한 것 같다. 재밌는 점은 컴퓨터에서 쓰이는 오류를 뜻하는 버그란 말을 그녀가 최초로 썼다는 것이었다. 왜 그것이 버그라고 불리는 지에 대해 예전에 컴퓨터 속에 정말 벌레가 들어가서 였다고 어디선가 언듯 본듯 한데, 그것이 나방이었고 그 사람이 바로 그레이스 호퍼였다는 것을 알게되었다. 개인적으로 가장 놀라운 것은 나이가 들어서 은퇴를 했음에도 그녀의 능력때문에 다시 해군에서 그녀를 불렀고 무려 79살까지 일하면서 제독으로 퇴직했다는 점이다. 그녀의 공을 기려, 해군에 중요 정보를 제공하는 호퍼 센터, 사관학교에는 사이버관련 교육을 하는 호퍼 홀, 미국의 구축함 중 하나는 무려 uss 호퍼라고 하는 것 보면 정말 대단한 천재였긴 한가보다. 컴퓨터업계는 새로운 기술도 계속 나오고 해서 그것을 익혀야 하고 그렇다보니 부침도 심하다고 하던데, 그래서 더 놀라웠다. 나는 이 책을 통해 퀴리 부인 이외에 또 다른 여성과학자를 알게 되어서 좋았다. 마지막으로 이 책에 대한 이야기를 써보면, 이 책은 하드 커버에 올컬로 보통 생각하는 큰 그림책이다. 그래서 위인전처럼 딱딱하지 않았다. 그녀의 개인사나 인생을 깨알같이 이야기 하기보다는 특정 사건들을 위주로 나열하여 그림동화책처럼 술술 읽게 되어 있었다. 그림 중간중간에는 그녀가 했던 말이 쓰여있어서 그녀라는 사람에 대해 좀 더 알려주고, 마지막에는 연표와 그녀에 대한 보충설명있는 구성이다. 약간 아쉬운 것은 동화책이고 페이지 제한 때문인지 당시 사회적, 문화적, 역사적 배경등에 대한 설명등이 좀 많이 빠져있다. 예를 들어 여성 과학자에 대한 차별이라든가, 당시 입대 배경(초등학생들은 세계 제 2차 대전을 잘 모를 것 같다.) 등등에 대한 것 말이다. 아울러 컴퓨터 관련 모를만한 단어들이 종종 보여서 간단한 단어색인 같은 것이 있고 그에 대한 설명이 있었으면 더 좋았을 것 같다.
![]() ![]() ![]()
|
|
저에게는 두 딸이 있습니다. 우리 두 딸들이 호기심이 많고 과학에도 관심이 많았으면 좋겠으나 전혀 그렇지 않습니다. 우리 딸들은 과학은 어렵기만 하다고 생각하는 것 같습니다. 저는 이제껏 남자가 하는 일 여자가 하는 일이라고 나눠서 아이를 키우지 않았으나 우리 사회가 아직 그러니 아이들에게 어느 순간 무의식중에 그런 개념이 스며들은 것 같습니다. 그런 딸들이 너무나 안타까워서 여자도 아주 훌륭한 과학자가 될 수 있다는 것을 보여주는 이 책을 우리 두 딸들과 읽어보게 되었습니다. |
|
나의 꿈을 찾아가는 여정에 한 권의 책은 잊지못할 특별함이 되곤 한다. 꿈을 구체화하고 멘토를 발견하는 길잡이가 되어주기 때문이다. 믿고 찾는 두레아이들 출판사의 인물이야기, 이번에는 ‘컴퓨터 코딩의 여왕 그레이스 호퍼’다. 면지를 보면 그레이스 호퍼를 컴퓨터 전문가로만 바라보지 않음을 알 수 있다. 어린 그레이스부터 노년의 그레이스 호퍼까지 그녀를 부르는 호칭은 틀에 박히지 않고 따스하다. 인간적인 성품과 자질, 그레이스 호퍼의 면면을 생각하게 해준다. 그레이스 호퍼의 어린시절은 어땠을까? 기계 장치에 관심이 많았던 그레이스는 움직이는 시계 속은 어떻게 생겼을지 궁금해서 분해하곤 했다. 일곱 살에 일곱 개의 시계라니 어려서부터 호기심과 인내심과 열정이 남달랐다. 실력이 뛰어나 좋은 점수를 받은 과목이 있는 반면 그녀 역시 어려워하는 과목이 있었다. 하지만 목표를 위해 어려움을 감수하고 진지하게 노력한 점, 결국 시험에 통과한 점 등은 인상적이다. 책 속에는 그레이스 호퍼의 좌우명이 나온다. “모든 일에 충실할 것, 모두가 내 말에 동의하면 세상은 더 나은 곳이 될 것이다.” 재능만을 의지하지 않고 최선을 다하는 그녀의 시간들을 알게 된다. 컴퓨터 오류를 상징하는 ‘버그’라는 용어의 유래에 대한 에피소드도 등장한다. 자신이 좋아하는 일에 평생을 헌신한 그녀의 삶은 무척 인상깊다. 책의 마지막 부분에 연표가 실려 있는데 세계사, 컴퓨터 관련 주요 사건을 함께 기록해 관심을 갖고 살펴보게 된다. 호퍼에 대한 부가적 설명이나 옮긴이의 말은 좀 더 깊이 인물을 이해하는데 도움을 준다. 산뜻하고도 아름다운 그림과 기억할 만한 어록을 다양한 서체로 돋보이게 하는 등의 장치들은 입체적으로 그녀의 삶을 따라가도록 한다. 알찬 내용으로 그레이스 호퍼의 일대기를 감명 깊게 살필 수 있는 시간이었다.
|
|
우리가 날마다 마주하고 있는 다양한 모습의 컴퓨터, 초기에 컴퓨터는 웬만한 집채만하다 하였다. 그런 컴퓨터가 지금은 각자의 탁상위에 놓여 있게되었다. 그러한 컴퓨터의 발달사에 수많은 사람의 헌신과 노력이 바탕이 되었을 것이다. 집채만한 컴퓨터가 작아질 수 있었던 가장 큰 원인은 컴퓨터 언어의 컴파일러가 개발되면서부터일 것이다. 컴퓨터가 알아볼 수 있는 0과1의 형식이 인간의 언어와 유사한 형식의 언어로 변화되면서 그것을 컴퓨터가 알아볼 수 있을 기호내지 신호인 0과 1로 바꾸어주어 프로그램을 하나의 완성체로 변환하여 주는 최초 컴파일러를 만든 사람이 있다. 그녀가 바로 그레이스 호퍼이다.
![]() ![]()
그레이스 호퍼는 살면서 다양한 역할 을 감당하였던 듯하다. 그러나 우리에게 가장 인상적인 부분은 그녀가 컴파일러를 만든 사람이고 또한 컴퓨터 에러의 이름을 총칭하는 '버그'라는 단어를 만든 장본인으로 유명하다. 거기에 고령의 나이까지 인류를 위해 헌신한 모습들이 기려지는 것일 것이다.
![]() ![]()
그녀가 자국에 이바지했던 것이 지금은 전세계 인류를 위한 가치가 되어져 가고 있다. 여성으로서의 쉽지않은 행보를 하며 자신을 위해, 그리고 국가와 인류를 위해 헌신하는 모습은 모든 어린이에게 큰 힘이 되어줄 것이다. 그러한 모습이 어린이들에게 좋은 닮고 싶은 본보기가 되어줄 수 있을 것이다. 또한 어린이들의 삶의 멘토로서 위인전에서 느낄 수 있는 위인의 다양한 업적들 통해 많은 것을 제공해 줄 수 있는 인물이다. 어린이들에게 꿈과 희망과 비젼을 심어줄 수 있는 그레이스 호퍼의 행적은 삶에 귀감이 되는 것이 당연하겠다.
책은 그녀를 컴퓨터 코딩의 여왕이라고 칭하고 있다. 아마도 최근 영향때문이리라. 4차산업이 강조되며 요즘 코딩과 로직, 알고리즘등이 새로운 부상되고 있다. 곧 학교에서도 전면적 교육이 실시할거라 들었다. 컴퓨터 뿐만 아니라 우리의 사고의 로직인 알고리즘의 중요성이 부각되어지고 있는 것이라 판단된다. 많은 어린이들이 미래를 내다볼 수 있는 사고를 갖기 바라며 이 책의 주인공과 같은 용기와 확신있는 사람으로 을 살기를 바란다. 더불어 인류에 공헌할 수 있기를 바란다.
* 이 리뷰는 출판사 두레아이들로부터 도서를 제공받아 작성되었습니다.
|