제공 :
한빛 네트워크
저자 : Simon St. Laurent
역자 : 박원
원문 :
It’s the end of the web as we knew it
지난 15년 동안, 구글의 "HTML을 구조의 기반으로" 삼는 정책은 웹의 중심으로 자리잡았다. 구글의 스파이더 봇에게 감지되고자하는 컨텐츠 제작자 혹은 개발자라면, 자신의 웹페이지 HTML에 컨텐츠와 링크 정보를 포함시켜야 했다. 이로써 구글은 자바스크립트(혹은 이미지나 CSS)만을 사용한 링크와 컨텐츠 개발자를 효과적으로 다스릴 수 있었고, 결과적으로 이들은 검색 결과상에서 존재감이 낮거나, 보이지 않았다.
구글의 이런 방침은 HTML을 향한 깊은 애정에서 비롯된 것이 아니라 간편한 데이터 처리를 위함이었다. 그들의 검색 로봇이 단순히 HTML 소화에 바빴다면, 구글의 다른 한편에서는
AngularJS 같은 자바스크립트를 중심으로 한 접근법을 개발하고 있었다. AngularJS는 "슈퍼히로익 자바스크립트 MVW 프레임워크(Superheroic JavaScript MVW Framework)"로, 이는 만약에 "HTML이 웹앱을 염두해두고 디자인 되었더라면 진작이 가야했을 길"을 보여준다.
비단 Angular 뿐만이 아니라, 자바스크립트가 성장하면서 점점 더 많은 프로그래머들이 그들의 웹앱을 웹 페이지가 아닌 프로그램으로 구축하고자 했다. 플루언트(Fluent) 컨퍼런스에서 젠 시몬스(Jen Simmons)는 이를 한마디로 정리해 주었다. "그 멍청한 HTML을 사용하느니 차라리 빈 페이지를 실행하겠어… 그리고 진짜 프로그램을 실행시킬꺼야. 자바스크립트를 말이지."
이러한 최근의 경향으로 인해 나의 트위터 피드는
브롬본(Brombone) 같은 유사 서비스를 제공하는 업체 광고로 가득찼다. 이 업체들은 구글 검색봇이 어떤 웹사이트에 접근했을 때 서버에서 자바스크립트를 실행하여 검색봇에게 보여줄 수 있는 HTML 도큐먼트를 만들어준다.
지난 주, 구글은 그들의 자바스크립트 벽을 허물며 아래와 같이 선언한다:
"우리는 웹 페이지를 이해하기 위해서 자바스크립트를 시행하는 시도를 하기로 결정했다. 현재 웹의 규모를 봤을 때 그리 쉬운 일은 아니지만, 우리는 그럴만한 가치가 있다고 판단했다. 이 문제에 대해서는 얼마간의 시간을 두고 점차적으로 개선해오고 있었다. 지난 몇 개월 동안, 우리의 색인화 시스템은 상당수의 웹페이지를 일반 사용자의 브라우저에서 자바스크립트를 실행시킨 상태에서 보는 것처럼 처리하였다. "
어떤 면에서 이는 브라우저의 눈으로 웹을 바라보길 원하던 구글의 긴 여정 중 일부에 불과하다. 크롬 브라우저나 V8 자바스크립트 엔진 개발에 걸친 광범위한 활동으로 구글은 그들이 처음 웹을 색인화하던 당시에는 없던 도구를 갖게 되었다. 부적절한 방법으로 검색엔진 최적화(black-hat SEO)를 하려는 다양한 무리와의 전쟁을 통해, 구글은 문서의 구조나 보조하는 파일에 관심을 두어야 했다. 이미 복잡할 때로 복잡한 이 일에 자바스크립트 하나 더하는 것 정도는 큰 문제처럼 보이지 않는다.
물론 대부분의 개발자들이 바로 그들의 웹 사이트 구축 방법을 바꾸지는 않을 것이다. 구글이 개발자에게 자바스크립트를 통해 컨텐츠와 링크를 만들 수 있도록 한다고 해서 갑자기 모두가 기존의 것을 Angular로 수정하지는 않을 것이다. 하지만 벽을 없애주는 것만으로 프로그래머가 좀더 "프로그램-스러운" 웹을 만들수 있도록 더 많은 자유를 주었다고 볼 수 있다.
그렇다면
아이소모픽 자바 스크립트(isomorphic JavaScript) 같은 하이브리드형 접근법들은 이에 어떻게 대응하게 될지 궁금해진다. 웹앱에 있어서는 여전히 성능과 유지가 가장 중대한 논의거리겠지만, 첫번째 골칫덩이로 분류되던 검색엔진 최적화라는 문제는 더이상 존재하지 않게 되었다. 지금까지 "구글에서 검색되지 않는다"는 말이 성능에 대한 세부 설명이나 장기 유지비에 대한 이야기보다 훨씬 쉬운 설명이었는데 말이다.
나는 지난 몇 년 동안, 마크업(markup) 기반의 다층 모델이 코드 더미보다 구조적으로 우월하다고 주장해왔다. 개인적으로 "점진적 개선"이라는 표현을 꺼리지만, 웹을 구하기 위한 지금의 명분에서는 피하거나 분리해서 생각할 수 없을 것 같다. 예측하건데, 오늘 구글의 개방 결정으로 웹은 시간이 지날 수록 더욱 엉켜서 유지하기 힘들게 될 것이다.
하지만 구글 입장에서도 선택의 여지가 없었다고 생각한다. 미래의 웹은 자바스크립트를 포함할 것이 분명하고, 특히 웹 컴포넌트의 보편화 경향을 미루어 보아도 이는 더욱 자명한 사실이다. 구글에 의하면 "자바스크립트는 간혹 실행에 있어서 너무 복잡하거나 불가사의하다" 고 한다. 구글이 이 "자바스크립트"라는 토끼굴 속으로 얼마나 멀리 내려가보고자 할지 의문이 든다.
나는 아직은 웹의 미래가 어떤 얼굴을 하고 있을지 확신할 순 없지만, 그 변화의 시작이 지난주였음을 알고 있다. 비록 느리게 진행될지언정, 변화는 반드시 올 것이다.