[IT인물열전] 네 컴퓨터에 자유의 축복을, 리차드 스톨만

이상우 lswoo@itdonga.com

[IT동아 이상우 기자] 프로그램은 소스코드로 이뤄져 있다. 개발자는 어떠한 프로그램을 만들기 위해 각종 프로그래밍 언어를 사용해 소스코드를 만든다. 우리는 컴퓨터를 사용하면서 프로그램을 통해 명령을 내리고, 결과를 받아볼 수 있다. 소프트웨어 기업이나 개발자에게 이러한 소스코드는 중요한 자산이다. 그리고, 오늘날 우리도 이러한 소프트웨어의 저작권을 인정하고 있다.

그런데, 이러한 소프트웨어 저작권에 반기를 드는 사람도 있다. 바로 '자유 소프트웨어 재단'이다. 저작권(Copyright)에 반대 개념의 용어 '카피레프트(Copyleft)'를 내세우며 지식과 정보는 소수가 독점하는 것이 아닌, 모두에게 공개해야 한다고 외친다. 자유 소프트웨어 재단의 중심에는 미국의 프로그래머 '리차드 스톨만(Richard Matthew Stallman)'이 있다.

리차드 스톨만
리차드 스톨만

<자유 소프트웨어 운동을 주도하는 리차드 스톨만, 출처: stallman.org>

리차트 스톨만은 1953년 맨해튼에서 태어났다. 학창시절인 1965년부터 1969년까지 컴퓨터를 접하면서 프로그래밍을 배웠고, 1971년부터 매사추세츠 공과대학 인공지능 연구소에서 '*해커'로 일하기 시작한다. 그는 이 시기를 회고하면서 “요리법을 공유하는 것이 요리의 역사만큼 오래된 것처럼, 소프트웨어를 공유하는 것은 컴퓨터의 역사만큼 오래된 것이었다. 그러나 우리(해커들)는 MIT에서 소프트웨어를 공유하는 이상적인 공동체를 만들었다"고 말했다.

*해커라는 단어가 시스템 보안을 뚫고 해악한 일을 저지르는 사람이라는 의미로 쓰이고 있지만, 리차드 스톨만은 해커를 '프로그래밍을 좋아하고 능숙하게 다룰 수 있는 사람'이라는 의미로 사용한다고 밝혔다.

MIT Ai Lab
MIT Ai Lab

그는 인공지능 연구소에서 그의 동료와 함께 ITS라 불리는 운영체제를 DEC사의 PDP-10이라는 메인프레임(다양한 데이터를 처리할 수 있는 대형 컴퓨터)에 탑재하기 위해 업그레이드하는 작업을 맡았다. 그들은 ITS를 자유 소프트웨어라고 부르지 않았다. 리차드 스톨만에 따르면 당시에는 그런 용어 자체가 존재하지 않았으며, 오늘날 자유 소프트웨어라 불리는 개념(프로그램 소스코드를 다른 사람이 사용할 수 있도록 공개하는 일)이 너무나도 당연한 시대였다.

DEC PDP-10
DEC PDP-10

이들의 해커 공동체는 1980년대 초 DEC가 PDP-10 제품군 생산을 중단하면서 무너지기 시작했다. 이 컴퓨터에서 쓰이는 소프트웨어가 호환성 문제로 사용할 수 없게 됐기 때문이다. 1981년에는 인공지능 연구소에서 근무하던 대부분의 해커가 심볼릭스(Symbolics)라는 회사를 만들고, 직장을 옮긴다. 기존 PDP-10을 운영할 인적 자원이 부족해진 인공지능 연구소는 ITS가 아닌 새로운 운영체제를 도입한다. 하지만 이 운영체제는 자유 소프트웨어가 아니었다. 이뿐만 아니라 당시 소개됐던 대표적인 컴퓨터의 전용 운영체제 역시 자유 소프트웨어가 아니었다. 이러한 운영체제를 사용하려면 관련 자료(소스코드 등)를 유출하지 않겠다는 계약 조건에 동의해야만 했다. 리차드 스톨만은 이에 대해 "컴퓨터를 사용하는 처음 단계부터 주위 사람을 돕지 않겠다고 약속하는 것과 같은 의미"라고 언급했다.

리차드 스톨만은 무너진 공동체를 다시 부활시키길 원했다. 그리고 이를 위해 가장 먼저 해야 하는 일은 운영체제를 만드는 것이라고 판단했다. 운영체제는 컴퓨터를 사용하기 위해 가장 핵심적인 소프트웨어기 때문이다. 따라서 자유롭게 사용할 수 있는 운영체제가 있다면 상호 협력적인 해커 공동체를 재건할 수 있을 것이라 생각했다. 뿐만 아니라 '재배포를 금지한다' 등의 저작권 조건에 구애받을 필요가 없어지므로, 주변 사람의 자유를 침해하지 않고도 누구나 컴퓨터를 사용할 수 있을 것이라 믿었다.

자유 소프트웨어 재단
자유 소프트웨어 재단

<자유 소프트웨어 재단, 출처: 위키백과>

1985년 그는 GNU 선언문(전문 번역: http://www.gnu.org/gnu/manifesto.ko.html)을 발표했다. GNU의 의미는 'GNU는 유닉스가 아니다(Gnu is Not Unix)'의 약자다. 당시 해커들은 이처럼 회귀적인 명칭의 약어를 사용했는데, 이 습관을 반영한 모양이다. GNU는 유닉스 운영체제용 프로그램과 완벽하게 호환하면서, 장점을 해치지 않고 부족함을 메우는 것을 지향했다. GNU 선언문을 발표한 이후에는 자유 소프트웨어 개발을 위해 자유 소프트웨어 재단을 설립했다.

리차드 스톨만
리차드 스톨만

<자신을 성 그누시우스(st. IGNUcius)라고 부르며 사용자의 컴퓨터에 축복을 내리겠다는 리차드 스톨만. 머리 뒤에 있는 원은 '후광'을 뜻한다, 출처: 위키백과>

1989년에는 일반 공중 사용 허가서(GNU General Public Licence, 이하 GPL)이라는 카피레프트를 발표한다. GPL을 적용한 소프트웨어를 사용할 때는 다음과 같은 규정을 따라야 한다.

1. 컴퓨터 프로그램을 어떠한 목적으로든지 사용할 수 있다. 다만 법으로 제한하는 행위는 할 수 없다.
2. 컴퓨터 프로그램의 실행 복사본은 언제나 프로그램의 소스 코드와 함께 판매하거나 소스코드를 무료로 배포해야 한다.
3. 컴퓨터 프로그램의 소스 코드를 용도에 따라 변경할 수 있다.
4. 변경된 컴퓨터 프로그램 역시 프로그램의 소스 코드를 반드시 공개 배포해야 한다.
5. 변경된 컴퓨터 프로그램 역시 반드시 똑같은 라이선스를 취해야 한다. 즉 GPL 라이선스를 적용해야 한다.

GNU 프로젝트는 생각보다 순조롭지 않았다. 시스템의 대부분을 완성했지만, 운영체제의 핵심인 커널만은 완성하지 못했다. 그러던 중 리누스 토발즈가 '리눅스'라는 이름의 커널에 GPL을 적용해 내놓는다. 그는 원래 교육용 유닉스인 미닉스를 사용하다 여기에 만족하지 못하고, 새로운 운영체제를 개발한다. 리눅스는 '리누스의 미닉스'라는 의미다.

리누스 토발즈가 공개한 리눅스 커널 첫 번째 버전은 약 1만행 정도의 소스코드로 구성됐다. 이를 보고 흥미를 느낀 개발자들은 여기에 다양한 기능을 추가하기 시작했고, 리눅스의 성능 역시 한 층 강화됐다. 자유 소프트웨어 재단 역시 흥미를 가졌다. 리눅스는 GNU 프로젝트의 핵심 중 하나로 떠오르게 됐고, 1994년 공개된 리눅스 커널 1.0.0을 공개하기에 이르렀다. 이후에도 리눅스 커널은 여전히 무료 공개 원칙을 유지하고 있으며, 변형 및 재배포에 관해서도 자유롭다. 오늘날 우분투, 레드햇 등 리눅스에 기반한 운영체제는 셀 수도 없이 많으며, 서버용 운영체제뿐만 아니라 우리에게 익숙한 스마트폰 운영체제까지 세력을 넓혔다.

리차드 스톨만
리차드 스톨만

<리눅스의 아버지 리누스 토발즈>

에릭 레이먼드는 이러한 자유 소프트웨어 철학을 '성당과 시장(the Cathedral and the Bazaar)'이라는 책을 통해 소개한다. 이 책에서 자유 소프트웨어에 관한 두 가지 모델을 소개한다. 성당 모델은 출시할 때만 소스코드를 공개하고, 이후 제한된 개발자만 소스코드에 접근할 수 있도록 하는 모델이다. 이와 달리 시장 모델은 소스코드가 인터넷을 통해 일반인에게 공개된 상태로, 여러 사람이 참여해 소프트웨어를 견고하게 만드는 모델이다. 이 책은 여러 오픈소스 운동과 자유 소프트웨어 프로젝트에 영향을 줬으며, 이들이 시장 모델을 적용해 여러 명의 개발자가 참여하는 개발 방식을 적용하기 시작했다. 성당 모델의 경우 출시 당시에 소스 코드를 공개한다는 점을 제외하면, 오늘날 상용 소프트웨어를 개발하는 방식과 동일하다. 따라서 성당을 상용 프로그램에, 시장을 누구나 개발에 참여할 수 있는 프로그램에 비유하기도 한다.

리차드 스톨만
리차드 스톨만

<국제 자유 소프트웨어 컨퍼런스에 참석한 리차드 스톨만, 출처: 위키백과>

리차드 스톨만의 운동은 상당히 급진적이었다. 때문에 소스코드 공개에는 동의하지만, 그의 사상이나 철학에는 동의하지 않는 개발자도 있었다. 결국 이들을 중심으로 자유 소프트웨어 운동과는 성향이 조금 다른 '오픈소스 운동'이 생겨나기 시작했다. Free라는 단어의 해석도 조금씩 달랐다. 자유 소프트웨어 진영은 이 말을 '자유'라는 의미 그대로 해석하는 반면, 오픈소스 진영은 '무료'라는 의미에 초점을 맞춰 이를 바탕으로 새롭고 강력한 소프트웨어를 개발하는 것을 중시한다.

리차드 스톨만은 이 두 가지 노선에 대해 두 개의 정당과 같다고 표현했다. 기본적인 원칙은 다르지만, 현실적인 목표에 관해서는 동일하다는 말도 덧붙였다. 그에게 있어서 공공의 적은 '독점 소프트웨어'기 때문이다.

자유 소프트웨어 운동은 오늘날 상용 소프트웨어를 만드는 기업, 예를 들어 마이크로소프트 등의 기업에게는 허무맹랑한 주장으로 비춰진다. 실제로 리차드 스톨만의 주장은 소프트웨어 업계에서 '공산주의'와도 같다. 하지만 이러한 운동은 오늘날 소프트웨어 업계에 많은 영향을 줬다. 파이어폭스를 만든 비영리 재단 모질라부터 HP나 IBM 등의 대기업도 오픈소스 기반 기술에 투자해 개방형 생태계를 꾸리고 있다.

리차드 스톨만과 칼 마르크스를 합성한 이미지
리차드 스톨만과 칼 마르크스를 합성한 이미지

<간혹 그의 사진을 칼 마르크스나 체 게바라의 사진과 합성해 사용하는 경우도 있다>

이처럼 자유 소프트웨어 운동(혹은 오픈소스 운동)은 개발자의 성과물을 무의미하게 공유하자는 움직임이 아니라 여러 사람의 의견을 수렴할 수 있는 개방형 생태계를 만들고, 더 뛰어나고 가치 있는 성과물로 발전시키자는 것에 의의를 둔다.

글 / IT동아 이상우(lswoo@itdonga.com)

※본 기사는 네이버캐스트(http://navercast.naver.com/)의 'IT 인물 열전' 코너에도 함께 연재됩니다

IT동아의 모든 콘텐츠(기사)는 Creative commons 저작자표시-비영리-변경금지 라이선스에 따라 이용할 수 있습니다.
의견은 IT동아(게임동아) 페이스북에서 덧글 또는 메신저로 남겨주세요.