2010년이 돼서도 차별대우는 어쩔 수 없다.
var isMSIE = false;
var isMSIE
Dean Edwards씨가 몇 년전 쌀짝 공개했던 코드로 알려지게 되었는데, Internet Explorer에서만 채용된 JavaScript의 짝퉁, JScript의 Conditional Compilation Statements때문이란다.
혹은 더 짧게,
if(!+"\v1")
아래 한 줄의 코드 실행으로 Firefox 3(FF3), Firefox 2(FF2), Firefox(FF), Internet Explorer(IE), Safari(Saf) 그리고 Chrome(Chr)의 결과 값을 얻을 수 있다:
B=(function x(){})[-5]=='x'?'FF3':(function x(){})[-6]=='x'?'FF2':/a/[-1]=='a'?'FF':'\v'=='v'?'IE':/a/.__proto__=='//'?'Saf':/s/.test(/a/.toString)?'Chr':/^function \(/.test([].sort)?'Op':'Unknown';
퍼 나른 곳 = The Spanner – Detecting browsers javascript hacks
물론, 각 브라우저의 차기 버전이 배포되면 결과 값은 틀려질 수가 있으므로 사용에 주의를 요하지만, 종종 단순한 작업을 위한 긴급 처방으로 요긴할 때가 있다.
아직까지 Internet Explorer가 시장 점유율을 꽉 잡고 있는 상황에서 이번 Safari의 Windows 진출 소식은 쟁쟁한 경쟁자가 하나 더 늘어나게 되면서 아마도 앞으로 눈에 띄는 사용 점유율을 잠식할 수 있으리라 기대해 본다. 물론 MS의 독점 기술들로 철옹성처럼 둘러쌓인 현재 한국의 특수한 웹 환경을 따로 생각하면 이는 결코 만만치 않을 것이다. 하지만 이렇게 되면, MS도 가만 있을 수 있을까?
현재 IE 7이 보여주는 뒤떨어진 UI나 기능을 따지고 보면, 또 하나의 발등에 불이 떨어진 격이라서 결국 IE 8의 발표 시기도 앞당겨 질 수 밖에 없을 것이고 본격적으로 또 한 번의 웹 브라우저들 간의 치열한 경쟁이 시작되겠지.
그래도 과거처럼 브라우저들 간의 전쟁이 웹 개발 환경에 심각한 부작용을 끼치리라고는 생각되지 않는다. 이제는 기본 웹 질서와 표준을 파괴하면서까지 사용자들을 끌어 모을 수 없을 것이기 때문이다. 그래서 이번 진출 소식은 웹 사용자들과 웹 개발자들에게는 반가운 소식이 될 수 있으리라 믿는다.
iPod 성공에 의한 iTunes 시장 확대, 이어서 iPhone 판매에 따른 부수적으로 노리는 Safari 사용자 층 증가.
이번 Safari의 윈도 진영 진출을 보면서 흥미를 끄는 것은 iTunes를 시작으로 이번 Safari까지 과연 Apple의 Windows 겨냥 도전장은 앞으로도 그 도가 세질 것이라는 점이다. 웹 브라우저의 시장 점유율 만을 겨냥해서 Windows에서 돌아가는 Safari를 개발한 것은 아닐테고, OS에서 차지하는 Web의 영역은 가장 중요한 부분 중에 하나이고 그 영역은 점점 넓어지고 있는 것을 생각해 보면, 10 월에 발표될 차기 Mac OS X가 될 Leopard에 포함된 Boot Camp를 뛰어넘는 더 진화된 OS 가상화 기술의 발전에 따라 자연스럽게 개발이 이루어지면서, 이 모든 것이 결국 Windows의 영역까지 치고 들어갈 중요한 또 하나의 초석이 될 것이라고 짐작해 본다.
또 하나, 이제 Windows에서 Webkit 기반의 Safari가 돌아가게 되면, 어쩌면 자연스럽게 Dashboard를 돌릴 수 있는 기본적인 환경이 마련된 것이니 아마도 가까운 장래에 Widget들도 따라오지 않을까 기대해 본다. 설마 Mac 용 Safari에 들어갈 새 Web Clip 기능이 Windows Safari에서만 쏙 빠지게 있다면 당연 허전하겠지.
마지막으로 이번 WWDC 07 개막 연설을 보면서 장비와 웹 간의 소통이 좀 더 진화하는 것을 느꼈지만, 역설적으로 고립된 한국 웹 환경을 또 한 번 돌아보며 아쉬움을 느낀다.
그나저나, 이번에 싹 바뀐 Apple 웹 사이트는 여러 UI 효과를 위해 Prototype과 Scipt.acul.us를 사용했군.
웹 페이지를 디자인 하거나 개발할 때 여러 웹 브라우저들에서 보여지는 결과물은 각기 그 편차는 있겠지만 다양한 종류의 브라우저들의 수 만큼이나 천차만별이다. 그렇기 때문에 각기 다른 브라우저들에서 개발 웹 사이트가 실제로 어떻게 보이는지를 확인하는 것은 개발 과정 중 필수이다.
물론 이런 경우를 대비해서, Mac에서는 Parallels와 같은 가상 머신을 돌려서 확인해 볼 수도 있지만 간단한 확인 만을 필요로 할 때는 번거로운 작업이 될 수도 있다. 이런 잠깐의 확인이 필요할 경우 도움이 될 만한 여러 Web Rendering 서비스들이 있는데, 그들 중 IE NetRenderer 브라우저 호환성 검사 서비스는 무료에다가 비교적 빠른 결과물을 보여준다.
현재는 IE 5.5부터 IE 7 중 원하는 웹 브라우저를 선택해서 주소만 입력하면 해당 브라우저에서 보여지는 웹 페이지의 모습을 그림으로 바로 보여준다.
비교적 빠르게 그 결과를 확인할 수 있었는데, 몇 가지 아쉬운 것은 웹 페이지의 길이가 길 경우 대략 768 픽셀 이하는 잘려 버리고 한국어도 지원하지 못해서 글자가 무참히 깨져버린다. 그래도 웹 페이지의 단순 배치 구도를 확인만 할 경우에는 유용한 서비스일 듯하다.
아래는 웹 브라우저의 책갈피에 저장해 놓고 바로 확인할 수 있게 만든 bookmarklet.
덤으로, 웹 페이지에 있는 글자가 배경 색깔과 충분히 대조를 이루는가를 검사해주는 Juicy Studio의 Colour Contrast Firefox Extention이 최근 버전의 draft Web Content Accessibility Guidelines 2.0 내용에 맞추어 갱신되었단다.
브라우저들의 개성 파악은 웹 개발자들의 취미 생활.
WebSideStory Inc.의 발표에 의하면, 작년 8월과 비교해서 Mac의 웹 점유율이 거의 두 배인 5.6%를 차지하고 있단다. 이 수치는 저번 주에 Net Applications에서 발표한 4월 OS와 웹 브라우저 점유율 수치(6.2%)와 거의 비슷한 것이다. – Mac “web share” doubles.
물론 Intel CPU로의 이전과 함께 실제 시장 점유율도 더불어 상승해 왔지만, 웹에서 차지하는 Mac의 점유율이 더 가파르게 상승한 이유로는 Mac 사용자들은 인터넷을 통한 컨텐츠 생성과 사회적 교류에 더 적극적이인 것으로 추측되기 때문이란다. 이 정도의 수치라면 웹 개발자들은 앞으로 Mac을 그냥 무시할 수만은 없을 것이다.
한국도 비슷한 상황이 된다면 우리나라 웹의 체질도 바뀌어야 할텐데 오히려 웹의 접근 자체를 가로막는 높은 장벽이 여러 곳에 존재하고 있는 현실이다.