구글웹팀과 validation: html, css
Thursday, October 20, 2011
얼마전 구글이 개제한 “Validation: measuring and tracking code quality” 를 번역한 글이다.
사실 html이 xhtml로 넘어오면서 생긴 구문들의 변화들 때문에도 validation 이 개발자들 사이에서는 xhtml 인지도 측정하는 듯한 얼리아답터인 듯한 척도로 사용되곤 했었다. “나는 xhtml1.0을 사용하는데 에러하나 없이 코딩했다” 를 나타내는 자신감의 표현이라고나 할까. 그리고 xhtml이 보급 되는데에 많은 도움을 주었다고 생각한다. xhtml varified (xhtml 에러없이 통과) 아이콘을 사이트에 기본적으로 달 정도로 인기있던 그것이 이제는 많이 보기는 힘들다. 물론 제대로된 html5 의 validation 까지는 기술적인 부분의 제약도 있고 사용도도 낮기도 하지만 이제는 누구나 사용하게되는 기본적인 개념과 html 태그들의 사용이 많이 개선되었기 때문이라고 본다.
그 가운데 구글이 validation을 자신들의 페이지 코드들의 건강상태를 측정하는 용도로 사용한다는 글을 통해 이제 나에게 있어서의 validation 은 무엇인가를 생각해 보게하는 글이라 번역해봤다.
Validation(검증): 코드의 질을 측정하고 추적하기.
구글 웹마스터 팀은 Job site이나 개인정보관리 페이지 같은 구글의 여러 정보 사이트를 담당한다. 수만개의 페이지들을 관리하며 새 구글 사이트를 공개하는것은 단순한 열정으로는 부족하다. 질높은 관리(management)가 필요하다.
이 글에서 웹사이트를 분석하는 여러 테스트에 대하여 이야기 하지는 않을것이다. 오히려 HTML, CSS 검증 (validation, w3c에서 제공하는 검증을 말함) 과 질적인 부분을 시간이 흐름에 따라 변화되는 모습을 볼 것이다.
왜 검증(validation) 이 중요한가? 검증에 대한 여러 견해들이 있다. 구글에서도 여러 다른 접근방식과 우선순위들이 있지만 우리 웹마스터 팀은 validation을 기본적인 질좋은 속성이라고 생각한다. 접근성이나 성능이나 보존성을 보장해주는것은 아니지만 수많은 이슈들을 사전에 알려주며 바른 기술 사용법을 측정해 준다.
이러한 검증 부분에 많은 신경을 쓰는 동시에 우리가 만든 페이지가 질적인 부분에서 얼만큼 잘 하고 있는지를 측정하는 시스탬을 개발하였다. 이러한 방식이다. 각 페이지당 10점 만점을 기준으로 측정하여 0점은 최하 (HTML과 CSS 검증에서 10개 이상의 에러가 나온 경우 이겠다) 이고 10점 (0 개의 에러) 이 최고로 정하였다. 우리는 약 2년전 전부터 처음엔 샘플링으로 시작하여 지금은 모든 페이지를 감독하고 있다.
처음 시작때부터 검증 스코어를 계산하고 기록하며 현재 어떻게 하고 있는지 앞으로는 어떤 방향으로 나아가야 하는지를 보고자 했다. 결과가 향상되고 있는가 아니면 그 반대인가를 말이다.
기록을 보여주는 도표이다.

웹마스터팀은 평균적으로 약 3개 정도의 validation 이슈를 보여주며 이는 약 4개정도의 이슈가 났던 2년전 보다는 향상되었다.
이 정보는 우리에게 상당한 중요성을 갖는데 완벽히 검증된 코드를 전달하자는 우리의 목표에 얼마나 도달 했는가를 보여주며 우리가 바른 방향으로 가고 있는지를 알려준다. 보시다시피 2009년의 2분기와 2010의 첫분기를 제외하고는 긍정적인 트랜드로 향하고 있다.
알아두어야 할 것은 데이터의 정직성 integrity of the data 의 이슈들이 있다는 것이다. 예를들어 셈플의 크기라던지 “부정확한 통과” 등등이 있을 수 있다. W3C와 우리는 이러한 부분들 개선해가기 위해 함께 노력하고 있지만 소프트웨어가 완벽할수 없듯이 이슈가 안되는 것들이 에러가 나는 경우들도 있다. 최근 고쳐진 border-radius 같은 것들 말이다. 이런것들이 validation 스코어에 좋지 않게 반영되는 부분들이 있지만 아직은 어느 정도인지 측정할 만한 데이터는 없다.
비록 질적인 제어를 위해 validation 이상의 것들을 검사하지만 validation 자체가 구글 정보 사이트들의 건강을 측정하는 용도로써의 갖는 중요성은 이루 말할 수 없다.
여러분들은 validation 을 개발의 어느부분에서 어떻게 사용하고 있는가?
