개발 명령어 공개된 소프트웨어, 누구든지 접근-수정 참여 가능
1991년 탄생한 ‘리눅스’가 대표적… 역대 최다 참여자가 프로젝트 관여
슈퍼 컴퓨터 기반 될 만큼 발전
이달 8일 영국의 한 정보기술(IT) 전문 매체는 ‘개발자들이 자원봉사로 튀르키예 지진 생존자들을 구하고 있다’고 보도했습니다. 튀르키예 지진이 발생하자 이스탄불에 있던 두 명의 소프트웨어 개발자가 소셜미디어를 통해 지진 피해 지원 프로젝트를 함께할 팀원을 모집했는데요. 하루 만에 전 세계에서 1만5000명의 개발자, 디자이너, 프로젝트 매니저 등이 모였다고 합니다.
이들은 힘을 합쳐 지진 생존자들의 구조를 도울 수 있는 앱을 개발해 구조 작업에 힘을 보태고, 가족을 잃어버린 이들을 서로 연결해주고, 고립된 사람들이 건강 상태 등을 공유하고 지원을 요청할 수 있는 포털을 구축했습니다.
이 프로젝트는 소스 코드(프로그램 설계도)에 누구나 접근, 수정할 수 있는 ‘오픈 소스’로 개발되었는데요. 오픈 소스가 무엇인지 이번 지면에서 다뤄보려고 합니다.
오픈 소스는 말 그대로 ‘소스 코드가 공개된 소프트웨어’를 의미합니다. 여기서 소스 코드는 컴퓨터 프로그램을 만드는, 즉 개발하는 데 사용된 명령어 목록입니다. 소프트웨어를 개발하는 데 많은 노력과 비용이 발생할 텐데 왜 누구나 사용할 수 있도록 공개할까요?
우리는 알게 모르게 많은 오픈 소스를 이용하고 있는데요, 모바일 운영체제인 안드로이드가 그 대표적인 예입니다. 개발자들도 개발 과정에서 많은 오픈 소스에 의존하고 있습니다. 공개와 공유의 문화는 개발자 커뮤니티에 깊숙이 자리 잡고 있습니다. 혹자는 이런 사실에 놀라워하며 ‘프로그래밍 세계의 독특한 문화’라는 표현을 사용하기도 했습니다.
오픈 소스는 1980년대 산업에서 하드웨어 분야보다 소프트웨어 분야 비중이 높아지면서 소프트웨어가 상품이 되고, 소스 코드가 기업의 영업비밀이 되어 이용, 배포, 복제, 수정 등이 막히자 이러한 독점에 반발해 등장한 개념입니다. 이를 주도한 리처드 스톨먼은 공개 소프트웨어 프로젝트인 ‘GNU 프로젝트’를 시작하고, 이를 알리는 GNU 선언문을 발표했습니다. GNU 선언문에는 초기 컴퓨터 커뮤니티에 지배적이었던 상호 협력적인 문화로 되돌리자는 주장이 담겨 있습니다.
‘리눅스’는 오픈 소스의 성공을 보여준 대표적인 사례인데요. 1991년 핀란드 헬싱키대 학생이었던 리누즈 토발즈가 만들었습니다. 그는 당시 앤드루 타넨바움 교수가 학생들의 교육을 위해 개발한 ‘미닉스’를 사용하고 있었습니다. 하지만 이 프로그램은 매우 불편했고, 타넨바움은 다른 사람이 미닉스를 개조하지 못하도록 제한을 걸어놨습니다.
토발즈는 미닉스를 대체할 수 있는 운영체제를 스스로 만들기로 하고, 운영체제의 핵심 기능을 담당하는 커널을 만들었습니다. 그리고 소스 코드를 포함해서 모두 세상에 공개했습니다. 토발즈는 누구나 소스 코드를 수정하거나 개선할 수 있도록 하고, 다음 버전에 기여자로 이름을 남기도록 했습니다. 이에 많은 개발자들이 버그 수정과 기능 추가에 참여하면서 리눅스는 점점 더 정교하게 발전하고 안정성도 향상되었습니다.
토발즈가 처음 세상에 공개했을 때 본인뿐만 아니라 그 누구도 예상하지 못했으나 리눅스는 역대 가장 많은 참여자가 관여하고 있는 오픈 소스 프로젝트로 성장했습니다. 세계에서 가장 강력한 슈퍼컴퓨터 500대의 성능 순위를 매기는 조사기관인 TOP500이 2021년 11월 발표한 TOP500 리스트에 따르면 슈퍼컴퓨터 500대 중 98.8%가 리눅스 기반이라고 합니다. 리눅스가 얼마나 중요한 운영체제인지 보여주는 결과입니다.
리눅스 성공 요인은 여러 가지가 있을 테지만, 가장 큰 요인은 리눅스의 기본 철학에 있습니다. 오픈 소스로 소스 코드가 공개되어 있기 때문에 전 세계에 공유돼 누구나 자유롭게 다운로드해서 사용할 수 있습니다. 또 필요에 따라 수정하고 개선하는 것이 가능합니다. 리눅스는 서버용 프로그램으로 시작해 지금은 전 세계 약 10억 대 안드로이드 기기의 운영체제로 사용되고 있습니다.
미국 정보기술(IT) 리서치 기업 가트너가 실시한 조사에 따르면 2020년 기준으로 95% 이상의 기업이 어떤 형태로든 오픈 소스를 사용하는 것으로 나타났습니다. ‘오픈 소스 기여 경험’은 기업들의 개발자 채용 공고에도 자주 등장한다고 하는데요. 오픈 소스가 현재와 미래에 중요한 역할을 수행할 것으로 예상되기 때문입니다.
오픈 소스를 단순히 소프트웨어가 아니라 세계 여러 문제를 해결하기 위해 함께 노력하는 사람들로 구성된 커뮤니티에서 추구하는 자유와 혁신에 관한 사고방식과 정신으로 보는 시각도 있습니다. 이를 ‘오픈 소스 운동’이라 부릅니다. 오픈 소스 운동의 정신적 기초가 된 미국의 정치가 토머스 제퍼슨의 명언을 소개합니다.
“누군가가 나의 등잔의 심지에서 불을 붙여 가도 내 등잔의 불은 여전히 빛나고 있습니다.” 공개와 공유, 협력은 어느 분야에서나 필요합니다. 이를 통해 혁신이 시작될 것입니다. 오픈 소스가 좋은 사례로 참고될 수 있길 바랍니다.
댓글 0