Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

[Book] 오픈 소스 : 오픈 소스 혁명의 목소리 Vol 1

오픈 소스 : 오픈 소스 혁명의 목소리 Vol 1

오픈 소스 : 오픈 소스 혁명의 목소리 Vol 1 표지 오픈 소스 : 오픈 소스 혁명의 목소리 Vol 1 - 6점
리누스 토르발스, 팀 오라일리, 리처드 스톨먼, 에릭 스티븐 레이먼드 지음
최준호, 이만용, 이기동, 송창훈 옮김
한빛미디어


1999년 오렐리에서 나온 Open Sources: Voices from the Open Source Revolution의 번역서이다. 한빛에서 무료로 이북을 다운로드 받을 수 있는데 국내에는 Vol 1Vol 2로 나누어져 발간되었고 오픈 소스와 관련해서 유명한 사람들의 에세이들이 담겨있는 책이다. 이 책을 읽을 때 배경 대부분이 1960~1980년대라는 점을 생각해야 하지만 전반적으로 IT와 오픈소스가 현재까지 발전하기까지의 과정을 통해 그 사이의 고민과 결정 등을 이해할 수 있었다. 에세이라 어려운 내용은 없고 쉽게 읽을 수 있었다.

해커 문화의 짧은 역사 - 에릭 레이몬드

1960년대 MIT와 ARPAnet 등에서 해커라는 용어가 어떻게 생겨났고 이 해커들의 활동과 함께 유닉스의 시대가 오면서 상용 유닉스에 이어 공개 유닉스까지 어떻게 흘러왔는지를 설명하는 글이다.

버클리 유닉스의 20년 - 마샬 커크 맥퀴식

제목 그대로 버클리 대학에서 유닉스를 이용해서 BSD(Berkeley Software Distribution)을 만드는 과정을 설명하는 글이다. 학교 내에서 어떻게 지원받아서 해당 프로젝트를 시작했고 버전마다 발생한 이슈 등을 통해서 어떤 부분은 의도한 대로 어떤 부분은 의도치 않게 흘러갔는지를 설명하고 있어서 BSD의 초기 발전 역사를 전체적으로 볼 수 있다.

인터넷 엔지니어링 태스크포스 - 스캇 브래드너

TCP/IP등 인터넷 기반 기술의 표준을 정하는 IETF(Internet Engineering Task Force)의 발전 과정과 IETF가 어떤 식으로 움직이는지를 설명하는 글이다. 이 글에서 IETF가 성공할 수 있었던 이유를 오픈소스 공동체와 비교해서 설명하고 있으며 IETF의 표준화 과정이 누구나 참여하는 개방적인 형태로 진행되고 그 문서를 모두 이용하고 복제할 수 있기 때문에 오픈소스가 성공한 것과 같은 맥락이라고 보고 있다. 특히 IETF의 프로토콜의 모든 독립기능은 다중 구현을 기본적으로 요구하기 때문에 이 요구사항을 충족하지 못한 기능은 표준에서 제외되고 있다. 이 때문에 다른 표준화 기구와 달리 '제안 표준'에서 많은 검증을 거쳐 이미 문제가 없다고 판단된 유용한 기술이기 때문에 최종 표준의 대부분은 '제안 표준'상태와 거의 같고 표준을 결정할 때 만장일치로 인해서 논란을 줄이기 위해 기능이 더 적은 제안을 만들지 않으려고 대략적인 합의로 결정한다는 점이 특이한 부분이다.

GNU 운영체제와 자유 소프트웨어 운동 - 리처드 스톨만

GNU와 자유소프트웨어 재단으로 유명한 해커 리처드 스톨만의 글로 리처드 스톨만이 다니던 MIT 인공지능 연구소를 그만두고 GNU와 GNU Emacs만든 뒤 Copyleft를 만들고 자유 소프트웨어 재단을 설립하는 과정에서 스톨만의 고민과 하고자 했던 일들을 설명하는 글이다. 현재 오픈소스의 시작점이나 마찬가지이므로 시간이 많이 지난 글이지만 글에서 담고 있는 가진 뜻은 크다고 생각한다.

이 글에서는 다음 네 가지 종류의 자유를 실질적으로 보장하는 프로그램을 자유 소프트웨어라고 말하고 있다.(지금의 오픈소스와는 약간 다르다.)

  • 목적에 상관없이 프로그램을 실행시킬 수 있는 자유
  • 필요에 따라서 프로그램을 개작할 수 있는 자유(이러한 자유가 실제로 보장되기 위해서는 소스 코드를 이용할 수 있어야만 한다. 왜냐하면, 소스 코드가 없이 프로그램을 개작한다는 것은 매우 어려운 일이기 때문이다.)
  • 무료 또는 유료로 프로그램을 재배포할 수 있는 자유
  • 개작된 프로그램의 이익을 공동체 전체가 얻을 수 있도록 이를 배포할 수 있는 자유

GNU의 주된 목표는 자유 소프트웨어가 되는 것이다. GNU가 유닉스에 비해서 기술적인 장점을 전혀 갖지 못하게 되더라도, 사용자가 서로 협력할 수 있게 하면 사회적인 이점을 갖게 될 것이고, 사용자의 자유를 존중하게 된다는 점에서 윤리적인 이점도 있다고 할 수 있다.

시그너스 솔루션의 매리 - 마이클 티만

오픈소스에 기반을 둔 최초의 기업인 시그너스 솔루션에 대한 얘기이다. 나는 이 기업에 대해서는 잘 몰랐지만, 글은 꽤 흥미로웠다. GNU가 성장하면서 이에 관심이 있게 된 마이클 티만이 이를 통해서 기업을 만들 수 있다는 생각을 하면서 이에 도전하고 사람들을 모아서 사업을 하게 되고 최종적으로 GNU Pro를 만들게 된다. 그 각 과정에서의 고민과 어려웠던 점이나 어떤 식으로 해결해 나가서 시그너스 솔루션이 만들어졌는지는 꽤 흥미롭다.

미래의 표준이 될 소프트웨어를 유능한 사람에게 맡기는 것은 무척이나 가치 있는 일이다. 우리는 사업 초기에 이러한 가치의 메커니즘을 이해할 수 있다면, 우리에게 소프트웨어 업계에서 사실상의 표준이 될 수 있는 높은 품질의 오픈소스 프로그램을 개발할 자본을 제공해 줄 사람이 있을 것이라고 확신했다.

소프트웨어 공학 - 폴 빅시

흔히 학교에서 배우는 그 소프트웨어 공학을 오픈소스와 비교해서 설명하는 글이다. 처음에는 요구사항 분석, 설계 등의 얘기가 나와서 좀 진부하게 느껴졌는데 이러한 과정이 오픈 소스에서는 어떻게 적용되고 있는지를 설명하면서부터는 꽤 흥미롭게 읽었다. 지금은 또 시대가 많이 달라져서 오픈 소스에서도 많은 공학적 접근 등이 존재하지만, 글에서는 대부분의 해커가 코딩/패키징/오픈 소스 전파에 관심을 두고 QA나 MRD(memory integrity verifier)에는 관심을 별로 두지 않고 조급하게 제품을 출하하려고 하지도 않았으며 오픈소스 프로젝트에서는 시스템 디자인 단계가 존재하지 않고 함축된 형태로 존재하다가 갑자기 완성된 형태가 되거나 점진적으로 발전되는 형태를 가지고 있다고 얘기하고 있다. 이는 지금과는 약간 다르다고 생각하지만 이런 과정을 거쳐 지금의 오픈소스 문화가 만들어졌다는 생각이 들었다.

첨단의 리눅스 - 리누스 토르발스

리눅스 토발즈가 리눅스 개발에 대해 이야기를 하는 글로 리눅스를 만들게 된 과정이라기보다는 리눅스를 만들면서 했던 개발관련 접근이나 고민을 풀어쓴 글에 가깝다. FreeBSD가 버클리 유닉스의 소스코드를 가지고 시작해서 유닉스의 한 버전이지만 리눅스는 유닉스와 호환되는 인터페이스를 제공하는 것을 목표로 완전히 새로 작성했으므로 유닉스 포트가 아니라 새로운 운영체제이다. 이 리눅스를 개발하면서 당시 유행하던 마이크로커널이라는 관점에 동의하지 않고 커널의 추상화 노력은 비생산적이라고 보고 리눅스를 개발했다는 점은 리누스 토발즈의 판단력을 신뢰하게 만드는 부분이기도 했다. 일반적인 애플리케이션 개발과 같은 맥락으로 볼 수는 없지만 리누스 토발즈가 인터페이스를 피하는 것을 개발의 기본 원칙으로 강조하며 한번 인터페이스를 만들면 영원히 거기에 갇히게 되고 커널을 개발하는 수많은 개발자를 관리할 수 없었으므로 커널을 비교적 최소로 유지하려고 노력하고 오픈 소스에서 충돌이 없기 위해서는 모듈화가 얼마나 중요한지 강조하는 부분에서도 리누스 토발즈에 대해서 다시한번 생각하게 되는 글이었다. **나는 커널 영역에서 가능한 한 최소한의 것을 함으로써 우리가 리눅스에 대하여 옳은 결정을 내렸다고 확신한다. **

15년 후 누군가 나와서 "여보시오. 나는 리눅스가 할 수 있는 모든 일을 할 수 있소. 그러나 내 시스템에는 집어져야 할 20년간의 짐이 없기 때문에 더 가볍고 간단하게 해낼 수 있고."라고 말할 수 있는 날이 오기를 기대한다. 그들은 리눅스가 386용으로 설계되었고 새로운 CPU가 정말로 흥미로운 일을 전혀 다르게 한다고 말할 것이다. " 이 오래된 리눅스를 버립시다." 이것이 바로 내가 리눅스를 만들 때 한 일이다. 그리고 앞으로 그들이 우리의 코드를 살펴보고 인터페이스를 사용하며 바이너리 호환성을 제공할 수 있을 것이며, 이런 모든 일이 일어난다면 나는 행복할 것이다.

2014/11/16 09:43 2014/11/16 09:43