Next.js는 오픈소스의 탈을 쓴 유료 프레임워크?
그래서 오히려 더 좋다.
최근들어 특히 사용률이 높아진 React 프레임워크인 Next.js는 버셀에서 개발하고 있는 오픈소스 프레임워크다. 그리고 그 어느 프레임워크보다 Vercel에 최적화되어 있고, 반대로 말하면 그 어느 프레임워크보다도 Vercel에 종속되어 있다.

(그와 별개로, 삼각형을 심볼로 삼을 생각을 어떤 직원이 했는진 모르겠으나 대담하면서도 기가 막힌 선택이었다고 생각한다. 브랜딩도 참 멋있고.)
이런 특징은 오픈소스가 사실상 오픈소스의 특성을 갖지 못하게 만든다. Next 프로젝트를 버셀에서 배포하지 않으면 제 성능이 다 나오지 않거나 오류가 발생하는 경우도 종종 발생하고, 다른 프레임워크들과 달리 배포의 '최선의 정답'이 정해져있어서 다른 배포 솔루션은 생각하기도 어렵기 때문이다. 버셀은 나름대로 '관대한 무료 플랜'을 제공하지만, 그렇다고 해서 버셀이 비영리 서비스가 되는 것도 아니며 언제까지나 분명한 상업용 솔루션이다.
그래서 사람들은 이러한 Vercel 및 Next.js의 방향성에 대해 비판하기도 한다. 말만 오픈소스니까. 결국 따로 포크해서 최적화를 거치지 않는 한 버셀에 대한 종속성은 걷어내기 어렵고, 그걸 개인이 수행하는 것도 불가능에 가깝다.
그러나, '돈을 잘 버는 회사가 유지보수하는 프레임워크' 라는 점은 반대로 Next만의 특장점이 아닐까 생각한다. 생각해보면, 대부분의 오픈소스 프레임워크들은 특정 비영리 단체 또는 정말 작은 규모의 팀에 의해 운영된다. 그리고 이 팀이 돈을 못 벌면 아무리 많은 사람들이 사용한들 프로젝트의 지속 가능성은 순식간에 불투명해진다.
예를 들어 tailwindcss의 경우 기존에는 css 프레임워크 자체는 무료였고, 제작 팀이 따로 제작하는 템플릿을 유료로 판매하고 있는 구조였다. 그러나 AI의 발전으로 이런 템플릿 코드의 가치가 0에 수렴해버렸고, 결국 tailwind 팀은 '돈 못 버는 팀'이 된 거다. tailwind 자체는 압도적으로 많은 사람들에게 사랑받고 있었지만 '많은 사람들에게 사용되는 것'은 단 1달러도 벌어다주지 못했고, 운영팀은 적자를 막기 위해 팀원 딱 한 명을 제외한 모든 직원을 해고해야만 했다.
물론 지금은 다행히 shopify 팀에 합류했다고 하니, 든든한 뒷배가 생긴 셈이다. 마치 Next처럼.

이처럼 '비영리' 또는 '플랫폼 제약 없음' 이라는 특성이 그 프레임워크(혹은 라이브러리)의 운영사가 지속 가능하지 못하게 제약을 걸게 만드는 것이 아닐까 싶다. 누구에게나 무료로 열린 것은 언뜻 듣기엔 좋은 점만 있는 것처럼 들리지만, 결국 그것은 해당 프레임워크의 미래를 '개발팀의 선한 의지'와 '친절한 대기업 후원'에만 맡긴다는 뜻이다.
그래서 나는 오히려 Next.js에 마음이 간다. 적어도 운영사가 돈이 없어서 프레임워크 유지보수를 중단할 것 같진 않으니까. 반대로 Vercel이 더 많은 돈을 벌고, Next.js에 더 많은 자원을 여유롭게 투자할 수 있게 된다면 더 좋은 일이지 않을까?