Web standard
Web2hub wiki
목차 |
서문
오늘날 웹은 우리들의 생활 곳곳에 널리 그리고 깊숙히 파고들어 이제 필수품과 같은 존재로 발전했다. '문서의 게시'라는 최초의 기능에서 출발해서 이제는 언론, 출판, 쇼핑, 금융, 전자정부 등 헤아리기 힘든 수많은 분야들이 웹이라는 공통적인 플랫폼 위에서 제공되고 있다. 웹은 단지 정보와 서비스의 제공 뿐만 아니라 다수의 사람들이 서로 정보를 나누고, 의견을 교환하며, 친목을 쌓고, 함께 일을 하고, 동작을 이끌어내기도 하는 그런 공통의 생활 공간이자 방법으로 발전하고 있다.
인류 역사상 웹 만큼 성공적으로 전세계에 널리 퍼진 단일 시스템도 흔치 않을 것이다. 이렇게 웹이 성공할 수 있었던 이유에는 여러 가지가 있겠지만, 여기서는 표준과 개방이라는 측면에 큰 가치를 두고자 한다. 표준이란 웹에 무언가를 만들고 사용하는데 적용되는 기술들에 대한 공통의 약속이며, 개방이란 누구나 자유롭게 그러한 기술을 쓸 수 있다고 보장한 것이다. 표준이 없다면 다수의 사람들이 서로 공통적으로 상호작용할 수 있는 일관된 방법을 찾을 수 없을 것이며, 개방이 이루어지지 않는다면 설사 표준이 존재한다 하여도 널리 보편화되기 힘든 여러가지 장벽이 있을 것이다.
물론 웹은 표준과 개방의 힘으로 크게 성공을 거두었지만, 아직 현실과 이상 사이의 괴리는 적지않게 존재한다. 웹 역시 약육강식의 시장논리에서 자유로울 수 없는 만큼, 시장 지배력이 있는 회사나 단체에서 표준을 무시하고 임의의 방식을 고집한다면 더이상 웹은 공통의 보편적인 것이 아닐 것이며, 표준이란 유명무실한 것이 될 것이다. 그리고 불행히도 이러한 일은 이미 우리의 현실 속에 너무나도 자연스럽게 벌어지고 있다.
왜 웹 표준의 준수가 중요한가
웹은 공공재이다
먼저 본래 웹이 만들어졌던 철학을 돌이켜보자.웹은 1989년 팀 버너스 리(Tim Berners Lee)에 의해 고안되었다. 본래의 개발 의도는 당시 그가 근무하던 유럽 입자물리 연구소(CERN)에서 수천명의 과학자들이 다양한 OS나 환경에 관계 없이 편리하게 정보를 접근할 수 있도록 하기 위한 것이었다. 그는 최초의 웹서버 "httpd" 및 최초의 웹 클라이언트 "World Wide Web"을 작성하였다. (사족. 여기서 최초의 클라이언트 World Wide Web은 브라우저이자 동시에 에디터였다. "웹클라이언트=브라우저"라는 등식이 성립하는 오늘날, 이 사실은 그가 꿈꾸었던 본래 웹의 철학을 잘 시사해준다.) 그는 이 초창기의 발명품을 계속 발전시켜 URI, HTTP, HTML 등의 초기 개념을 정립하였고 월드 와이드 웹 컨소시움(World Wide Web Consortium)을 설립하였다. 그는 "웹은 모든 사람들에게 보편적 매체로 개방되어야 한다"는 철학 하에 그가 발명한 웹 기술을 모든 사람이 무료로 쓸 수 있도록 개방하였다.
누구에게나 보편적인 공공재로서의 웹. 이것이 웹의 창시자 팀 버너스 리가 생각한 웹이 지녀야 할 성격일 것이다. 따라서 웹에서 제공되는 정보나 서비스 등은 모두가 동의하고 보편적으로 받아들이는 표준에 기반해서 만들어져야 한다. 어떠한 정보나 서비스가 표준에서 지원되지 않는 임의의 기술을 이용할 경우, 해당 기술을 지원하는 환경에서만 접근할 수 있을 것이다. (잘 알려진 Microsoft의 ActiveX 기술이 여기에 해당한다.) 심지어 이 기술이 개방되지 않은 것일 경우, 해당 기술을 지원하는 환경 자체도 특정 라이센스의 보유 여부에 구속될 수 밖에 없다. 이들이 웹의 기본 철학인 보편성을 심각하게 해치는 것임에는 말할 나위가 없다.
웹은 환경과 수단에 제한받아서는 안된다
이번에는 방법론적인 이야기를 해보자.
사람들이 웹을 접근하는 가장 일반적인 도구는 바로 웹 브라우저이다. 알다시피 HTTP, HTML 등의 표준은 누구나 쓸 수 있도록 개방되어있다. 따라서 다양한 종류의 웹 브라우저가 존재하는 것은 아주 자연스러운 현상이다. Microsoft의 "Internet Explorer(이하 IE)"를 비롯해서 Mozilla 재단의 오픈 소스 브라우저인 "Firefox", 애플 Mac OS X의 기본 브라우저인 "Safari", 그 외에도 "Opera", "Flock" 등이 널리 알려져있다. 이러한 다양성은 단지 브라우저만으로 국한되지 않는다. 위의 브라우저는 제각각 지원하는 플랫폼이 다르다. 예를 들어 IE는 윈도우 기반 환경, Safari는 Mac OS 기반 환경 만으로 제한된다. 사용자의 플랫폼에 따라 브라우저 선택권도 제한되는 것이다.
웹은 보편적이라는 철학에 충실한다면 어떠한 웹 페이지를 어떠한 플랫폼에서 어떠한 브라우저로 접하든 간에 똑같이 보이고 똑같이 동작해야 함은 당연할 것이다. 브라우저들의 개성과 독창성은 어디까지나 웹 페이지의 표현과 동작을 해치거나 임의로 변형하지 않는 부분에서 발휘되어야 할 것이다.
통신과 하드웨어 기술이 발전하면서 사람들이 웹을 사용하는 환경의 다양성이 더욱 넓어지고 있다. 이제 웹을 사용하기 위해서 반드시 네모난 모니터와 넙적한 키보드를 갖춘 환경을 갖추지 않아도 된다. PDA나 휴대폰을 이용한 무선 인터넷이 그런 예가 될 수 있다. 근미래에는 자동차나 대부분의 가전제품에서도 웹을 사용할 수 있을 것이다. 물론, 브라우저간의 차이에 비하면 그 다양성의 폭이 훨씬 크기 때문에 모든 웹페이지가 동일하게 표현되고 동일하게 동작해야 함을 강제하는 것은 무리한 요구일 수도 있다. 하지만 이러한 환경의 다양성에도 불구하고, 어떤 웹페이지가 가지는 본질적인 의미나 핵심 기능을 이용하는데에 어려움이 있어서는 안될 것이다.
표준의 준수는 개발을 용이하게 한다
지금까지와는 조금 방향을 바꿔서, 웹페이지를 작성 또는 개발하는 사람의 입장이 되어보자. 앞서 서술한 바와 같이 사람들이 웹을 사용하는 환경은 지금도 다양하고 미래에는 더더욱 다양해질 것이다. 웹페이지 하나를 만들때마다 모든 가능한 사용자 환경에서 의도한 바대로 표현되거나 동작하는 것을 검증하는 작업은 보통 일이 아닐 것이다. 표준을 준수하는 웹페이지는 이러한 비용부담에서 벗어날 수 있다. 표준이란, 바로 모든 웹 접근 환경들이 지켜야 할 약속들의 집합이기 때문이다.
다만, 아직까지는 표준도 모든 세세한 부분에 대해서는 완벽하지 못한 부분이 있으며 계속 발전하는 과정중에 있다. 모든 브라우저가 현재까지 정해진 표준을 완벽하게 지원하지 못하는 것도 사실이다. 또한 특정 브라우저가 임의로 구현한 기능 중에는 표준이 아님에도 불구하고 많은 웹페이지에서 널리 쓰이고 있는 것들도 있다. 그러나 표준을 준수하여 제작된 웹페이지는 그 미래를 보장받을 수 있다. 앞으로 출시되는 새로운 환경, 또는 기존 브라우저의 업그레이드 버전에서 표준을 지원할 가능성이 매우 높기 때문이다. 임의로 구현된 기능은 버전업 과정에서 언제 폐기되거나 수정될 지 모르는 위험이 있기 때문에 장래를 보장받을 수 없다. 일례로, 지금 이 글이 작성되는 현재(2006-02-12) 베타버전이 돌아다니고 있는 IE7 (Internet Explorer 7)의 경우 그동안 임의로 지원되던 비표준 CSS나 ActiveX 등의 수정이 예정되어있어, 기존 IE6에서 임의로 지원되던 비표준에 의지하던 웹페이지의 경우 큰 혼란을 겪을 것으로 우려되고 있다.
참고자료:
웹 접근성: 진정한 보편성을 위해
웹은 누구에게나 보편적이어야 한다는 철학은 (표준과는 조금 다른 주제일 있는) '접근성'에 대한 이슈도 제기하고 있다. 이는 흔히 노인이나 장애인도 큰 불편 없이 웹의 혜택을 향유할 수 있어야 한다는 사상으로 잘 알려져있다. 하지만 실제로는 사용자의 신체적 불편함만에 국한되지 않는다. 예를 들면 컴퓨팅환경의 하드웨어적 또는 소프트웨어적 열악성(예를 들면 마우스를 쓸 수 없는 경우, 소리를 재생할 수 없는 환경, 최신의 웹 기술이 적용되지 않은 환경 등), 또는 경제적 생활 수준이나 정보 인프라 보급 수준의 차이에서 발생하는 불편성 등을 포함하는 개념이며, 흔히 "주류"로 가정되는 환경에 미치지 못한 환경에서라도 어떤 웹페이지에서 제공되는 핵심 요소에 보편적으로 접근할 수 있어야 함을 의미한다. 웹 접근성은 이 자체로도 방대한 주제이기 때문에 이 문서의 현재 버전에서는 깊이 다루지 않을 예정다. 일단 다음의 참고 문서들이 유용할 수 있다.
- 웹 접근성을 고려한 콘텐츠 제작기법 (pdf)
- 정보통신 접근성 향상 표준화 포럼
- 웹 및 정보통신 접근성 향상과 표준화에 대한 문서, 연구조사결과 제공.
- 웹 접근성 평가 및 수정도구 (테스트 프로그램, 서비스) 제공.
- W3C Web Content Accessibility Guidelines 1.0 (W3C Recommendation 5.May.1999)
- 웹 콘텐츠 접근성 지침 1.0 (위 문서의 한국어 번역판)
- 더 많은 W3C 문서와 한국어 번역판은 W3C Translations 사이트의 한국어 페이지를 찾아가면 구할 수 있다.
웹 표준의 종류
< TODO >
다루고자 하는 표준의 범위 명시.
XHTML CSS DOM Javascript (ECMAscript)
Validator 참고 사이트 - 공식, 비공식, 커뮤니티 등.
한국의 웹 표준 준수 실태
현재 우리나라 사이트들의 웹 표준 준수 실태는 결코 만족스럽다고 하기 어려울 것이다. (앞에서 언급한 접근성의 측면에서도 마찬가지이다.) 인터넷뱅킹, 전자결제 등을 비롯한 거의 모든 금융 서비스들이 Microsoft IE에서만 제공되는 ActiveX 기술에 핵심적으로 의존하고 있다. 정부 주도로 제공되고 있는 공인인증서 제도 역시 기술적으로 IE 환경에서만 지원된다. 보안이나 경제적 측면에서 민감한 서비스가 아니라 하더라도 여전히 많은 사이트에서 제공하는 컨텐츠나 서비스가 IE 환경만을 가정하고 설계되어있다. (예를 들면 간단한 배경음악의 재생부터 시작해서, 사이트의 레이아웃이 심각하게 깨지는 경우, 심지어는 아예 사이트에 로그인조차 되지 않는 경우 등) 우리나라의 비표준 실태는 세계에서 비슷한 예를 찾아보기 힘들만큼 높은 ActiveX에 대한 의존도 이외에도 많다. 많은 웹사이트들이 표준에 대한 별다른 고려 없이 그저 IE에서만 제대로 보이거나 동작하는 것을 테스트 기준으로 삼는 경우가 많다. 이러한 풍조는 수많은 비표준태그 및 비표준스크립트의 사용을 방치한다. 아예 VBScript나 JScript와 같이 IE에서만 지원되는 스크립트를 사용하는 경우도 있다.

