원글이 지적한 '웹의 과도한 복잡성' 문제에는 공감합니다. 하지만 그 원인을 개발자 문화나 프레임워크 남용으로만 돌리는 진단에는 동의하기 어렵습니다. 오늘날 웹의 복잡성은 상당 부분 '비즈니스 모델'이 요구하는 필연적인 기능과 보안의 그림자이기 때문입니다. 이 점을 빼놓고는 반쪽짜리 진단에 그칠 수밖에 없습니다.

웹은 더 이상 ‘무료 전시관’이 아닙니다. 오늘날 공공 사이트를 제외한 대부분의 웹 서비스는 수익 창출이 목표입니다. 따라서 기술 선택의 핵심 질문은 “이 코드가 순수한가?”가 아니라 “이 기술이 우리 비즈니스를 성공시키는가?”가 되어야 합니다.

이 관점에서 볼 때, 원글이 이상적으로 그리는 ‘가벼운 콘텐츠 웹’은 현실의 비즈니스 요구라는 벽에 부딪히게 됩니다. 예를 들어 콘텐츠를 판매하는 비즈니스는 단순한 정적 페이지로는 운영이 불가능합니다. 유료 구독 및 결제를 처리하려면 사용자 인증, 구독 상태 확인, 권한 관리와 같은 상태 기반 로직이 필요하고, 콘텐츠 보호를 위해서는 불법 복제나 무단 접근을 막는 실시간 토큰 검증 등의 보안 계층이 필수적입니다. 나아가 개인화 및 A/B 테스트를 통해 사용자 경험과 전환율을 높이려면 동적인 데이터 처리 또한 요구됩니다.

이 모든 것은 '정교한 애플리케이션'의 영역이며, 프레임워크는 이를 구현하기 위한 현실적인 도구입니다.

물론 모든 복잡성이 정당화될 수는 없습니다. 우리는 복잡성을 두 가지로 구분해야 합니다.

  • 필연적 복잡성: 비즈니스 기능(인증, 결제, 개인화 등)을 구현하기 위해 발생하는, ROI가 명확한 복잡성입니다. 이는 감수해야 할 비용입니다.

  • 우발적 복잡성: 개발 편의나 과도한 기술 추상화로 인해 생기는 불필요한 복잡성입니다. 이는 지속적으로 측정하고 제거해야 할 기술적 부채이자 낭비입니다.

성공적인 서비스들은 이 두 가지를 구분하여 현실적인 아키텍처를 구축합니다. 즉, 마케팅과 SEO가 중요한 최전선은 최대한 가볍게 만들고, 핵심적인 거래나 개인화 기능이 필요한 내부 영역은 프레임워크 기반으로 안정성을 확보하는 하이브리드 전략을 통해 속도와 기능성이라는 두 마리 토끼를 모두 잡습니다.

원글은 사용자 경험 악화의 원인을 프레임워크 문화에만 집중하면서 ‘수익 모델이 불러온 필연적 요구’를 배제했습니다. 이 점을 제외하고 웹 개발을 논하는 것은, 손님 테이블에 '빠르고 맛있는 요리'를 내놓는 것만 이야기하면서, 정작 그 요리를 만드는 복잡한 주방과 돈을 받는 계산대의 존재를 없는 셈 치는 것과 다르지 않습니다.

웹이 무겁다고 해서 무작정 프레임워크를 버릴 수는 없습니다. 비즈니스가 요구하는 기능을 얼마나 효율적으로, 최소 비용으로 구현해 사용자에게 가치를 전달하느냐가 논점이 되어야 한다고 생각합니다.