개발자 / 윈도우

IDG 블로그 | DOS 소스 코드 공개와 MS에 바라는 것

Andy Patrizio | Network World 2014.04.01
마이크로소프트가 최근 필자에게 희망을 불을 밝혀줬다. 자사의 MS-DOS 1.1과 2.0, 그리고 윈도우용 워드 1.1의 소스 코드를 기증한 것이다.

컴퓨터 역사 박물관은 추억을 되새기기에 더 없이 좋은 장소이다. 필자의 첫 번째 컴퓨터 몇 대는 PC가 아니었으며, 최근에는 제대로 동작하는 애플 IIe와 아미가 3000을 볼 수 있는 곳은 이곳 뿐이기 때문이다.

이 박물관에는 이런 하드웨어 외에 소프트웨어도 보관하고 있는데, 여기에 최근 마이크로소프트의 선물이 추가된 것이다. 박물관에 기증된 DOS와 워드의 소스 코드는 원하는 사람 누구라도 박물관 웹 사이트에서 다운로드할 수 있다. 단 상업적 이용은 제한된다.

사실 이 글을 읽고 있는 독자 중 상당수는 DOS를 경험해 보지 못했을 가능성이 높은데, 좋은 일이다. 사실 DOS는 원시적인 운영체제로 당시를 반영하는 것일 뿐이다. DOS는 강력한 명령어와 멀티태스킹을 지원하는 유닉스 셸이 아니다. 그저 한 번에 한 가지 작업만을 할 수 있는 운영체제였다.

필자가 궁금한 것은 마이크로소프트가 이번 움직임이 자사에 가져다 줄 이점을 제대로 이해하고 있는지이다. 프로그래머들은 코드를 가지고 노는 것을 좋아하며, 포팅 실험을 즐긴다. 어떤 소스 코드가 나오면, 프로그래머가 가장 먼저 하는 것은 다른 플랫폼이나 운영체제 등으로 이식하는 것이다. 아직 소스포지(SourceForge)에는 아무 것도 없지만, 필자는 멀티태스킹을 추가해 32비트 또는 64비트로 포팅한 버전이 등장한다고 해도 전혀 놀라지 않을 것이다.

이는 분명 도전이지만 코더들이 기쁘게 받아들이는 것이기도 하다. 필자는 맥시스(Maxis, EA가 망치기 전)의 설립자였던 제프 브라운이 한 말을 기억한다. 그는 프로그래머가 가장 낙천적인 사람이라며, 그 이유로 프로그래머들은 항상 자신의 제품을 더 향상시킬 수 있다고 생각한다는 점을 들었다. 필자 역시 이런 경우를 많이 알고 있다.

필자는 특히 1990년대의 달라스 게이밍 마피아를 기억한다. 달라스는 아포지 소프트웨어(Apogee Software)와 id 소프트웨어라는 두 게임업체의 고향이었다. 아포지는 듀크 누켐을 가지고 있었고, id는 둠과 퀘이크를 가지고 있엇다. 두 회사는 라이벌 의식을 가지고 있었지만, 더 중요한 것은 두 곳 모두 더 이상 시장에서 판매되지 않는 오래 된 게임의 소스 코드를 공개하려 한다는 것이다.

Id 소프트웨어는 실제로 그렇게 했으며, 존 카맥은 게임 개발자들을 격려하고자 했다. 그리고 이는 id와 아포지에게 혜택으로 돌아왔다. 공개된 소스 코드를 기반으로 인상적인 모드를 만든 최고의 프로그래머들이 이들 두 업체에 채용된 것이다. 1996년 존 로메로가 자신의 회사를 차리기 위해 id 소프트웨어와 결별할 때도 많은 모드 개발자들을 채용했다. 여기서 분사한 리추얼 엔터테인먼트 역시 적지 않은 모드 개발자를 데려갔다.

1990년대 후반에는 존 카맥의 게임 엔진 코드로 뭔가 인상적인 것을 만들어 내는 것은 게임 업계에서 일자리를 얻는 길이 되었다. 카맥은 코드를 지속적으로 공개했지만, id 소프트웨어의 공개는 점점 더 동 떨어진 것이 되었다.

중요한 것은 존 카맥이 코드 공개를 통해 개발자를 격려한 것은 많은 일자리를 만들었고, 개발자들에게 자신들의 능력을 보여줄 수 있는 기회를 주었다는 것이다. 마이크로소프트도 오래 된 코드를 공개하고 사람들이 자신들의 기술을 보여줄 수 있도록 내버려 둠으로써 혜택을 받을 수 있을 것이다.

물론 필자는 마이크로소프트에게 이런 것이 쉽지 않은 일이란 것을 알고 있다. 마이크로소프트의 운영체제와 앱 내에 있는 많은 코드는 서드파티 업체들로부터 라이선스를 한 것들이다. 이런 코드를 모두 살펴보고 실사를 한다는 것은 여러 사람이 달려들어 적지 않은 시간을 투여해야 하는 작업이고, 마이크로소프트가 이런 작업에 굳이 많은 돈을 사용할 것으로 보이지 않는다.

또한 마이크로소프트는 코드를 재상용하는 경우가 많았는데, 존 카맥은 한 적이 없는 일이다. 카맥은 새로운 게임을 위해서는 처음부터 완전히 새로운 엔진을 작성했다. 윈도우 XP부터 최신 윈도우 8까지 패치가 자주 이루어지는 이유는 많은 코드들이 포팅된 것이기 때문이다. 보안 전문업체 퀄리스(Qualys)는 다양한 IE와 윈도우 버전 사이에 70%의 코드가 재사용되고 있다고 밝히기도 했다. 때문에 윈도우 2000 코드를 공개하는 것은 창의적인 개발자뿐만 아니라 악의적인 해커들에게도 커다란 선물이 될 수 있을 것이다.

필자는 아직까지도 소스 코드 공개가 게임 업체에게 가져다 준 것을 알고 있다. 물론 많은 게임업체들이 몰락했지만, 그들이 채용한 모드 개발자들 때문은 아니다. 게임업체들은 그냥 녹초가 되었을 뿐이다.

마이크로소프트가 코드를 계속 공개하고, 사람들이 공개된 코드로 무엇을 하는지 지켜보기를 희망한다.  editor@itworld.co.kr
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.