거의 모든 인터넷의 역사 (8) – C언어의 창시자, 데니스 리치

고인이 된 데니스 리치 from Wikipedia.org
고인이 된 데니스 리치 from Wikipedia.org

2011년 10월 12일 데니스 리치가 사망했다는 뉴스가 전해졌다. 보통의 사람들에게는 그렇게 대단한 뉴스가 아니었을 수 있겠지만, 컴퓨터 과학을 조금이라도 아는 사람이라면 그의 죽음에 모두가 조의를 표했을 것이다. 그런데, 그가 사망하기 불과 1주일 전인 10월 5일에 스티브 잡스가 세상을 떠났다. 아마도 스티브 잡스처럼 전 세계 수 많은 사람들의 애도와 축복을 받은 죽음도 별로 없을 것이다. 그래서인지, 일주일 뒤의 데니스 리치의 죽음에 대해 개인적으로 너무나 사람들이 무심했다는 생각이 들었다. 스티브 잡스도 훌륭한 업적을 냈지만, 오늘날 현대적 운영체제의 원형인 유닉스를 공동개발하고, 수 많은 개발자들의 필수적인 프로그래밍 언어로 수십 년의 시간을 지배했던 C언어의 창시자인 데니스 리치가 만들어낸 사회적 가치는 개인적으로 스티브 잡스를 뛰어넘는다고 생각한다. 그래서, 간단히 그의 인생과 업적에 대해서 알아보고자 한다.

벨 연구소의 과학자 아버지와 아들

데니스 리치는 1941년 9월 9일 뉴욕 인근의 소도시인 브롱스빌(Bronxville)에서 태어났다. 그의 아버지인 알리스테어 리치(Alistair E. Ritchie)도 유명한 컴퓨터 과학자로 벨 연구소에서 오랫동안 일을 하면서 스위치회로(switching circuit) 이론을 정립한 인물이다. 데니스 리치는 하버드 대학에서 물리학과 응용수학 학위를 따고, 1967년 아버지가 일하던 벨 연구소에 입사를 한다.

벨 연구소에서 그는 유닉스 연구를 다른 팀원들과 함께 공동으로 진행하는데, 여기에서 평생을 그와 함께 하게 되는 동료 브라이언 커니건(Brian Kernighan)을 만난다. 데니스 리치와 브라이언 커니건은 유닉스를 개발하면서 유닉스를 다양한 컴퓨터에 이식할 수 있도록 하기 위해 C 언어를 고안하고, 전설적인 프로그래밍 책인 “The C Programming Language“를 저술하게 되는데, 이 책은 브라이언 커니건과 데니스 리치의 성을 따서 “K&R“이라는 애칭으로 불리게 된다. 데니스 리치가 유닉스 개발에서 맡은 부분은 서로 다른 컴퓨터와 플랫폼에 유닉스를 포팅하는 것으로 유닉스의 대중화에 가장 중요한 부분이었다.

C 언어는 유닉스 프로젝트를 진행하기 위해서 탄생한 부산물이었지만, 유닉스의 성공과는 별도로 엄청난 성공을 거두게 된다. C 언어는 다양한 애플리케이션 뿐만 아니라, 현대적인 대부분의 운영체제와 여러 컴퓨팅 기능을 가진 기계들을 동작시키는 가장 기초적인 언어로 수 많은 개발자들의 사랑을 받았다. 그리고, C 언어의 기본적인 문법을 기초로 하여 현재 가장 인기있는 프로그래밍 언어들이 탄생하게 된다.

이런 공로를 인정받아 1983년 유닉스의 주개발자였던 켄 톰슨(Ken Thompson)과 데니스 리치는 컴퓨터 과학계의 노벨상이라고 할 수 있는 튜링 어워드(Turing Award)를 수상했으며, 1999년에는 클린턴 대통령에게 기술부분 최고의 영예인 국가기술혁신메달(National Medal of Technology and Innovation)을 수여받았다.

오픈소스 문화의 시초가 되다

켄 톰슨에 따르면 1969년 벨 연구소에서 유닉스를 만들게 된 동기가 당시 퇴물과도 같았던 PDP-7에서 스페이스워 게임을 돌릴 수 있도록 하기 위해서 였다고 한다. 어찌보면 별 것도 아닌 것을 위해 말도 안되는 엄청난 일을 벌인 셈인데, 더 놀라운 것은 그의 이런 계획에 데니스 리치를 포함한 최고의 과학자들이 모두 열정적으로 매달렸다는 점이다. 그들의 이런 성향은 오늘날의 시각에서는 이해하기가 쉽지 않지만, 당시 대항문화와 열정으로 가득찬 젊은이들의 문화에서는 충분히 가능한 일이었다.

데니스 리치와 켄 톰슨은 특히나 공동체 지향적인 성향이 강했다고 하는데, 그래서 자신들이 만든 프로그램에 대해서 어떠한 대가도 바라지 않고 친절하게 수 많은 사람들에게 설명을 해주곤 하였다. 특히 이들이 영향을 많이 준 그룹이 캘리포니아 버클리 대학의 컴퓨터 과학자들 이었는데, 켄 톰슨과 데니스 리치는 1970년 대에 서부연안 유닉스 사용자 모임 등을 통해서 유닉스 코드를 한 줄씩 읽어주면서 직접 설명을 하고, 며칠 간 많은 사람들에게 유닉스의 정신을 전파했다고 한다.

데니스 리치와 켄 톰슨은 자신들이 만든 유닉스가 많은 사람들에게 이용되기를 원했고, 이들의 의지를 이어받아서 버클리 대학의 프로그래머들이 많은 개선을 통해 BSD 유닉스를 탄생시킨다. 이들의 생각들은 리차드 스톨만의 자유소프트웨어재단(FSF, Free Software Foundation)와 오픈소스 운동으로 이어지게 된다.

앞서도 언급했지만, 이렇게 위대한 업적을 남긴 데니스 리치의 죽음은 스티브 잡스의 죽음에 비해 너무나 적은 사람들에게 기억이 되었다. 여기에 대해 컴퓨터 역사가로 유명한 폴 케루지(Paul E. Ceruzzi)는 다음과 같은 말을 남겼다.

리치는 레이더의 아래에 있다. 그의 이름은 널리 알려지지 않았다. 그러나, 당신이 현미경을 가지고 컴퓨터의 내부를 들여다볼 수 있다면, 그의 업적은 그 내부의 어디에나 존재하고 있다.

참고자료:

데니스 리치 홈페이지
데니스 리치 위키피디아 홈페이지

%d bloggers like this: