웹 페이지
Web page. ‘페이지’(page)로 부르고 쓰기도. 웹을 이루는 최소 단위. 웹사이트의 첫 번째 페이지는 홈페이지.
새로운 질서 위키의 이 페이지 또한 웹 페이지다. 웹 페이지는 궁극적으로 서버에 저장된 텍스트 파일에 불과하다. HTML이라는 특수한 형식으로 작성돼 문서의 내용을 구성하고 다른 리소스(다른 웹 페이지, 이미지, 컴퓨터 등 거의 모든 리소스)와도 연결된다.
모든 것은 손으로 직접 타이핑한 문서에서 시작됐다. 이윽고 컴퓨터의 성능이 향상되고 웹 언어가 발전하면서 웹 페이지의 복잡성과 기능은 상상을 초월할 만큼 확장됐다. 특히 CSS는 웹 페이지에 시각적으로 새로운 질서를 부여할 수 있는 기능을, 자바스크립트는 새로운 상호 작용과 기능을 제공했다. 하나 이상의 웹 페이지로 이뤄진 웹사이트는 네트워크, 서버, 데이터베이스, 라이브러리, 브라우저, 디바이스 등 놀라운 기술 스택 위에 구축돼 있다. 하지만 이 모든 것은 콘텐츠, 즉 텍스트, 즉 문자와 기호에서 시작된다.
어딘가에서 빛나는 16:9 비율의 직사각형을 보고 있다면(단순히 동영상을 재생하는 게 아니라면), 오늘날 이 페이지와 다른 모든 웹 페이지의 배후에는 동일한 HTML, CSS, 자바스크립트가 사용된 웹 페이지가 있을 가능성이 크다.
개방성, 연결성, 편재성으로 웹은 다른 형태의 기술보다 우위에 서게 됐다. 호환성, 비용, 규모, 관성 등 웹의 장점은 계속 눈덩이처럼 불어나고 있으며, 웹 기술의 발전은 멈출 기미가 보이지 않는다. 우리는 이 바닷속에서 헤엄치고 있다.
따라서 우리는 수영하는 법을 배워야 한다. 첫 번째는 이런 것들이 어떻게 만들어지고 어떻게 작동하는지 이해하는 것이다. 기술은 우리에게 힘을 실어주기도, 제약을 주기도 한다. 우리의 글쓰기는 이런 기반과 분리할 수 없으며, 매체는 최종 제품과 뗄 수 없는 관계에 있다.
사람들은 대개 디자인이 겉모습이라 생각한다. (…) 하지만 우리가 생각하는 디자인은 그런 게 아니다. 디자인은 단순히 모양과 느낌이 아니다. 디자인은 작동 방식이다. —스티브 잡스
한편, 오늘날 애플리케이션 또한 웹 페이지인 경우가 적지 않다. 일렉트론으로 빌드된, 실제로는 슬림한 플랫폼 네이티브 래퍼 안에 있는 웹 페이지일 뿐이다. 즉, 애플리케이션은 기본적으로 단일 웹 사이트 브라우저인 셈이다. 핵심 애플리케이션은 각 플랫폼에 맞게 다시 작성할 필요 없이 한 번만 작성하면 된다. 왜 모든 것을 다시 디자인해야 할까? 윈도우나 맥용 개발자를 고용하는 대신 웹 개발자를 고용하는 게 낫다. iOS나 안드로이드 개발자는? (개발자 월급은 디자이너보다 훨씬 더 비싸다.) 많은 기업이 크로스 플랫폼을 위해 이런 접근 방식을 취한다.
이런 모바일 ‘앱’은 모두 비슷한 패러다임에 따라 리액트 네이티브(React Native)로 빌드된다. 즉, 실제로는 웹 뷰에 불과하며, 그 안의 모든 화면은 웹 페이지다.
오늘날에는 자바스크립트의 힘이 막강해지는 형국이다. 웹 브라우저에서 실행되는 클라이언트 측 프런트엔드 언어로 시작된 자바스크립트는 이제 V8 같은 엔진과 Node 같은 환경을 통해 과거에는 ASP, 펄, PHP, Ruby 같은 스크립팅 언어가 담당한 서버 측 기능으로 이동했다. 즉, 자바스크립트는 사용자가 마주한 웹 페이지에서만 실행되는 게 아닌, 실제로 웹 페이지, 나아가 웹사이트 자체를 빌드하거나 심지어 패킷을 전송할 수도 있다. 자바스크립트는 스택의 일부가 아니라 스택 그 자체가 된다. 이는 웹의 덩굴이 웹 페이지가 아닌 많은 용도를 포괄할 수 있다는 사실을 뜻하기도 한다. 앱, 헤드리스 데이터 API, 하드웨어 통합, 심지어 완전히 오프라인에 있는 것일 수도 있지만, 대부분 웹 기술일 테다.
웹 페이지가 아닌 것 또한 웹 페이지와 다르지 않다. 새로운 질서에서는 웹 페이지의 구성 요소인 HTML, CSS, 자바스크립트에 관해 살핀다. 개념적으로나 의미론적으로 이들을 콘텐츠, 형식, 기능으로 생각하며. (또는 다른 방식으로 골격, 피부, 근육에 비유하거나.) 이렇게 이해하면 거의 모든 소프트웨어에 동일한 모델이 존재한다. (예를 들어, Mac/iOS 개발의 리소스, 뷰 및 상태는 그 경계가 모호해지고 있지만). 따라서 아직 웹 기술에 잠식되지 않은 소프트웨어는 여전히 웹과 비슷하다고 말할 수 있다. 그리고 언젠가는 웹이 이들을 잠식할 가능성이 크다.