자바스크립트 런타임 Bun이 Rust로 재작성되기 직전의 마지막 코드를 기반으로 한 새로운 프로젝트 'Buz'가 공개되어 개발 커뮤니티의 주목을 받고 있습니다. Buz는 최신 Zig 언어를 활용하여 1초 미만의 증분 빌드(incremental build)를 구현, 개발자들이 코드 변경 후 결과를 확인하는 시간을 대폭 단축하는 것을 목표로 합니다. 이는 기존 Bun의 느린 빌드 속도에 대한 불만을 해소하고 개발 생산성을 크게 향상시킬 잠재력을 보여줍니다.
Buz는 Bun의 JavaScriptCore 벤더링 소스까지 포함한 전체 빌드 그래프를 Zig의 빌드 시스템인 `build.zig`로 옮기고, Zig 컴파일러에 소규모 패치를 적용하여 이 같은 빠른 증분 빌드를 달성했습니다. 또한, 기존 Bun 코드베이스에서 사용되지 않는 11,000줄 이상의 코드를 제거하고 Zig 표준 라이브러리를 중심으로 현대화하는 작업을 진행 중입니다. 이 과정에서 여러 버그도 수정되었으며, 장기적으로는 LLM(대규모 언어모델)의 도움을 받아 기술 부채를 줄이고 유지보수하기 쉬운 코드베이스를 구축하는 것을 목표로 합니다. 현재는 개발 초기 단계로 프로덕션 환경에 바로 적용하기는 어렵습니다.
이 프로젝트의 등장은 개발 도구의 빌드 속도가 전체 개발 과정에 미치는 영향이 얼마나 큰지 다시 한번 일깨워줍니다. 특히 대규모 프로젝트에서는 작은 코드 변경에도 몇 분씩 기다려야 하는 빌드 시간이 개발자의 집중력을 저해하고 생산성을 떨어뜨리는 주요 원인이 됩니다. Buz가 제시하는 1초 미만의 증분 빌드는 이러한 병목 현상을 해결하여 개발자들이 더 빠르게 아이디어를 실험하고 피드백을 받을 수 있게 함으로써, 궁극적으로 소프트웨어 개발의 효율성을 높이는 데 기여할 것으로 기대됩니다. 또한, LLM을 활용해 기술 부채를 청산하고 코드 품질을 개선하려는 접근 방식은 미래 소프트웨어 개발 방식에 대한 흥미로운 실험이 될 수 있습니다.