SimpleIsBest.NET

유경상의 닷넷 블로그
이 글은 오래된 전에 작성된 글입니다. 따라서 최신 버전의 기술에 알맞지 않거나 오류를 유발할 수 있습니다. 저자는 이 글에 대한 질문을 받지 않을 것입니다. 하지만 이 글이 리뉴얼 되면 이 글에 대한 질문을 하거나 토론을 할 수도 있습니다.

2006년 2월15일에 IE에 중대한(?) 업데이트가 발표됩니다. 소위 ActiveX 컨트롤의 활성화에 대한 변경으로서 APPLET, OBJECT, EMBED 태그를 통해 생성된 사용자 인터페이스를 갖는 ActiveX 컨트롤, 자바 애플릿, 플러그 인은 곧바로 활성화(activate) 되지 않고 사용자가 컨트롤을 클릭하거나 탭키로 컨트롤을 선택한 후, 스페이스 키나 엔터 키를 눌러야만 활성화 됨을 말합니다. 개인적으로 창피한 이야기 이지만, 대충 이야기를 들었으나 상세한 변경 내용은 어제서야 알게 되었습니다. 우리나라 같이 ActiveX 를 많이 사용하는 웹 사이트들이 많은 경우, 이 변경이 우리나라의 여러 웹 사이트에 상당한 영향을 미치리라 생각되지만 생각 보다 잠잠하네요. 개략적으로 이 내용을 살펴보겠습니다.

ActiveX Activation Change in IE

우리나라의 사용자는 사용자 인터페이스에 대단히 민감한 것 같다. 사이트는 죄다 예뻐야 하며 역동적인 UI를 제공해야 한다. 그리고 배경음악까지 들을 수 있으면 더욱 좋을 것이다. 이렇게 미려하고 역동적인 UI를 갖기 위해서 HTML와 스크립트로는 힘이 부치기 마련이다. 그래서 많이들 사용하는 것이 ActiveX 컨트롤이다. 파일 업로드를 위해, 게시판에 HTML로 작성한 글을 올리기 위해, 아바타를 표시하기 위해, 사이트 혹은 까페에 현재 접속한 사용자를 보여주기 위해 ActiveX는 아주 많이 사용되고 있다. 우리나라의 사이트들이 유독 ActiveX를 많이 사용한다고 한다. 사실 외국 사이트를 돌아다니다 보면 ActiveX를 설치하길 요구하는 사이트를 거의 본적이 없었던 것 같다.

그런데 이 ActiveX가 활성화되는 방법이 변경된다고 한다. APPLET, OBJECT, EMBED 태그에 의해 생성되는 컨트롤(ActiveX, 애플릿, 플러그 인)은 이제 더 이상 곧바로 활성화 되어 사용자 입력(키보드, 마우스 입력)을 받을 수 없게 된다. 컨트롤은 생성과 동시에 비활성화 되며, 컨트롤을 활성화 시키기 위해서는 사용자가 컨트롤을 클릭하던가 아니면 키보드(탭키)로 컨트롤을 '선택'한 후에 스페이스 키나 엔터 키를 눌러야만 한다. 일단 활성화된 컨트롤은 사용자와 완전하게 상호작용하게 된다. 컨트롤이 비활성화 되어 있더라도, 컨트롤은 화면상에 UI를 표시한다. 다만 활성화 되기 전까지 DHTML 이벤트나 사용자의 키보드 입력, 마우스 입력에 반응하지 않는다는 얘기이다. 물론 이러한 변화를 피하는 방법(workaround) 역시 제시되어 있다. 이상 IE의 변경에 대한 일반적인 FAQ와 기술적 문서, 기술 FAQ 는 다음 웹 사이트에서 찾아 볼 수 있다.

Why ?

왜 MS가 이런 변경을 하게 되었을까? 원인은 캘리포니아 주립대(University of California, Berkeley)와 벤처기업인 이올라스 테크놀로지(Eolas Technologies)가 MS를 특허권 침해로 소송을 냈기 때문이다(이 소송이 제기된 지는 6년도 더 지났다). 이 특허는 HTML 문서 상에서 컨트롤(임베디드 객체)을 자동으로 사용하게 할 수 있는 내용이라고 한다. 특허의 내용은 필자가 알 바 아니다(사실 영어 실력이 딸려서 당췌 몬말인지 모르겠드라... -_-). 이 점에 대한 MS의 공식적인 입장 표명은 이미 여러 고객에게 발송되었다(?)고 하는 공문이나 웹 사이트에서 알 수 있다.

암튼 이 특허 소송으로 인해 이러한 변경이 가해진다고 보면 되겠다. MS가 소송에서 졌기 때문에 변경이 가해진 것은 아니다. 소송은 아직 진행 중이며 결과도 아직 나오지 않은 상태이다. 그럼에도 불구하고 왜 MS는 이러한 변경을 가하는 것일까? 이제부터는 필자의 생각을 말하고자 한다.

My Humble Opinion

이번 IE의 변경은 아무리 보아도 이올라스란 회사에게 거액의 특허 사용료를 내지 않기 위함으로 보인다. 돈이 아까워서 ? 결코 아니라고 본다. MS 같이 현금이 많은 회사가 그걸 두려워하진 않을 것이다. 다만 제2, 제3의 이올라스가 등장하지 말란 법이 없지 않은가? 만약 MS가 이올라스에게 먹고 떨어져 라고 돈을 집어준다면 비슷한 사례가 앞으로도 계속 발생할 가능성도 배제할 수는 없을 것이다. 게다가 일부 언론에서 지적하는 바와 같이 애플릿과 플러그 인은 이미 사장되어버린 기술이고 전세계적으로 보았을 때, 브라우저에 ActiveX 컨트롤을 사용하는 빈도도 높지 않다는 것도 한 몫 작용했으리라 생각된다.(그런데 우리나라에서는 ActiveX 컨트롤을 사용하는 사이트는 많기도 하다. 된장...)

비록 고객들의 불만이 나오더라도 소송이 진행되는 상황에서 IE에 변경을 가하고 소송에서 지는 한이 있더라도 이올라스는 몇푼 건지지 못할 가능성이 높다. 또 한가지 MS가 배짱 좋게 IE를 변경할 수 있는 상황은 W3C가 강하게 이올라스를 비판하고 있으며, W3C의 의장이자 웹의 창시자인 팀 버너스 리 역시도 이올라스를 비판하고 있는데다 대부분의 언론에서도 이올라스를 곱게 보지는 않기 때문이다. 물론 우리나라에선 아직 언론의 관심을 끌지 못하고 있지만, 무식하게 한 쪽 생각만을 밀어 붙이는 일부 꼴통 언론들은 아마 이번에도 똥인지 된장인지도 모른 채로 무조건 MS를 매도할 가능성도 높다.

필자 역시 이올라스와 캘리포니아 대학을 곱게 봐줄 수 만은 없다왜 ActiveX가 발표되고 사용 된지 몇 년이나 지난 후에야 수백만 사이트에서 사용하고 있는 보편적인 기술에 대해, 그리고 다른 브라우저 개발 업체들을 제외한 MS 에게만 소송을 냈겠는가? 멍청한 필자는 아무리 봐도 돈 많은 MS에게 몇 푼 뜯어내려고 밖에 생각되지 않는다. 이올라스와 캘리포니아 대학 덕분에 우리 개발자들은 이제 존나게 이미 개발된 웹 페이지들을 뒤져가며 수정을 해야 할 지도 모르게 되었다.

Expected Impact

다가올 IE의 변화가 어떤 영향을 미칠까? 실체를 보지 않고 판단하기 어렵다고 생각한 필자, 어렵게 Preview 가 있다는 것을 알아 냈다. Preview는 MSDN Subscription 다운로드 사이트(subsciption 이 없는 회사의 경우 그림의 떡이 되겠다. -_-)의 Operation System 밑에 있는 Internet Explorer 관련 다운로드에서 찾을 수 있다. Preview를 다운로드 받아 설치하려고 하는데, 영문판 XP에만 설치되는 것이 아닌가? -_-; 부랴 부랴 Virtual PC에 Windows XP SP2를 설치했다. 그리고 다시 Preview 설치 시도... 알 수 없는 설치 실패. 최신 패치를 받지 않아서인 듯 해서 최신 업데이트까지 완료 한 후에 겨우 Preview를 설치할 수 있었다.

Preview를 설치한 후에 국내 유수의 포털 사이트 둘을 들어가 보았다. 초기에 뜨는 플래시 기반의 광고는 모두 IE 변화의 적용을 받았다. 플래시 광고가 나타나자 Close 버튼을 클릭했지만 이 클릭은 컨트롤을 활성화 시키는 클릭이 될 뿐이므로 다시 Close 버튼을 클릭해야만 광고가 닫혔다. 또한 플래시 배너 광고 역시 한번의 클릭으로 해당 사이트로 이동하지 않았다. 이 정도의 두 번 클릭은 사람에 따라 아무렇게 생각하지 않을 수도 있지만, 까다로운 우리나라 사용자들이 어떻게 반응할지는 미지수 이다. 더욱이 웹 페이지를 약간(?) 수정하면 이러한 효과가 나타나지 않는다는 것을 사용자들이 알게 되면 불평이 나올 수도 있다. 또 한가지 눈에 거슬리는 것은 ActiveX 컨트롤이나 플래시가 아직 활성화 되지 않은 상황에서 컨트롤에 마우스를 올려 놓으면 나타나는 영역 표시였다. -_-;

한 두 군데의 영화관 사이트를 들어가 보았다. 영화관 사이트 특성상 아주 여러 개의 플래시를 통해 메뉴와 UI를 구현해 놓은 사이트 였다. IE 의 변경 덕에 마우스를 아무리 움직여도 메뉴는 반응하지 않았다. 플래시 컨트롤을 한 번 클릭해 준 이후에야 겨우 마우스의 이동(mouse hovering)에 따라 서브 메뉴가 나타나고 UI가 반응했다. 앞서의 포털 사이트에 비해 플래시를 이용해 메뉴를 구현한 사이트는 이번 IE 변경에 보다 많은 영향을 받을 것으로 기대된다. 메뉴를 플래시로 구현한 사이트가 그 얼마나 많은가... (슬슬 걱정이 된다... -_-)

시간 관계상 더 이상의 테스트는 진행하지 못하고, 이러한 ActiveX 활성화 변경을 피해가는 방법을 테스트 해 보았다. MS의 기술 문서에서 제시한 바 대로 ActiveX 컨트롤을 직접적으로 OBJECT 태그를 사용하지 않고 외부 (HTML 내에 구사되는 스크립트는 효과가 없었다. 철저히 특허에서 주장하는 기술을 피해가려고 하는 노력이 보인다) 스크립트에서 document.write 나 DOM 모델을 사용하여 ActiveX를 "생성"하였더니 컨트롤은 정확이 IE 변경 이전의 대로 작동했다.

이제 남은 것은 결정만 남았다. IE가 변경되어 사용자에게 한 번의 클릭을 더 하도록 강요(강요라기 보다는 걍 냅 두는 것이 가까울 것이다)하거나, ActiveX, 플래시 등을 사용하는 웹 페이지를 기술 문서에서 설명한 대로 수정을 하던가... 돈 몇 푼 뜯어 내려는 똘아이 꼴통 몇 덕분에 우리나라 개발자는 다시 귀찮게 HTML 페이지들을 뒤적여야 할지도 모른다. 물론 변경에 영향을 받지 않는 컨트롤들(특히 UI 가 없는 보안, 암호화 관련 컨트롤들)은 별 문제가 없겠지만, 사용자와 상호 작용해야 하는 컨트롤들을 사용하는 페이지는 IE 변경 이전과 동일한 행동을 보장하기 위해서는 HTML 을 수정해야만 한다. 그리고 이러한 수정은 일부 사이트가 아닌 많은 사이트가 수행해야 할 작업으로 보인다.

Prepare !!!

이제 IE 업데이트까지는 2주도 채 남지 않았다(설 연휴를 제외하면). 우리나라 웹 사이트의 담당자들은 얼마나 이러한 사실을 알고 있을까? 모르긴 몰라도 아는 사람은 그다지 많지 않으리라 생각된다. ActiveX 나 플래시의 사용 빈도가 높은 우리나라 환경을 고려하면 참으로 안타깝다고 말할 수 밖에 없다. 2월 15일이 지나면 누군가가 MS에 대해 불평할 것이고, 앞뒤도 가릴 것 없이 우리나라의 언론들은 또 MS를 매도하게 될 것을 생각하니 한숨만 나올 뿐이다.

MS가 임의로 ActiveX 가 활성화 되는 것을 바꾸어 고객을 귀찮게 만든 것은 고객을 생각하지 않는 처사임은 분명하다. 일개 조그만 나라의 자동차 보험 회사까지 "다 알아서" 해주는데 말이다. 까짓 돈 몇 푼 줘서 먹고 떨어져 라고 하지 않고 귀찮게 시리 IE를 변경해야만 했는가에 대해서는 MS는 비난을 면하기 어려울 것이다. 하지만 상당이 오랫동안 IE 가 변경될 것을 알려왔음에도 불구하고 우리나라 IT 담당자들이 이것에 대해 잘 모르고 있었다면 그건 분명히 MS Korea의 홍보 부족임이 분명하다. W3C와 비 MS 진영까지 이올라스를 비판하고 MS를 옹호하는 마당에 MS Korea 만 욕을 바가지로 먹지 않을까 하는 생각도 해본다.

요는 이렇다. 얼마 남지 않았지만, 미리 준비하면 된다. 쓸데 없이 앞으로는 ActiveX 못 쓴다든가, OBJECT 태그를 아예 못 쓴다든가 하는 유언비어에 놀아나지 말고, 자료를 충분히 읽고 테스트 하자. 관련 기술문서의 내용은 어렵지도 않고 간단하다. 한글판 Preview가 없어서(MS Korea가 우리나라가 ActiveX를 많이 사용한다는 상황을 인지하고 조금만 신경 썼다면 한글판 Preview도 나왔을 법 한데... 아쉽다...) 테스트가 쉽지는 않겠지만, 영문판 XP를 설치하고(한글 폰트와 IME를 설치하면 한글 사용에 무리가 없다), 최신 업데이트를 모두 받은 후 IE ActiveX Activation Update Preview를 설치하면 테스트 환경을 갖출 수 있다. 테스트 환경에서 여러분의 웹 사이트가 어떤 영향을 받는지 테스트 해 보고 문제가 있다면(ActiveX를 사용하더라도 아무런 문제가 없을 수도 있다), 웹 페이지를 약간만 수정하면 된다... 약간만....



Comments (read-only)
#re: Be Prepare -> Prepare / 열혈독자 / 5/29/2006 1:19:00 PM
중요한 건 아니지만...
#re: 중요! IE ActiveX 활성화 방법 변화에 대해... / 블로그쥔장 / 5/29/2006 2:05:00 PM
햐... 맞네요... 수정하겠슴다... ^^
#re: 중요! IE ActiveX 활성화 방법 변화에 대해... / dfdf / 3/14/2008 1:13:00 PM
ffffffffffffffffffffffffddddddddddddddddddddddddddddddddddddddddffffffff