* 이 글은 원저자의 허락 하에 요약, 번역되었습니다. - 2006년에.
공개 소스 프로젝트의 혁신성
(Innovativeness of open source software projects)
원저자: Krzysztof Klincewicz
kklinc@poczta.onet.pl
School of Innovation Management
Tokyo Institute of Technology
W9-108, Tokyo, Meguro-ku, O-okayama 2-12-1, Japan
번역: 이 민석 (한성대학교 컴퓨터공학과 교수, minsuk@hansung.ac.kr)
요 약
이 보고서는 공개 소스 프로젝트의 혁신성에 관한 논쟁을 SourceForge.net에서 가장 활성화된 500개의 프로젝트들의 혁신성을 비판적으로 검증함으로써 다루고 있다. 연구에서는 우선 프로젝트의 혁신성을 새로운 발명, 기술 또는 플랫폼의 수정, 시장 혁신 등으로 분류한다. 이 연구 결과 알아낸 중요한 사실은 혁신적인 프로젝트에 대한 개발자와 사용자들의 높은 관심과는 별개로, 샘플로 이용된 프로젝트들의 기술적인 새로움이 상대적으로 크지 않다는 점이다. 이 보고서는 커뮤니티에서 시작되는 공개 소스 프로젝트들의 혁신성을 제한하는 요인들을 살펴보고, 상업적인 소프트웨어 영역에서 벤처 캐피털이 하는 역할을, 공개 소스 영역에서 할 수 있는 아이디어 브로커 조직의 필요성을 주장한다.
1. 공개 소스 소프트웨어와 혁신성
공개 소스 운동이 주장하는 것 가운데 하나는 회사에서 이루어지는 비공개 개발보다는 공개 소스 개발이 혁신적인 아이디어를 더 빠르게 수용할 수 있다는 것이다[1]. 하지만 모든 공개 소스에서 혁신성이 발견되는 것은 아니며, 많은 유망한 응용 프로그램에 대한 개발 노력들이 프로그래머들의 기여 부족으로 중단되고 있다. 또 공개 소스 프로젝트들이 명성 또는 낮아진 가격으로 다져진 탄탄한 사용자 기반의 의해 유지되는 상업적 결과물 보다는 높은 비율로 도태되거나 시장에서 사라진다. 부가적으로, 커뮤니티에서 시작된 프로젝트들과는 달리, 회사들이 자신들 소프트웨어의 동작 플랫폼을 확장하거나, 예전 소스를 관리하려는 차원에서 소스를 개발자 커뮤니티에 넘기는 방법으로 공개 소스 모델을 채택하는 경우도 있으며, 이런 경우에는 상대적으로 낮은 혁신성을 가지게 된다.
시작 단계에서 소개되는 공개 소스 소프트웨어에 대한 혁신성은 대개 이상적이거나, 적어도 논란의 여지가 있는 수준은 되지만, 많은 프로젝트들은 특정 플랫폼을 지원하거나, 이미 상용 소프트웨어에 있는 기능을 지원하는 수준의 다른 또 하나의 ‘me-too’ 결과물로 끝나는 경우가 많고, 이전에 없었던 새로운 것을 만들어낸 공개 소스 프로젝트는 불과 몇 개 되지 않는다. 하지만 많은 연구에서 모든 공개 소스 개발을 혁신적으로 분류하고, “공개 소스 개발”과 ‘공개 소스 혁신(innovation)’이란 두 용어를 구분 없이 사용하는 경향이 있다[2][3][4][5][6][7]. 이런 용어상의 혼란은 모든 공개 소스 프로젝트가 혁신적이라는 잘못된 인식을 낳았고, ‘혁신’이란 용어가 소프트웨어 산업에서만 사용되는 전혀 다른 뜻을 가진 기술 용어로 바뀌는 위기를 맞았다[8].
공개 소스 소프트웨어의 혁신성에 관한 위와 같은 편향된 해석과는 달리 이미 있던 것들을 모방하는 것과 전혀 새로운 것을 만드는 것을 구별하려는 시도도 있었다. Tuomi는 “리눅스와 같은 프로젝트에서 혁신성은 없으며, 그저 상업적인 운영체제를 새로 구현한 것 뿐이다.”라고 했으며[1], 어떤 연구에서는 의도적으로, 모든 공개 소스 개발을 다루어 일반화하지 않고, 공개 소스 커뮤니티의 성과 가운데 확실히 혁신적인 것들만을 나열하기도 하였다[9]. 공개 소스 운동의 발전 과정을 다룬 저서 ‘성당과 시장’에서도 Raymond는 혁신이란 개념의 과도한 사용을 피했고, 마지막 절에서 커뮤니티 중심의 공개 소스 개발 노력뿐만 아니라, 대규모 회사에서 진행되는 전통적인 개발도 혁신적인 결과물이 나올 것이라는 보장은 없다고 하였다. 그는 혁신의 필요조건은 항상 ‘한 사람의 머리에서 나오는 훌륭한 아이디어’이며, 그것은 보통 대학의 연구나, 혁신적인 회사에서 나온다고 했다[10].
2. 소프트웨어 산업에서의 혁신성의 정의
소프트웨어 산업에서의 혁신성에 대해서는 다양한 의견이 있을 수 있지만, 이 연구에서는 혁신성을 <표 1>과 같이 정의한다. 혁신성은 기술적인 측면과 시장적인 측면을 고려하여 정의하는데, 먼저 기술적인 측면은 전혀 새로운 것, 특정 플랫폼에 새로운 것과 기존 기술 세 가지로 분류가 가능하고, 시장도 새로운 시장과 기존 시장으로 분류할 수 있다. <표 1>에 의거하여 소프트웨어의 혁신성은 다음과 같은 네 가지 부류로 나뉜다.
<표 1> 소프트웨어의 혁신성 분류
- 근본적인 발명 : 기존에 없었던 것 새로운 소프트웨어
- 기술의 수정 : 기존에 있던 소프트웨어에 사용되었던 기술의 의미 있는 진보
- 플랫폼의 수정 : 새로운 플랫폼에 다른 플랫폼에만 사용 가능하던 소프트웨어의 이식
- 시장 혁신 : 기존 기술을 사용하여 새로운 용도를 만들어낸 소프트웨어
위 가운데 근본적인 발명이 아닌 것들은 전혀 새로운 것을 만들어내지는 않았지만, 기존의 설계를 개선하거나 응용 프로그램의 새로운 사용 영역을 만들어 냄으로써 ‘창조적 모방’ [11]으로 넓게 분류할 수 있다.
위의 분류 방법에도 불구하고, 어떤 소프트웨어가 어디에 속하는지를 정의하기란 분명 쉽지 않은 일이다. 모든 소프트웨어는 사용자 인터페이스가 새롭다거나, 설치 과정이 바뀌었다거나, 특정 기능을 수행하는 방법이 바뀌었다거나 하는 독창적인 요소가 포함되어있기 마련이다. 또한 새롭다는 것도 근본적인 변화, 새로운 기능, 독창적 결과물과 별로 중요하지 않는 수정 사이의 어딘가로 정의되기 때문이다. 따라서 어떤 소프트웨어에 추가된 새로운 기능이 그 소프트웨어 전체를 혁신적으로 만드는지에 관한 판단은 다소 주관적일 수밖에 없다. 이 연구에서는 프로젝트 자체의 혁신성을 판단할 뿐, 공개 소스 프로젝트에서 혁신적인 개별 기능이 추가된 것은 혁신적이지 아닌 것으로 정의한다. 예를 들어, KDE에 철자 검사기를 접목하여 모든 응용 프로그램이 그것을 이용할 수 있도록 했다거나, KDE, GNOME이 투명한 윈도우를 지원한다거나, Red Hat이 RPM 포맷을 지원한다거나, 각 리눅스 배포판들이 다양한 시스템 설정 도구를 지원한다거나 하는 것들은 각 프로젝트의 주요한 목적에 해당되지 않고 새롭거나, 진보된 기술도 아니며, 다른 경쟁 소프트웨어에서도 쉽게 도입할 수 있는 것들이기 때문에 혁신적이라고 볼 수는 없다. 이 연구에서 혁신성을 판단하는 가장 중요한 기준은 프로젝트에 참가한 개발자들에 의해 정의된 프로젝트의 성격으로서, 프로젝트 관리자에 의해 작성된 프로젝트 설명(positioning)에 관한 글을 분석한 결과이다. 그 이유는 어떤 독창적인 기능이 그 프로젝트의 혁신성에 매우 중요한 의미를 갖는다면, 당연이 그에 관한 정보가 프로젝트 소개 글에 나와 있기 마련이기 때문이다.
소프트웨어 프로젝트 결과물의 혁신성과는 별도로 공개 소스 프로젝트의 경우, 프로젝트 진행 과정(소프트웨어 개발 프로세스)과 비즈니스 모델(결과물을 배포하고, 지원하는 방식)도 혁신적인 경우가 많지만 이 연구에서는 그 부분은 고려되지 않았다.
3. 연구 샘플
공개 소스 프로젝트의 혁신성을 분석하기 위한 이 연구는 VA 리눅스 시스템사가 설립한 SorceForge.net에 등록된 프로젝트들을 대상으로 한다. SourceForge.net은 공개 소스 프로젝트들을 위한 가장 포괄적인 포털로서, 공유 소스 저장소, 토론 방 등, 프로젝트 관리를 위한 필수적인 도구들을 소프트웨어 개발 커뮤니티에 제공하고 있다. 비록 소수의 프로젝트와 개발자들만 활발하게 활동하지만, 2005년 7월 현재 백만이 넘는 등록 사용자와 십만이 넘는 프로젝트가 이 포탈에 등록되어 있다. 또 SourceForge는 프로파일을 기반으로 프로젝트를 검색하거나, 다운로드, 페이지 뷰, 사용 통계, 게시물 수 등을 바탕으로 정기적으로 가장 활성화된 프로젝트들의 목록을 만들어 제공한다.
<표 2> 전체 프로젝트와 선택된 프로젝트의 참여자 수 비교
(*SourceForge에 등록된 나머지 89,557개의 프로젝트는 활성화되지 않은 것이며, 활성화된 17,139개 중 가장 활발한 프로젝트 500개가 이 연구의 샘플로 선택되었다. 추정 개발자 수는 복수 개의 프로젝트에 참여하는 경우, 중복 계산됨으로써 실제보다 큰 값일 수 있다.)
이 연구에서는 500개의 매우 큰 표본을 분석하였다. 500개의 프로젝트는 1999년 SourceForge가 만들어진 이후, 가장 높은 활성화 정도를 보인 것들이다. <표 2>는 SourceForge에서 활성화된 프로젝트 전체와 연구의 샘플로 선택된 프로젝트의 개발자 수를 비교한 것이다. SourceForge가 공개 소스 프로젝트들을 모아놓은 대표적인 곳이지는 하지만, 모든 공개 소스 커뮤니티의 결과물들을 수용하지는 못한다. 리눅스 커널 및 배포판, KDE, GNOME과 같은 GUI, 웹 브라우저 모질라, 인터넷 서버 아파치, 그리고 오픈 오피스 등 많은 성공적인 프로젝트들은 별도의 개발자 웹 사이트를 가지고 있다. 또 여러 활성화된 프로젝트들도 SourceForge를 단지 소스 저장소로 이용할 뿐, 지원을 포함한 다른 모든 트래픽은 별도의 웹 사이트로 전송되어 처리되어 SourceForge의 활성화 통계 방법에 따른 순위에서 상위에 기록되지 못했다(예를 들면 유명한 컨텐트 관리 플랫폼인 Plone이나 e-러닝 시스템 Moodle 등이 이런 부류에 속하여 이 연구의 샘플에 포함되지 못했다.) 샘플 선택에 영향을 끼친 요소 가운데 또 다른 하나는, 많은 프로젝트가 아이디어를 모으는 과정이나 실제 프로젝트 시작 일보다 훨씬 뒤에 SourceForge에 등록됨으로써, 가장 활성화된 시기를 놓쳐 샘플 선정 과정에서 제외될 수도 있다는 것이다.
4. 분석 결과
<표 3>과 <그림 1>부터 <그림 5>까지는 공개 소스 프로젝트 가운데 분석된 샘플들을 설명하기 위한 통계 자료이다. 각 그래프에는 전체 샘플과 혁신성이 있는 프로젝트가 비교되었다. 조사 결과, 윈도우즈와 리눅스가 가장 많이 사용되는 플랫폼이며, C/C++, 자바, PHP, Perl이 개발 언어로 주로 사용되었음을 알 수 있다. 대부분의 프로젝트는 비교적 적은 수의 개발자에 의존한다. 개발자가 한 명인 프로젝트가 9%였고, 22%가 2-4명이었다. 반면에 개발자 수의 평균은 12.21 명으로 전체 SourceForge 프로젝트들의 평균인 2.0067명보다는 훨씬 많다[12]. 기존 연구[13]에서의 결과와는 달리 가장 활발한 프로젝트들은 개인이 아닌 규모가 있는 개발자 커뮤니티에 의해 진행된다는 것이다. 또 놀랍게도 모든 분석된 프로젝트들이 1999년과 2001년 사이에 등록되었으며, 그 이후 4년 동안에 등록된 프로젝트 가운데 가장 활성화된 프로젝트 그룹에 포함된 것은 하나도 없었다.
<그림 1> 개발자 수 분포
<표 3> 선택된 500개의 프로젝트에 대한 통계
<그림 2> 기능 요구 수 분포
<그림 3> 지원 요구 수 분포
<그림 4> 포럼의 메시지 수 분포
<그림 5> 코드 저장소에 코드를 추가한 회수 분포
<표 4> 500개 샘플에 대한 혁신성 분류 결과
<표 4>는 500개의 프로젝트들을 앞서 제시한 기준에 의해 분류한 결과이다. 500개 가운데 64개(12.8%)의 프로젝트만이 기존에 있던 것을 그대로 모방하지 않아 혁신성이 있는 것으로 분류되었다. 그 64개의 목록은 부록에 나와 있다. 나머지 436개의 혁신성이 없는 프로젝트들은 프로젝트 설명에 “비슷한”, “하나의”, “대치”, “(다른 소프트웨어의) 개선”, “또 다른” 이란 단어를 자주 사용하였다. 특히 중복된 개발은 매우 심각하다. 기존의 소프트웨어와 유사한 기능을 수행하는 “또 다른 (yet another)" 응용 프로그램은 공개 소스 개발 커뮤니티의 부족한 개발 자원에 대한 불필요한 경쟁을 유발하여, 효과적인 자원의 사용을 막는다. 이런 현상은 프로젝트의 진행 방향에 만족하지 않는 몇몇 개발자들이 소스 코드를 분기하여[14] 원래 프로젝트와 경쟁 관계에 있는 다른 프로젝트들이 생겨나기도 하고, 기존 공개 소스 프로젝트를 개선하기 보다는 더 좋은 어떤 것을 구현해보려는 생각 때문이기도 하다. 공개 소스 소프트웨어 세계에서는 인수 합병이 일어나지 않으며, 경쟁 관계에 있는 프로젝트에서 인력이 넘어오는 일은 거의 없는 현상이지만, 상용 소프트웨어를 개발하는 회사들 사이에는 비슷한 제품군을 만드는 경우, 회사의 인수, 연합 또는 기술의 라이선싱을 통해 제품을 통합하는 경우가 많다.
공개 소스 프로젝트에서의 의사 결정 과정은 매우 공식화된 편이이서 새로운 개념의 도입을 어렵게 한다. 따라서 어떤 아이디어를 구현하도록 의사 결정권자를 설득하는 것보다는 코드를 분기하는 편이 더 쉽다. 그런 예 가운데 하나가 Samba에서 분기한 Samba TNG (The Next Generation)이다. 1999년, 혁신적인 새로운 구조에 대한 자신들의 제안이 Samba 프로젝트 리더에 의해 거부되자, 그 구조를 지지하던 개발자들에 독립적인 프로젝트로 분기하는 것 이외에는 다른 선택의 여지가 없었다[14]. 6년간의 개발 끝에 Samba TNG는 업체의 지원도 없고, 리눅스 배포판에도 포함되지 않는 소수만의 프로젝트로 남았다. 또 공개 소스 프로젝트의 의사 결정 과정은 일반 회사들의 경우와 같이 복잡하기도 하다. 아파치 프로젝트는 이메일에 의한 투표를 하며, 모질라는 특정 모듈을 책임지는 담당자를 둔다. 오픈 오피스는 제안서 제출, 투표, 6개월의 관찰, 그리고 인큐베이터 또는 승인을 구분하는 단계를 거친다. 더구나 제안자 자체도 프로젝트 기여자로서 이미 커뮤니티에 알려진 사람이어야 한다. 이런 제안 과정의 공식화는 독창적인 아이디어가 기존 프로젝트에 수용되는 것을 막아 혁신을 어렵게 한다. 이런 문제에 대한 가능한 해결책은 플러그인 구조를 채택하여 기존 플랫폼을 보완하는 플러그인 소프트웨어를 개발하는 것과 그 플러그인의 사용을 권장하는 포털을 허용하는 것이다.
이 연구 결과, 독창적인 공개 소스 프로젝트가 매우 낮은 비중을 차지한다는 것을 알 수 있다. <표 4>에서 볼 수 있듯이 500개의 프로젝트 가운데 오직 5개만이 근본적인 발명으로 분류될 수 있으며, 4개는 기술의 수정, 3개는 시장 혁신, 나머지 52개가 이미 한 플랫폼에 있던 것을 다른 플랫폼에 구현한 것이다. 이 플랫폼 변경의 대상으로 가장 많이 사용된 것은 리눅스이다. 대개는 윈도우즈 사용자에게는 이미 친숙한 기능을 리눅스에 구현하거나, 새로운 표준과 하드웨어에 대한 지원 등이 이에 속한다. 이 연구의 실망스런 결과에도 불구하고, 실제로 혁신적인 공개 소스 프로젝트들은 상당히 많이 존재하며, 대부분은 SourceForge가 아닌 곳에서 개별 프로그래머에 의해 개발되는 것들이다. 공개 소스 커뮤니티에서는 아이디어를 가진 사람과 개발자 사이의 가치 창출을 위한 협력에 대한 기대가 적기 때문에, 아이디어의 창시자가 개발을 직접해야하는 경우가 많다. 또 이미 상용으로 다른 플랫폼에 개발되어, 증명된 것을 다시 구현하는 일은 새로운 것을 만드는 일보다 어렵지 않기 때문이다.
<표 5>는 프로젝트 분류에 따른 통계를 보여주고 있다. 혁신성이 있는 프로젝트는 ‘me-too’ 프로젝트에 비하여 개발자들에게 인기가 더 많다. 플랫폼의 수정에 더 많은 개발자들이 있는 것은 새로운 발명의 경우 그 프로젝트의 이득을 이해하기 어렵기 때문일 가능성이 높다. 참가한 개발자 수, 기능 및 지원 요구 수를 비교해 보면, 프로젝트 참가에 관한 개인의 특권 의식에 관한 에릭 레이몬드의 주장: “개발자들은 ... 기존 소프트웨어를 개선하는 'me, too' 프로젝트가 되기를 거부하며, 파격적으로 혁신적인 프로젝트로부터 뭔가를 더 얻는다. 또 저자 이외에는 아무도 이해할 수 없거나, 수요가 없는 소프트웨어는 명성을 얻기 쉽지 않으며, 기존 프로젝트에 기여를 함으로써 더 자신의 이름을 알리는 것이 사람들에게 새로운 것을 알리는 것보다 쉽다.”[15]을 설득력 있게 만든다.
<표 5> 프로젝트 분류별 통계 (* SF는 SourceForge.Net 자체 프로젝트를 의미)
혁신에 대한 자극은 공개 소스 커뮤니티에 대한 또 하나의 도전 과제이다. <표 6>에서 볼 수 있듯이, 혁신성이 있는 프로젝트에 대한 분석 결과 새로운 발명에 해당하는 프로젝트들의 40%가 회사로부터 시작된 프로젝트였고, 기술의 수정에 해당하는 프로젝트의 50%는 학술 연구로부터 시작되었다. 반면에 커뮤니티에서 시작된 프로젝트의 대부분은 플랫폼 변경이나 시장 혁신에 해당되는 것이었다.
<표 6> 혁신성이 있는 프로젝트의 시작 주체
공개 소스 커뮤니티 밖의 개인이나 회사가 프로젝트에 참가하면서, 새로운 기능이 어떤 때는 ‘선물’처럼 주어지는 때도 가끔 있다[7]. 그러나 그러한 발명은 실제로 공개 소스 개발 모델에 의해 만들어진 것은 아니다. 이와 유사한 것으로 상업적 소프트웨어 회사가 자신의 개발을 공유하고 커뮤니티가 유지하고 수정을 할 수 있도록 하는 ‘소스 공개’도 있다. 많은 회사는 공개 소스 라이선스와 개발자 커뮤니티를 자신들의 상품화 전략과 병행하여 이용하고 있다: 리눅스 회사인 RedHat, CRM 공급자인 SugarCRM, 데이터베이스 회사 MySQL AB, 저장 구조의 개척자인 HiSpread 등이 이에 속한다. 어떤 회사는 무료 소프트웨어를 제공하지도 않으며, 사용자에게 추가 기능에 대한 비용을 요구하며, 자신들의 혁신적인 개발이 공개 소스 프로젝트의 전형적인 ‘시장’에서는 볼 수 없는, 명백한 금전적 동기와 연관되어 있기도 하다. 따라서 공개 소스 라이선스가 부수적으로 사용된 상업적 목적의 소프트웨어와 실제 커뮤니티에 의해 진행되는 개발을 혼돈해서는 안 된다. 둘 사이엔 어떤 기술을 받아들이거나, 개발 방향에 관한 의사 결정 과정, 혁신의 동기에 차이가 있다.
‘진짜’ 공개 소스 프로젝트는 대학에서 시작된 것이 많다. 리눅스 토발즈가 취미로 개발한 Linux나, GIMP, XenSource, Weka등이 그러하며, SourceForge에는 대학의 연구 활동의 부산물로 개발된 수 백 개의 프로젝트가 존재한다. 그 프로젝트들 가운데 많은 것은 참신한 아이디어를 구현하고 있지만, 동시에 좁은 연구 영역에 한정될 뿐 실용적이지는 않다. 따라서 해당 연구 인력에 의해 유지되어 활성화 지수 통계 순위에는 거의 잡히지 않는다. 또 그들 대부분이 커뮤니티 개발 모델과는 거리가 있으며 개발에 소요되는 비용도 다른 곳에서 조달되며, 공개 소스 커뮤니티와 상관없는 목적에 의해 움직인다. 따라서 이런 프로젝트들은, 목적이 좀 다르지만, 앞서 이야기한 공개 소스 라이선스를 부수적으로 채택한 회사의 경우와 별로 다를 것이 없다. 많은 학계의 아이디어는 흥미롭고, 다른 개발자들에게 영감을 줄 수도 있지만, 실제로는 기술 이전을 위한 메카니즘 부재로 인하여, 그렇게 되는 경우는 많지 않다. 그 한 예가 Marburg 대학의 데이터 바이오닉스 연구 그룹이 관리하고 있는 MusicMinor 프로젝트이다. 이 소프트웨어는 음악 컬렉션에서 유사성을 바탕으로 파일을 모으는 알고리즘을 구현하고 있어, 만일 유사한 연구가 애플이나 마이크로소프트에서 이루어졌다면, 사용자에게 듣기에 유사한 음악에 대한 재생 목록을 지능적으로 만들어내는 기능을 새로운 미디어 플레이어에 넣었을 수도 있을 것이다. 그러나 공개 소스 프로젝트로 진행된 MusicMinor는 거의 알려지지 않았고, SourceForge에서의 활동 지수도 낮으며 많은 멀티미디어 지향의 프로젝트에 채택되지도 않았다. 이처럼, 공개 소스 개발 모델이 개발자들에게 채택된다 해도 공개 소스 커뮤니티에 속하다는 것이 실질적인 이득을 가져다주지 않은 경우가 있으며, 심지어는 그런 기술의 개발이 상업적 목적의 회사에서 이루어졌더라면, 훨씬 더 의미 있는 진보가 이루어졌을 가능성이 높을 수도 있다. 이런 것이 효과적으로 기술을 발전을 촉진하는 메커니즘의 부족으로 혁신성이 제한되고 발명가들의 참여를 주저하게 만드는 공개 소스 모델의 위험성을 설명한다.
5. 결론
매우 혁신적이면서도 성공적인 일부 프로젝트도 있지만, 많은 새로운 것을 추구하는 선구자들은 혁신성의 확산에 대한 확신의 부족 때문에, 자신들의 아이디어를 구현하는데 공개 소스이외의 다른 대안을 찾고자 하는 경향이 많다. 공개 소스 프로젝트에 대한 분석을 통해 우리는 많은 ‘me-too' 프로젝트가 있을 뿐, 혁신성이 있는 프로젝트가 그다지 많지 않다는 것을 발견하였다. 기술이 있는 큰 회사들은 새로운 회사들을 사들이는 방법으로 혁신성을 유지[16]할 여력이 있지만, 커뮤니티 운동에서는 자신들이 직접 개발하거나 회사들을 설득하여 기존 소프트웨어의 소스를 공개하도록 만드는 것을 통해서만 가치를 창조할 수 있다.
모든 것에 첫발을 디디는 사람들에게 개발 비용과 모든 위험을 혼자 안아야 한다는 것은 분명한 단점이지만, 기술을 발전시키는 시스템은 새로운 개념의 지속적인 유입 없이는 동작하지 않으며, 공개 소스 커뮤니티는 상대적인 기술적인 수준의 유지를 위해 지속적인 혁신을 필요로 한다. 상업적 소프트웨어와 공개 소스 소프트웨어는 현재 서로 종속적인 관계를 가지고 있다. 기술의 변화는, 많은 비용과 시간이 필요한 연구로부터 나오는 새로운 아이디어를 필요로 한다. 또 마이크로소프트라는 공동의 적과의 전쟁을 위해 매우 활동적인 개발자들을 쉽게 모을 수 있었다는 것과, 최근 마이크로소프트의 닷넷 기술을 마이크로소프트가 만들지 않은 운영체제에 공개 소스로 이식하는 Mono 프로젝트는 매우 역설적이다. 1994년에서 1999년에 걸쳐 마이크로소프트는 COM 구조를 전파하여 표준으로 만들고, 다른 플랫폼에도 적용하기 위해 매우 많은 자금을 투입했다. 하지만, 그 다음 세대 기술인 닷넷은 마이크로소프트에게는 비용 부담이 없이 공개 소스 커뮤니티가 그 역할을 담당하고 있다. 즉, 공개 소스 개발자들이 이미 완성된 기술을 (다른 플랫폼에) 복제하려는 것은 실질적으로 공개 소스 운동에 참가하지 않거나 심지어는 공개 소스에 적대적인 회사들을 이롭게 하는 것이 될 수도 있다. Mono는 여러 다른 플랫폼에서 이루어져야 할 작업을 공개 소스로 진행한다는 점에서 의미롭지만, 대부분의 공개 소스 프로젝트가 이미 완성된 소프트웨어를 리눅스에 이식하는 작업에 치중한다면, 공개 소스 운동이 편리성을 추구하는 것으로 그 활동 범위가 한정될 수 있으며, 새로운 아이디어는 그런 점을 의식하고 있는 회사에 의해서만 만들어질 수 있을 것이다. 공개 소스 개발의 의도하지 않은 효과 중의 하나는 상업적 소프트웨어 개발 회사들이 공개 소스 커뮤니티에 의한 플랫폼 확산 노력에 힘입어, 이전보다 더 새로운 개발에 노력하고, 사용자들이 그 기술에 묶이도록 만든다는 점이다[17].
이런 해석이 공개 소스 운동이 전혀 혁신성이 없다는 것을 의미하지는 않는다. 사실 공개 소스 커뮤니티가 주도하는 혁신적인 프로젝트들도 매우 많다. 문제는 새로운 소프트웨어의 개발로 이어지는 아이디어의 유입이 아니라, 어떤 혁신적인 아이디어를 널리 알리고, 개발자들을 끌어들여 새로운 응용 프로그램을 만들어내는 능력이다. 공개 소스 개발자들은 뛰어난 소프트웨어 공학적 도구들과, 기술 지원을 위한 그룹과 메커니즘을 가지고 있으며, 개발 기간을 단축시키는 코드 재사용을 장려하고 있지만, 프로젝트를 선전하기 위한 프레임워크는 가지고 있지 못하다. 커뮤니티 포털인 Freshmeat.net은 소프트웨어와 관련된 새로운 아이디어들을 모으고, 알기기 위해 만들어졌지만, 지금은 프로젝트 검색 엔진, 전문적인 기사와 새로운 소프트웨어 릴리즈를 나열함으로써 같은 회사에 의해 만들어진 SourceForge와 비슷한 역할을 담당하고 있다. 상업적 소프트웨어 개발자들은 마케팅, 사업망 확장, 그리고 자금 지원까지를 벤쳐 캐피털을 통해 해결할 수 있다. 공개 소스 커뮤니티에게 가장 필요한 것이 기존 개발품을 쫓지 않고, 혁신적인 것을 시작할 수 있도록 도와주는, 즉, 벤처 캐피털과 같은 역할을 하는 ‘아이디어 브로커’이다. 공개 소스 운동의 특성 상, 자금 지원보다는 새로운 아이디어에 대한 객관적인 평가 그리고 사용자의 요구, 시장에서 프로젝트의 자리매김, 다른 프로젝트와의 가능한 협력과 같은 사업적 조언, 또 유망한 프로젝트들을 널리 알려 분산된 개발자 커뮤니티를 형성할 수 있도록 해주는 역할 등이 더 필요하다. 공개 소스 활동에 대한 스폰서를 적극적으로 찾아주는 일을 수행하는 전담 공개 소스 재단의 설립을 통해서 이 문제를 해결할 수도 있을 것이다. 또 별로 기술적으로 진보되지 않았거나 쓸모없는 기술을 공개하며 공개 소스 커뮤니티를 지원하는 것처럼 위장한 채 사실은 자신들의 코드가 커뮤니티에 의해 유지 보수되거나 개선되기를 바라는 지금의 대형 IT 회사들이, 공개 소스로 개발되는 혁신적인 프로젝트들을 실질적으로 지원할 수도 있을 것이다.
참고 문헌
[1] Tuomi, I., The Future of Open Source, [in:] Wynants, M., Cornelis, J (2005) How Open is the Future? VUB Brussels University Press, Brussels, pp. 429-459, 2005.
[2] Hippel, E. von, Innovation by User Communities: Learning from Open-Source Software. MIT Sloan Review, 42, 4, pp. 82-86, 2001.
[3] Johnson, J.P., Open Source Software: Private Provision of a Public Good. Journal of Economics & Management Strategy, 11, 4, pp. 637–662, 2002.
[4] Dalle, J.M., Jullien, N., ‘Libre’ software: turning fads into institutions? Research Policy, 32, pp. 1–11, 2003.
[5] Harhoff, D., Henkel, J., Hippel, E. von, Profiting from voluntary information spillovers: how users benefit by freely revealing their innovations. Research Policy, 32, pp. 1753–1769, 2003.
[6] Hippel, E. von, Krogh, G. von, “Private-Collective” Innovation Model: Issues for Organization Science. Organization Science, 14, 2, pp. 209-223, 2003.
[7] Krogh, G. von, Spaeth, S., Lakhani, K.R., Community, joining, and specialization in open source software innovation: a case study. Research Policy, 32, pp. 1217-1241, 2003
[8] Swanson E. B., Information Systems as Buzz. Information Systems Working Papers, The Anderson School at UCLA, Los Angeles, 1-00, 2000.
[9] Lerner, J., Tirole, J., Some Simple Economics of Open Source. The Journal of Industrial Economics, 50, 2, pp. 197-234, 2002.
[10] Raymond, E.S., The Cathedral and the Bazaar,www.carborg/~esr/writings/cathedral-bazaar/cathedral-bazaar, 2000.
[11] Drucker, P., Innovation and Entrepreneurship. HarperBusiness, New York, 1993.
[12] Weiss, D. (2005) A Large Crawl and Quantitative Analysis of Open Source Projects Hosted on SourceForge. Research Report of the Institute of Computing Science, Poznań University of Technology, Poland, RA-001/05,www.cs.put.poznan.pl/dweiss/site/publications/download/weiss-2005-large-crawl-of-sourceforge.pdf, 2005.
[13] Krishnamurthy, S., Cave or Community? Empirical Examination of 100 Mature Open Source Projects. Working Paper, University of Washington,opensource.mit.edu/papers/krishnamurthy.pdf, 2002.
[14] Weber, S., The Success of Open Source. Harvard University Press, Cambridge, Massachusetts, 2004.
[15] Raymond, E.S., Homesteading the Noosphere,www.catb.org/~esr/writings/cathedral-bazaar/homesteading, 2000.
[16] Christensen, C., The Innovator's Dilemma. HarperBusiness, New York
[17] West, J. (2003) How open is open enough? Melding proprietary and open source platform strategies. Research Policy, 32, pp. 1259-1285, 2003
원저자인 Krzysztof Klincewicz는 바르샤바 대학의 조교수이며, 동경공업대 혁신경영학부의 연구원이다. 그의 주요 관심분야는 하이테크 기업에서의 전략 경영, 조직 이론, 신기술 등이다. Klincewicz 박사는 영국의 공인 마케터이며, 폴란드, 핀란드, 영국의 여러 IT 기업에서 수년간 사업 개발 부문을 관리하였다.
부록. 혁신적인 것으로 분류된 프로젝트들
'소프트웨어 이야기' 카테고리의 다른 글
[번역] 공개 소스에 의한 균형 : 경제적 복지의 원천으로서 공개 소스의 등장 (0) | 2013.01.24 |
---|---|
[번역] 프리 소프트웨어 프로젝트에서의 품질 관리 관행과 문제점 (0) | 2013.01.24 |
[번역] 성공적인 프리 소프트웨어 프로젝트를 만드는 방법 (1) | 2013.01.23 |
새 대통령에게 바란다 (0) | 2012.12.20 |
공개 소프트웨어 : 글로벌 커미터 양성에 대하여.. (0) | 2012.11.27 |