후원으로 이루어진 서보 엔진 개발의 지난 1년

서보(Servo)는 웹 페이지 렌더링, 즉 인터넷 화면을 그려주는 핵심 기능을 담당하는 오픈소스 엔진 프로젝트입니다. 브라우저 엔진은 우리가 웹사이트에 접속했을 때 글자나 그림을 화면에 보여주는 프로그램인데, 서보는 안정성과 속도를 높이기 위해 차세대 프로그래밍 언어로 개발되고 있습니다. 이번 기사는 서보 프로젝트에서 오랜 기간 핵심 개발자로 일해온 조시 보우먼-매튜스가 지난 1년 동안 후원금을 받아 기여자들의 개발 환경을 개선한 활동을 되돌아보는 내용입니다. 오픈소스는 누구나 자유롭게 코드를 보고 수정할 수 있는 공개 소프트웨어 개발 방식을 뜻하고, 기여자는 이 프로젝트에 참여해 코드를 고치거나 문서를 작성하는 사람들을 말합니다.

이번 글이 주목받는 이유는 서보 프로젝트의 첫 번째 후원금 기반 역할로서, 오픈컬렉티브와 깃허브의 정기 후원을 통해 개발자의 활동이 안정적으로 지원되었기 때문입니다. 후원금 덕분에 조시 보우먼-매튜스가 파트타임으로 개발에 전념할 수 있었고, 새로운 관리자 8명 임명, 코드 수정 요청 1,150건 검토, 신규 기여자 대상 작업 요청 114건 제기(그중 92퍼센트가 해결됨), 그리고 대여 위험, 실험적 기능, 인공지능 정책, 기여 방법, 테스트 실패 해결 등에 관한 새로운 문서 작성 같은 실질적인 성과가 투명하게 공유되었기 때문입니다.

여러분의 후원금이 만든 결과: 후원으로 진행된 서보(Servo) 개발의 지난 1년

서보 프로젝트가 처음으로 후원금을 받아 정식 업무를 시작한 지난 1년을 되돌아봅니다. 여기서 서보는 웹페이지를 화면에 그려주는 엔진인 브라우저 엔진 프로젝트를 말합니다.

게시일: 2026-09-15

작년 9월, 서보 프로젝트는 오랜 기간 프로젝트를 관리해온 핵심 개발자 조시 보우먼매튜스(Josh Bowman-Matthews, 온라인 별명 @jdm)가 서보에 기여하는 사람들이 더 편하게 일할 수 있도록 돕는 업무를 파트타임으로 맡게 되었다고 발표했습니다. 이 자금은 오픈컬렉티브(OpenCollective)와 깃허브(GitHub)의 정기 후원금으로 전액 충당되었습니다. 오픈컬렉티브와 깃허브는 전 세계 사람들이 프로젝트에 후원금을 쉽게 모금하고 전달할 수 있게 돕는 플랫폼입니다. 그의 말을 빌려 지난 1년을 되돌아보겠습니다!

무엇보다도 서보를 재정적으로 지원해 주신 모든 분께 깊은 감사를 드립니다. 여러분의 후원 덕분에 제가 깊이 아끼는 프로젝트에 상당한 시간을 쏟을 수 있었기 때문입니다. 제가 후원을 받아 진행한 업무 중 자랑스럽게 생각하는 몇 가지 주요 성과는 다음과 같습니다.

새로운 프로젝트 관리자(maintainer) 8명을 임명했습니다. 여기서 관리자란 다른 사람들이 보낸 프로그램 수정 제안을 검토하고 프로젝트의 방향을 결정하는 핵심 기여자들을 말합니다.

다른 개발자들이 보낸 프로그램 수정 제안(풀 리퀘스트, Pull Request) 1,150개를 검토했습니다.

새로 참여하는 기여자들을 위한 작업 요청서(이슈, Issue) 114개를 등록했으며, 이 중 92퍼센트가 해결되었습니다.

프로그래밍 언어에서 메모리 관리 방식과 관련된 '빌로우 해커드(borrow hazards)', 아직 실험 단계에 있는 기능들, 인공지능(AI) 사용 정책, 참여할 일을 찾는 방법, 그리고 일정하지 않게 간헐적으로 실패하는 테스트를 고치는 방법에 관한 새로운 설명서(문서)를 작성했습니다.

그뿐만 아니라, 다른 사람들의 프로그램 수정 제안에서 원인을 알 수 없는 오류가 발생했을 때 이를 진단하는 데 시간을 썼으며, 모든 기여자가 수정 제안을 합치기 어렵게 만들던 수많은 간헐적 테스트 실패 문제를 해결했습니다.

이 기간에 진행한 작업 중 특히 기억에 남는 몇 가지는 다음과 같습니다.

서보의 자바스크립트 엔진 연동 부분을 대규모로 다시 작성하는 작업을 지원했습니다. 이는 프로그램이 메모리를 정리하는 과정(가비지 컬렉션, Garbage Collection)과 관련하여 갑자기 프로그램이 멈추는 오류(패닉, Panic)를 해결하기 위한 것이었습니다. 여기서 자바스크립트는 웹페이지를 움직이게 만드는 프로그래밍 언어이며, 가비지 컬렉션은 프로그램이 쓰고 난 뒤 필요 없어진 메모리를 자동으로 청소해 주는 기술입니다. 저는 수많은 수정 제안을 검토했을 뿐만 아니라, 이 프로그램 멈춤 현상을 해결하는 작업을 여러 다른 기여자에게 나누어 맡길 수 있도록 여러 개의 작업 요청서(이슈)를 등록했습니다.

테스트 실패 원인을 파악하기 위해 투입되어, 웹페이지에서 새로운 창을 띄울 때 사용하는 기능인 'window.open' 동작에 문제가 있음을 밝혀냈고, 마침내 자주 오작동하던 여러 테스트를 더 안정적으로 만들었습니다.

다른 기여자가 서보 개발에 참여하기 위해 신청한 지원금 제안서(grant proposal)를 지지했고, 이것이 승인되었습니다!

제가 직접 만들어간 이 역할은 저에게 큰 의미가 있습니다. 가족과 함께 시간을 보내는 동시에 서보에 의미 있는 기여를 할 수 있는 건강한 균형을 찾았고, 다른 사람들이 프로젝트에 더 쉽게 다가갈 수 있는 방법을 찾는 데 많은 시간을 쓸 수 있기 때문입니다. 프로젝트와 제 업무를 지원해 주신 모든 분께 진심으로 감사드립니다. 매달 보내주시는 개별 후원금 하나하나가 엄청난 차이를 만듭니다! 다가오는 한 해 동안 또 어떤 일들을 해낼 수 있을지 정말 기대됩니다.

뒤로 가기

일반 독자 입장에서는 당장 스마트폰이나 컴퓨터로 웹서핑을 할 때 눈에 띄는 큰 변화를 직접 체감하기는 어렵습니다. 하지만 웹 브라우저의 기초를 담당하는 오픈소스 기술이 개인 후원자들의 정기적인 기부와 개발자들의 참여 속에서 어떻게 지원되고 성장하는지 그 과정을 보여줍니다. 개발자나 오픈소스 기여를 희망하는 사람들에게는 프로젝트 참여 환경이 어떻게 개선되고 있는지 가늠해 볼 수 있는 사례가 됩니다.