웹2.0과 오픈 소스

지난 2월에 있었던 Web 2.0 Conference Korea에서 웹2.0의 기반 기술에 대한 발표를 하면서 웹2.0이 등장한 배경에 오픈 소스(Open Source)가 매우 밀접하게 관련되어 있다고 이야기했습니다. 이에 대해 많은 사람들이 의아하게 생각할 것입니다. 그도 그럴 것이 대다수의 사람들이 웹2.0을 비즈니스나 서비스의 혁신이라는 관점에서 바라보기 때문이죠. 이번 달 창간하는 Open Source Magazine에 기고한 글에서 웹2.0과 오픈 소스에 대해 설명한 부분을 간단하게 인용해 보겠습니다.


오픈 소스, 자발적 참여의 동인
사실 오픈 소스 운동이 시작된 것은 그리 길지 않았다. 자유 소프트웨어 재단(FSF)과 GPL그리고 리눅스의 등장은 불과 십여 년 전의 일이다. 특히, 오픈 소스 개발이 활성화 된 가장 큰 이유는 인터넷의 등장이라고 할 수 있다. 여러 지역에 흩어져 있는 자발적인 개발자들이 공동으로 응용 프로그램을 개발해 나가는 과정에서 인터넷을 거의 필수 요소였기 때문이다. 개발자들은 프로그램의 버그를 찾고, 패치를 하고, 컴파일 해서 새로운 버전을 만드는 과정을 스스로의 규칙에 따라 해 왔다. 여기에는 어떠한 강제 요소도 없고 오직 자발적이고 지속적인 참여만 있을 뿐이다.

이러한 개인적인 공헌을 통해 발전하는 오픈 소스 문화는 인터넷 기술 문화를 바꾸기 시작했다. 특히, 펄(Perl), 아파치(Apache), PHP, 파이썬(Python) 등 성공한 오픈 소스들이 나오기 시작하면서 MySQL, 모질라(Mozilla), 오픈 오피스(OpenOffice) 등 기업이 만든 소프트웨어를 오픈 소스 커뮤니티에 맡기는 현상이 벌어지기 시작했다. 오픈 소스에 참여하는 개발자들이 늘어나면서 커뮤니티가 거대한 커뮤니티가 생기기도 했으나, 여전히 개인의 자발적 참여에 기반을 두고 있었으며 지금도 마찬가지이다.

자발적 참여를 강조하는 오픈 소스 문화는 블로그(Blog), 위키퍼디아, 딜리셔스와 플리커 같은 서비스를 만드는 데 일조하였다. 왜냐하면, 초기 사용자들은 이른 바 Geek 문화에 익숙한 사람들이었기 때문이다. 초기에는 이러한 소수의 자발적인 참여자들에 의해 양질의 데이터를 쌓아갔으며 계속적인 사용자의 유입과 참여에도 불구하고 자체적인 정화 능력을 가지기도 했다. 현재는 사용자들이 많이 늘어났지만 초기 사용자들이 만들었던 양질의 데이터를 구축하려는 참여의 규칙이 계속 적용되고 있다.

오픈 소스, 가벼운 개발 플랫폼 공급
컴퓨팅 기술의 진화를 살펴 보면, 메인 프레임에서 클라이언트/서버 그리고 인터넷으로 발전해 왔다. 인터넷 시대에서는 자바(Java)와 닷넷(.Net)이 주요 개발 플랫폼이 되었고 웹 서버와 미들웨어 데이터베이스를 잇는 3-tier 시스템이 대세를 이루었다. 그러나, 대표적인 웹2.0 기업들은 오픈 소스가 제공하는 가벼운 개발 플랫폼을 이용하기 시작했다. 대용량 웹 서비스를 만들기 위해 적은 비용을 가진 다량의 웹 서버를 그리드(Grid)형식으로 배치하고 이를 데이터베이스와 병렬적으로 연결하는 방식이다. 이 때 사용하는 주요 솔루션이 바로 오픈 소스이다.

일단 웹 서버는 가격을 저렴하게 하기 위해 인텔 CPU에 리눅스나 FreeBSD 같은 운영 체제를 사용한다. 응용 프로그램은 개발하기 위해서는 PHP를 비롯해 파이썬(Python)이나 펄 (Perl)같은 스크립트 언어가 부쩍 인기다. 자바나 C, C++ 같은 전통적인 프로그래밍 언어보다 배우기도 쉽고 개발과 유지•보수도 훨씬 간단하기 때문이다. 굳이 닭 잡는데 소 잡는 칼을 꺼낼 필요가 없기 때문이기도 하다. 리눅스와 아파치, MySQL 등 공개 소프트웨어를 조합한 램프(LAMP)나 루비 온 레일즈(Ruby on Rails) 같은 개발 플랫폼은 기존의 자바나 닷넷 프레임을 위협하는 지경까지 왔다.

이들 오픈 소스 개발 플랫폼의 장점은 무엇보다도 가볍고 빠른데다 라이브러리가 많고 꾸준히 업데이트되고 있다는 것이다. 특히 구글, IBM, 썬, 오라클 등 대형 IT 기업 조차도 오픈 소스를 자신들의 비즈니스에 연결 시키고 개발자들을 대거 지원하기 시작하면서 과거와 달리 기능과 성능도 크게 개선됐다. 이러한 변화는 수년 전부터 생긴 변화들이다. 웹 2.0 시대에 들어서면서 오픈 소스를 기반한 가벼운 개발 환경이 더욱 중요하게 된 것은 무엇 보다 빠르게 개발하고 이를 사용자들에게 선보일 수 있기 때문이다. 또한, 기능 개선 속도도 빠르다. 이러한 오픈 소스 프레임웍과 두꺼운 개발자 층이 존재함으로 인해 혁신적인 서비스와 기능이 빠르게 사용자들에게 선보이게 되는 것이다.

오픈 소스, 지적 재산권의 공유
오픈 소스의 대표적인 특징은 소스 코드를 공적(Public)으로 이용 가능한 저작권 체계에 있다. 소스 코드가 공개되어 있을 뿐 아니라 이를 몇 가지 규칙만 지키면 상업적 용도로 얼마든지 사용할 수 있다. 상용 소프트웨어들이 프로그램의 수정과 기능 개선을 벤더(Vendor)에게만 돌리는 데 비해 오픈 소스는 커뮤니티 개발자들을 통해 향상을 이루게 된다. 따라서 오픈 소스의 중요성은 소스 코드에 있지 않고 상향 평준화된 소프트웨어 위에서 나오는 서비스에 가치가 있다고 할 수 있다.

유사하게 웹2.0의 대표적인 서비스라고 하면 바로 블로그(Blog)에도 비슷한 일이 벌이지고있다. 블로그는 개인에 의해 만들어지는 저작물이다. 블로그가 널리 서비스된 것은 RSS를 통한 저작물의 자유로운 배포와 자유로운 인용을 통한 커뮤니케이션이다. 만약 블로그 저자들이 자신의 저작권을 주장하면서 허가를 받도록 했다면 불가능했을 지도 모른다. 블로그에 쓰인 글이나 저작물에서 사용되는 크리에이티브 커먼즈(Creative Commons)라는 저작권은 실제로 오픈 소스의 것과 매우 닮았다. 많은 블로거들이 CC 라이센스를 채택하고 있는 추세이다. 저작물을 자유롭게 이용하는 이러한 문화적인 동인으로 인해 좀 더 자유롭고 더 향상된 정보 공유가 가능해 지고 있는 것이다.


작년 웹2.0 컨퍼런스에서 모질라 재단의 미첼 베이커(Mitchell Baker)와 썬마이크로시스템즈의 조나단 슈왈츠(Jonathan Schwartz)는 오픈 소스와 웹 2.0의 관계에 대해 열띤 토론을 벌였습니다. 그들은 오픈 소스는 개발자의 문화이지만 소스 코드의 공개와 개발이라는 것 이상의 의미가 있다고 이야기 했습니다.

오픈 소스에서 내재된 자발적 참여, 공유를 기반한 커뮤니티 문화가 인터넷 기업을 바꾸고 있고, 기술적인 혁신을 이루고 있다고 말이죠. 이러한 문화적 동인이 웹2.0의 많은 혁신 기업과 서비스들을 발생시킨 원동력이 되었습니다. 바로 오픈 소스는 웹 2.0의 어머니입니다.

여러분의 생각

  1. 서상현 2006 June 02 14:29

    저는 이 글에 동의하지 않습니다. 오픈 소스와 웹 2.0은 참여를 바탕으로 한다는 점에서는 같을 지 모르지만, 중요한 차이가 있습니다.

    오픈 소스는 실력 위주 사회입니다. 저는 “민주적으로” 운영되는 오픈 소스 프로젝트를 별로 본 일이 없습니다. 그러나 웹 2.0은 민주주의 사회에 가깝습니다. 그것이 다수의 지혜를 보여주든, 우매한 군중을 보여주든 말이지요.

  2. 서상현 2006 June 02 14:39

    IETF(인터넷 엔지니어링 태스크 포스)에서 David Clark가 말한 다음 문장을 생각해 봅시다.

    “We reject kings, presidents and voting. We believe in rough consensus and running code.”

    인터넷의 정신은 왕도 대통령도 투표도 없이 합의와 코드가 지배하는 세상이었는지 모르지만, 웹 2.0에서는 어림도 없는 이야기입니다.

  3. 서상현님의 의견에 공감합니다만 제가 이야기 하고자 하는 것은 웹2.0의 대부분의 동인이 오픈 소스에서 왔다는 것입니다. 양 사회 문화적 특성에 대한 부분은 아직 저는 잘 모르겠습니다.

의견 쓰기

이름* 이메일* 홈페이지(선택)