초기 해커한 대한 이야기는 성당과 시장 1장 "해커문화의 짦은 역사"에서 찾아볼 수 있다.
80년대 후반 부터 자유 소프트웨어 운동을 이끌고 있는 리처드 스톨먼도 1971년 부터 MIT대학 인공지능 연구소에서 일하면서 소프트웨어 공동체의 구성원이 되었고, 해커로서 이름을 알리기 시작했다.
그 당시에는 내가 속한 소프트웨어 공동체만이 소프트웨어를 공유하는 문화를 갖고 있지 않았어. 마치 요리 만드는 방법을 서로 나누는 것이 요리의 역사 만큼 오래된 것처럼, 소프트웨어를 공유하는 것 역시 컴퓨터의 역사 만큼이나 오래된 것이였지.
그래서, 새로운 프로그램을 발견하면, 언제라도 소스코드를 얻어서 고치거나 그 코드를 일부로해서 새로운 프로그램을 만들 수 있었지.
“C 컴파일러 복사해줘서 고마와요.” “하하, 뭐~ 당연한 것을..” |
하지만, 당시 Altair용 베이직 언어를 개발한 빌 게이츠는 컴퓨터 자작 클럽에서 자신들이 만든 베이직을 무단으로 복사하고 있다는 사실을 알고 분노했다. 그리고 클럽 구성원들에게 공개 편지를 썼다.
당시에는 소프트웨어는 하드웨어의 번들이라고 생각했기 때문에 빌게이츠가 하드웨어가 판매될때 마다 베이직에 대한 로열티를 받는 것이 문제라고 여겼다. 하지만, 컴퓨터가 대중화되면서 소프트웨어는 라이선스를 사는 개념으로 바뀌었다.
“내가 옳았어! 소프트웨어는 라이선스를 팔아야 돈을 벌지!” |
문제는 대부분의 라이선스는 사용 권한을 얻을 뿐 소스코드를 받을 수 없었고 심지어 리버스 엔지니어링도 허용되지 않는다.
“계약서?” ”리버스 엔지니어링은 허용되지 않습니다. 소스코드는 당연히 주지 않습니다.” |
자유소프트웨어
여기에 반기를 든 사람이 바로 리처드 스톨먼이다. 리처드 스톨먼은 소프트웨어를 공공영역으로 인식했다. 그리고 소스코드는 컴퓨터 과학을 발전시키는 데 기본이며, 변화가 계속되기 위해서는 소스코드를 자유롭게 사용할 수 있어야 한다고 생각했다.
또한, 우리가 자동차를 사면 스스로 수리를 할 수 있듯이 소프트웨어도 사용자 스스로 문제를 해결할 수 있어여 한다고 믿었다.
- 프로그램을 어떠한 목적을 위해서도 실행할 수 있는 자유 (자유 0)
- 프로그램의 작동 원리를 연구하고 이를 자신의 필요에 맞게 변경시킬 수 있는 자유 (자유 1). 이러한 자유를 위해서는 소스 코드에 대한 접근이 선행되어야 합니다.
- 이웃을 돕기 위해서 프로그램을 복제하고 배포할 수 있는 자유 (자유 2)
- 프로그램을 향상시키고 이를 공동체 전체의 이익을 위해서 다시 환원시킬 수 있는 자유 (자유 3). 이러한 자유를 위해서는 소스 코드에 대한 접근이 선행되어야 합니다.
대표적인 자유소프트웨어로 리눅스 커널을 예로 들을 수 있다. 리눅스 커널은 많은 전자기기를 동작시키는 핵심 소프트웨어, 즉, 운영체제로 사용되고 있다
오픈소스 소프트웨어
1997년 봄, 자유 소프트웨어 공동체 리더 모임이 캘리포니아에서 있었다. 이 모임에서 팀 오라일리, 래리 오거스틴, 에릭 레이먼드가 오픈소스 소프트웨어 대해 논의하기 시작했다.
에릭 레이먼트 (Eric Steven Raymond, ESR)는 "성당과 시장"의 저자이며 오픈소스 운동의 대표 인물이다. 넷스케이프 브라우저 소스코드 공개에 큰 영향을 주었다. |
팀 오라일(Tim O'Reilly)는 오라일리 미디어(O'Reilly Media)의 창립자이다. 그는 오픈 소스와 웹 2.0이라는 용어를 대중화하였다 |
“기업들도 자유 소프트웨어로 소스코드를 공개하면 좋을 텐데...” “GPL라이선스가 너무 엄격해서 상용 SW에 적용하기는 쉽지 않을거야..” “대부분 기업들이 RMS가 주장하는 자유소프트웨어에 대해 거부감이 많아..” |
아마도 이런 대화 내용이 오고 갔을 것이다.
“오픈소스 소프트웨어라는 말은 어때?” "우선 기업들에게 소스코드를 공개 하도록 유도하는 것이 가장 중요하니까, 그 이름이 더 좋아보이는군" |
이후 브루스 페런스는 Debian Free Software Guidelines를 고쳐서 “OSD(Open Source Definition)”이라는 문서를 만들었다.
아래와 같은 조건을 준수하는 소프트웨어 라이센스를 오픈소스 소프트웨어라고 부르도록 했다.
- 프로그램을 복제하여 배포할 수 있는 권리
- 소프트웨어의 소스 코드에 접근할 수 있는 권리
- 프로그램을 개선할 수 있는 권리
오픈소스에 대한 자세한 내용은 오픈소스 혁명의 목소리 vol.2 11장 "오픈소스에 대한 정의"에서 찾아볼 수 있다.
자유 소프트웨어와 오픈소스 소프트웨어의 차이
“그렇다면 자유 소프트웨어와 오픈소스 소프트웨어의 차이는 무엇일까?” |
참고: Why Open Source misses the point of Free Software
대부분의 오픈소스 소프트웨어는 자유 소프트웨에이기도 하다. 하지만, 일부 오픈소스 라이선스는 수정된 버전을 만들어 개인적으로 사용하지 못하도록 한다. 어떤 소프트웨어는 실행 파일의 서명을 체크해서 수정된 버전이 설치되는 것을 막고, 오직 권한이 있는 회사만이 실행 파일을 만들고 디바이스의 모든 접근 권한을 갖도록 한다. 이 부분도 사용자의 자유를 침해하는 것이다.
오픈소스 소프트웨어의 성공적인 모델 덕분에 많은 기업들의 오픈소스 개발 방식을 택하고 있다.
하지만, 모든 오픈소스 소프트웨어가 항상 성공하는 것은 아니다. 때로는 사용자에게 얼마나 많은 자유를 주는지가 중요할 때도 있다. 사실, 오픈소스라는 용어가 더 편하고 일반적이지만, 항상 사용자의 자유를 고민해야 한다. -끝-
|
레이아웃이 먼나라이웃나라 스타일에서 웹툰 스타일로 바뀌었네요? :)
답글삭제답장으로도 답니다.
답글삭제자꾸 이런 내용을 퍼뜨리시는 분들이 있는데, 이 만화의 내용은 사실과 다릅니다. 자유소프트웨어와 오픈소스소프트웨어는 브랜딩의 문제이지 기본적으로 동일한 겁니다. Open Source Definition 부터가 Debian Free Software Guidelines를 베껴온 거고요. GPL의 copyleft 조항은 자유소프트웨어의 특징이 아니라 GPL의 특징일 뿐입니다. Open Source Initiative도 GPL을 오픈소스 라이선스로 인정하고 있고, FSF도 non-copyleft 라이선스를 자유소프트웨어 라이선스로 인정해요.
내용 수정했습니다. OSS가 Free software를 포함하는 것은 당연합니다. 단지, 둘 사이가 관점이 차이가 있고, 모든 OSS가 free software는 아닌 것 처럼 그 차이를 소개하려고 했습니다. 제가 오해한것은 자유소프트웨어가 주로 GLP라이선스를 의미한다고 생각했고, RMS가 비판한대로 X-Window문제가 차이를 설명하는데 좋은 사례라고 생각했습니다. 앞으로도 의견 주시면 고맙겠습니다.
답글삭제안녕하세요 한국사물인터넷협회 전하원 대리 입니다. 연락처를 찾지 못해 이렇게 연락드리는점 정말 죄송합니다. 다름이 아니오라, 오픈소스 커뮤니티 관련하여 전문가를 초청하여 간담회 등을 진행하고자 연락 드렸습니다. 연락부탁 드리겠습니다. jhw@kiot.or.kr 010-5194-1032 전하원 대리 드림
답글삭제