웹 개발자 데이비드 부셸이 지난 3일 자신의 블로그를 통해 SvelteKit 기반 클라이언트 프로젝트와 정적 사이트 생성기를 Deno에서 Node.js로 다시 이관했다고 밝혔다. 그는 이번 전환 과정에서 빌드 속도가 15% 빨라졌다고 측정 결과를 공개했다.
부셸은 Node.js가 최근 ECMAScript 문법을 지원하고 오래된 API들을 현대화하면서 사용성이 크게 개선됐다고 평가했다. 특히 require 함수 호출을 더 이상 볼 필요가 없어진 점을 긍정적으로 언급했다. 반면 Deno에서는 JSR 레이트 리미팅, ZSH 통합 오류, 동시성 버그 등 여러 기술적 불편함을 겪었다고 토로했다.
공급망 보안 측면에서는 PNPM 패키지 매니저를 선택해 pnpm-workspace.yaml 파일에 최소 릴리스 대기 시간을 1440분으로 설정했다. 이는 Shai-Hulud 같은 악성 코드 배포 시도를 차단하기 위해 새로 게시된 패키지를 즉시 설치하지 않고 하루 동안 지연시키는 조치다. 처음에는 한 달을 설정했으나 의존성 충돌 문제가 발생해 하루로 조정했다.
Node.js는 node_modules 내부의 TypeScript 파일에서 타입 스트리핑을 의도적으로 거부한다. 이는 기술적 한계가 아니라 패키지 제작자들이 컴파일된 JavaScript를 NPM에 올리고 소스 코드는 직접 배포하지 않도록 유도하는 철학적 제한이다. 부셸은 이러한 정책이 패키지 관리 관행을 강화한다고 해석했다.
Hacker News 커뮤니티 반응은 엇갈렸다. 일부 이용자는 Bun이나 Deno 같은 대안 런타임 사용 중 겪은 부정적 경험에 공감하며 Node.js 복귀를 지지했다. 그러나 다른 쪽에서는 Deno의 기본 내장 테스트 러너, 린터, 타입 체커 기능이 여전히 강력하며 이번 비판이 구체적 근거가 부족하다고 반박했다.
Deno 팀의 방향성에 대한 우려도 제기됐다. 감원 이후 로드맵이나 커뮤니케이션이 불투명해졌다는 지적이 나왔으며 AI 및 클라우드 제품으로의 피벗이 기존 사용자들의 신뢰를 흔들고 있다는 의견이 제시됐다. 다만 Deno 표준 라이브러리 v1 출시를 도운 전 계약직 인력조차 현재 상황의 불확실성을 인정하며 팀의 앞날을 걱정했다.
이번 사례는 특정 프로젝트 환경에서의 성능 개선과 보안 설정 변경을 다루고 있다. Node.js의 TypeScript 실행 지원 확대와 PNPM의 지연 설치 정책이 실제 개발 워크플로우에 미친 영향이 구체적으로 기록되었다. 향후 Deno의 로드맵 투명성 회복 여부와 Node.js 생태계의 추가 최적화 방향은 지켜볼 사항이다.
