The changing economics of open source

오픈소스 경제학에 일어난 변화

오픈소스가 무엇이고 어떻게 발전해 왔는지, 그리고 앞으로도 지금까지 이룬 성공을 이어갈 수 있을지를 알아봤다.

2022년 초 오픈소스 커뮤니티에 이례적으로 시끄러운 소동이 일어났다. ‘무료’ 소프트웨어 비용을 누가 어떻게 지불해야 하는지를 둘러싼 경제적 문제를 둘러싼 논란이 소동의 발단이었다. 하지만 이것은 인터넷 커뮤니티에서 서로 아웅다웅하다가 끝날 수준을 넘어서는 IT 업계 전반에 영향을 미치는 매우 중요한 문제다.

이런 소동이 일어난 이유를 이해하려면 오픈소스가 무엇인지부터 이해해둘 필요가 있다. 초창기 오픈소스 운동은 대규모 소프트웨어 패키지에 대한 대안을 구축하는 데 초점을 맞췄다. 그 결과 오픈소스에 기반한 훌륭한 소프트웨어들이 많이 출시됐고, 점차 더 많은 사람이 이 운동에 참여하였다. 나는 1990년대 중반 사실상 자본금도 거의 없는 상태로 첫 웹 회사를 차렸는데, 내 사업은 리눅스 운영 체제, 아파치 웹 서버, 그리고 PHP(People use Hypertext Processor) 프로그래밍 언어와 같은 오픈소스 소프트웨어 덕을 많이 봤다.

오픈소스의 초기 약속

초창기 오픈소스 업계에는 여러 가지 훌륭하고 이상적인 특징들이 있었다. 예를 들어, 누구나 버그를 식별하고 수정하기 위해 코드베이스, 즉 특정 소프트웨어 시스템이나 애플리케이션 내지 소프트웨어 컴포넌트를 만드는 데 필요한 소스 코드 집합을 검토할 수 있었고, 코드베이스를 업그레이드할 수 있었으며, ‘무료’ 소프트웨어를 만들어 수익을 낼 수 있었다. 

‘소스포지(SourceForge)’를 비롯해 이후 나온 ‘깃허브(GitHub)’ 같은 온라인 시스템은 사람들이 더욱 쉽게 작은 단위의 오픈소스 컴포넌트를 공유하며 협업할 수 있게 해주었다. 그 후 오픈소스 소프트웨어는 초창기의 폭발적 성장을 거치면서, 몇몇 독창적 아이디어들이 실현될 기회를 제공하기도 했다.

과거에 사람들이 대규모 IT 회사의 상업적인 소프트웨어 패키지를 대체하기 위해 노력했던 것에 비하여, 오늘날에는 다양한 오픈소스 소프트웨어가 급증하고 있다. 한편에서 거대 IT 대기업이 플랫폼, 프레임워크, 다양한 종류의 툴을 출시하고 있는 반면, 다른 쪽에서는 오픈소스 개발자들이 ‘원데브(OneDev)’ 같은 공유 플랫폼을 사용하여 작지만 중요한 프로그램들을 개발하고 있다. 그리고 많은 기업에서 실제로 이러한 오픈소스 소프트웨어를 사용하고 있다.

오늘날 프로젝트가 다양해지면서 오픈소스 초기 원칙을 유지하는 것이 점점 더 어려워지고 있는 것도 사실이다. 예를 들어, 이제는 소스코드 점검을 제대로 수행하기에 오픈소스 패키지의 코드베이스 양이 너무 방대한 경우가 많다. 다른 예로, 거대 IT 기업이 오픈소스 소프트웨어를 배포하기도 하는데, 이 경우 이용자에 의한 소프트웨어 변형이 금지될 가능성이 높다. 또 어떤 패키지는 비교적 사소한 한 가지 작업만 취급하지만, 그 수행력이 워낙 탁월해 인터넷을 통해 확산하기도 한다. 이처럼 아주 특별하고 선별적인 패키지를 제작하는 사람들은 꾸준히 활발하게 활동하는 커뮤니티라기보다는, 순수하게 열정을 가지고 프로젝트에 몰두하는 한두 명의 헌신적인 개발자인 경우가 많다. 다음 여러 사례들을 통해, 최근 오픈소스 경제에서 일어나고 있는 변화와 도전에 대해 알아보자.

2021년 검색 엔진 ‘엘라스틱서치(ElasticSearch)’는 라이선스 요건을 바꿨다. 새로운 요건에는 엘라스틱서치의 소프트웨어를 이용하고 있는 상업적 클라우드 서비스업체로 하여금 그들이 개발한 매니지먼트 도구의 코드를 공개하도록 하는 내용이 포함되었다. 이 변화는 오픈소스 커뮤니티에 큰 반발을 불러일으켰다. 이로 인해 이전에 엘라스틱서치를 기반으로 한 서비스를 제공하던 아마존 웹 서비스는 코드베이스를 ‘포크(fork)’하여 ‘오픈서치(OpenSearch)’를 위한 자체 소프트웨어를 개발했다. 포크란 개발자들이 한 소프트웨어의 소스코드를 복사하여 이를 응용해 독립적인 소프트웨어를 새롭게 개발하는 것을 말한다.

또 다른 예로 2021년 12월 ‘로그4j(Log4J)’의 취약점이 공개되어, 이후 ‘인터넷 최대의 버그(biggest bug on the internet)’라고 불리게 될 사건이 일어나기도 했다. 로그4j는 오늘날 수많은 시스템에서 널리 사용되는 오픈소스 로그 기록 툴이다. 그러나 널리 사용된다고 해서 로그4j의 유지 보수가 잘 이루어지고 있는 것은 아니었다. 대신 이러한 부분은 취미로 프로그램을 유지, 보수하는 활동가들에 의해 수행되었다. 여기서 그들에게 돈을 얹어주는 것으로 문제를 해결하려 한다면, 이는 근본적인 대책이 되기 어렵다. 우리는 생업으로 바쁘면서도 자신의 소프트웨어를 유지하기 위해 노력하는 오픈소스 애호가들을 많이 알고 있다. 그들이 결코 원하지 않는 것은, 보수를 제시하면서 상업 서비스 수준의 유지 관리 서비스를 요구하는 것이다. 

오픈소스의 성공은 계속될까?

그럼 이것이 ‘오픈소스 드림’의 한계일까? 적어도 수많은 오픈소스 비관론자들은 최근의 격변을 오픈소스의 접근 방식이 실패했다는 증거라고 볼 것이다. 하지만 그들은 완전히 틀렸다.

오늘날 이 현상은 오픈소스 소프트웨어의 성공에 따른 직접적인 결과이다. 이러한 성공은 한 가지 방식으로는 오픈소스 소프트웨어를 정의하거나, 오픈소스 소프트웨어의 생산, 소비 과정을 설명할 수 없다는 것을 의미한다.

페이스북이나 넷플릭스 같은 인터넷 거물들에게, 자바스크립트 라이브러리나 ‘리액트(React)’, ‘카오스 멍키(Chaos Monkey)’ 같은 자체 소프트웨어 툴이 오픈소스 커뮤니티 안에서 대중성을 얻게 되는 것은 그들이 소프트웨어를 공개하는 주요 목적에서 벗어난다. 이 회사들이 오픈소스를 배포하는 진짜 이유는 대부분 이를 회사 브랜딩의 문제로 보기 때문이다. 즉, 시장에 회사의 프로그래밍 능력을 과시하는 방편인 것이다. 이와 같은 프로그램과 관련해서 IT 기업들이 새로운 수익원을 창출하기 위해 라이선스 모델을 변경할 가능성은 매우 작기 때문에, 대부분의 회사는 이를 걱정할 필요가 없다. 그럼에도 불구하고 이러한 오픈소스 툴이 소프트웨어 제품군이나 개발 프로세스의 주요 부분을 구성하는 경우, 기업 입장에서는 일종의 비상 계획을 준비할 필요가 있을 것이다. 해당 기업이 오픈소스 소프트웨어의 향후 개발 방향을 결정할 수 없기 때문이다.

이 조언은 상업적인 주체가 유지 및 관리를 하는 오픈소스 소프트웨어에도 적용된다. 대부분의 경우 이러한 회사는 고객 만족을 목표로 삼지만, 동시에 이윤 창출에 대한 압박을 받고 있기 때문에 나중에 라이선스 요건에 변화가 일어날 가능성을 완전히 배제하기 어렵다. 회사 운영을 중단하게 될 위험을 줄이려면 해당 소프트웨어에 얼마나 의존하고 있는지, 그리고 다른 대안은 없는지 확인해야 한다.

오픈소스 소프트웨어를 포함하는 플랫폼을 구축한 기업 입장에서 위험성은 더욱 불확실하다. 이는 ‘쏘우트웍스(Thoughtworks)’의 관점과 비슷하다. 우리는 모든 비즈니스가 내부 시스템에서 사용되는 소프트웨어를 정확하게 파악하고 있어야 한다고 생각한다. 우리는 고객의 플랫폼 안에 얼마나 많은 오픈소스 소프트웨어가 포함되어 있는지 평가하고, 이를 제외할 수 있는 대안이 있는지, 그리고 극단적인 경우에 오픈소스 소프트웨어의 사용을 중단하고 자체 소프트웨어로 대체할 수 있을지를 조언할 수 있다.

이용하는 소프트웨어의 상당 부분이 취미 프로그래머에 의해 유지되고 있다는 사실을 깨닫고 나면, 기업은 변화가 필요하다는 것을 알게 될 것이다. 이때 우리는 로그4j의 사례로부터 교훈을 얻을 수 있다. 어느 날 갑작스럽게 곤경에 처하는 것보다는 사업에 쓰이는 소프트웨어를 미리 점검해두는 게 훨씬 낫다는 것이다.

이 콘텐츠는 쏘우트웍스에서 제공하였으며, MIT 테크놀로지 리뷰 편집진 기사가 아님.

by Ken Mugrage

미리보기 2회1회

MIT Technology Review 구독을 시작하시면 모든 기사를 제한 없이 이용할 수 있습니다.