메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

IT/모바일

아플레테 쿼바디스(APLETE QUO VADIS) - 애플릿이여, 어디로 가시나이까?

한빛미디어

|

2001-09-11

|

by HANBIT

9,842

By 한빛리포터 2기, 이아스님 오늘도 여전히 허겁지겁 일하고 있던 나에게 MSN으로 메시지가 날라왔다.
"뭣 좀 물어보려고 하는데요..." "아프게만 물지 마세요." "후후... 웹 브라우저에서 JVM(자바 버추얼 머신)이 깔려있는지를 알 수 있는 방법이 있나요?" "음..."
감이 딱 왔다. 최근 MS의 윈도우 XP는 운영체계에서 JVM을 빼기로 결의했다. 그러니까, 애플릿을 서비스하는 웹 사이트에서는 일 난 것이다. 따라서 애플릿을 품고 있는 HTML페이지는, 자바스크립트를 쓰던 비베(비주얼 베이직을 줄여서 늘상 이렇듯 귀엽게 발음한다)스크립트를 쓰던 간에 JVM의 설치 유무를 알아봐야 한다. 만약 설치되어 있으면 애플릿을 돌려주고 아니면 뭔가 다른 수를 내야지, 그냥 애플릿 에러를 멍하니 사용자가 바라보게 해서는 서비스의 질과 친절성에 금이 쩍쩍 가는 소리가 날 것이다. 어쩌다가 우리의 애플릿이 이 지경에 이르렀을까? 1995년 5월 말 넷스케이프 네비게이터안에서 펄쩍펄쩍 뛰던 듀크를 본 것이 엊그제 같은데, 넷스케이프의 몰락과 함께 점차 맥이 빠지더니 이제 인터넷 익스플로러에서는 채 판도 벌여보지 못하고 장을 빠져 나와야 하는 남사당패와 같은 구슬픈 신세에 처하고 말았으니 말이다. 분명 누군가가 책임을 져야 할 일로 보이지 않는가? 나는 작년 이맘때쯤부터 스티커 사진기를 애플릿화한 사이트에서 일하기 시작했다. 원래 그 사이트의 이미지 처리 애플릿의 이상 증세를 고치기 위해 급파된 나는, 그래픽 카드에 따라 색조의 붕괴가 일어나는 기이한 현상을 체험하고는 실제 서비스용 애플릿 개발의 난맥상을 똑똑히 볼 수 있었다. 그리고 무사히 일을 마치고는 기존 애플릿의 자바2 마이그레이션(Java 2 migration), 즉 자바 플러긴(Java plugin)을 써서 최신의 자바 기술을 통한 향상에 대한 연구 조사를 위탁 받아 약 3개월간 분석해보았다. 단도직입적으로 결론부터 화끈하게 말하자면 "자바 2로의 이전은 불가능하며 하루빨리 현재 서비스중인 모든 자바 애플릿을 MS의 네이티브 액티브 콘트롤(native active control)-Visual C++로 작성한 브라우저안의 콤포넌트로 바꾸어야 한다는 주제의 보고서를 뒤로 한 채 그 회사를 떠나야만 했다. "자바 불가론-애플릿을 걷어내라"는 모토에 경영진과 실무진 모두 고개를 끄덕였지만, 엄청난 개발비를 들여 만들어놓은 애플릿들을 하루아침에 갈아엎으라니 하늘이 노랗게 보여도 무리는 아닐 것이다. 그것이 2000년 12월의 일이다. 윈도우 운영 체계상에서 "자바에게 남은 운명은 죽음뿐이다"라는 독설을 한 내 자신의 마음도 아프기는 마찬가지였었다. 그리고 반년이 넘게 지난 지금, MS는 본격적으로 윈도우 세계의 "자바 죽이기" 작업에 착수하고 있다. 새로 나올 운영체계인 XP에서 JVM이 사라졌다는 얘기는, 다른 식으로 말하면 사용자가 XP의 설치 후에 처음으로 조우하는 자바 애플릿의 움직임을 볼 수 없다는 뜻이다. 어쩌면 그 암담한 상황에 직면해서야 JVM을 설치해야 함을 깨닫고서 MS의 불친절에 짜증낼지도 모르겠다. 하지만 그렇다고 MS가 JVM자체의 제공을 거부한 것은 아닌 것이, 인터넷에서 다운로드 받게 해주겠다고 공언까지 했다. 그렇다면 무엇이 문제일까? 인터넷 접속이 가능한 사람에게는 아무 상관 없지 않겠는가? 요새 인터넷도 안 되는 사람이 과연 있겠는가? 그런데도 뉴스와 업계 전문가들은 난리법석을 떤다. MS가 이번에는 확실하게 한 건 한 듯한 냄새를 풍기기에 여념이 없다. 썬은 마치 습격을 당한 듯한 불쌍하며 어리둥절하고 준비성 없는 모습으로 비친다. MS와 썬의 대결 양상으로 본다면 일리는 있다. 하지만 중요한 것은 PC운영체계 세계 1위와 서버 비즈니스 세계 1위와의 통합 타이틀 매치가 아니다. 정작 MS의 윈도우 XP를 쓰고 거기에서 자바를 돌릴 사용자와 개발자의 목소리에는 귀를 기울이고 있는 것인지. 황급하게 JVM설치 유무 판별 방법을 묻는 한 개발자에게서 느낀 것은 바로 "볼멘 소리"였다. 당장 발등에 불이 떨어진 사람들은 바로 게임과 멀티미디어를 애플릿 기반으로 제공했던 회사의 개발자들일 것이다. 안그래도 가뜩이나 버전이 낮아(썬은 벌써 JDK 1.4 베타2까지 내놓는 판에 MS의 인터넷 익스플로러에 기본 내장된 JVM은 1.1대라고 추정(이것조차 확실하지 않다.)되고 있다.) 기능상 제약도 많은데다가 엎친 데 덮친 격으로 이젠 아예 뜨지조차 않는다면 머리에 쥐가 날 수 밖에 없다. 한번 상황을 가정해보자. 컴퓨터를 새로 산 사람이 있다. 미리 XP가 깔려있다. 공장에서 설치했을 테니 기본 설정으로 되어있을 터이고, 따라서 JVM은 설치되어 있지 않을 것이다. 그리고 이 컴퓨터의 사용자가 애플릿이 포함된 사이트를 MS 인터넷 익스플로러로 보면, 뭐라고 나올 것인가. "애플릿을 실행할 수 없습니다. 플러긴을 설치해주세요." 여기에는 두 가지 선택사항이 있다.
  1. Windows Update 사이트로 가서 MS JVM을 받아 설치한다. (이런 안내는 MS의 전매특허이다)
  2. MS가 얄미워서라도 썬의 자바 플러긴 사이트로 가서 최신 버전1.3.1(혹은 1.4) 플러긴을 받아 설치한다.
아마 둘 중 어느 하나도 "귀찮을" 것이다. 그날따라 유난히 인터넷이 붐벼 MS 사이트도 썬 사이트도 짜증나리만치 느릴 수도 있고. 어떤가? 냉정할 수 있는 최대한 냉정하게 생각해보면, 기본으로 설치되지 않았다는 사실이 얼마나 일반 사용자에게 "치명적"이라는 것 또한 인정하지 않을 수 없다. 그나마 우리나라는 초고속 인터넷이 대세여서 다운로드 받는 시간에 대해서는 별 불만이 없지만, 그래도 몇 분은 걸리니까 그냥 넘어갈 일은 아니다. 페이지가 몇 초만 늦게 떠도 "왜 이렇게 느려?"하는 것이 우리나라 네티즌의 현재 상황이라면, 애플릿 하나 돌려보려고 몇 분씩 기다리고 앉아 있으라는 것은 "이래도 애플릿 할래?"라는 빈정거림으로 비칠 공산도 무시 못하지 않겠는가. 하물며 아직도 전화선으로 "삐리리~"하고 있는 미국이나 일본에서의 사정은 더욱 어려울 것임이 뻔하게 짐작간다. 이제 C#도 나오고, .NET도 나오니, 애플릿을 정 짜고 싶으면 MS 솔루션으로 해도 가뿐한 것이다. MS는 힘겨웠던 Visual J++ 제품군을 마감하면서 점프(JUMP)라는 개념을 내세웠다. 자바를 C#으로 변환(Convert)한다는 말인데, 사실상 C#이 자바의 문법을 포함하고 있어서 별로 무리가 될 것도 없어 보인다. JDK 1.1수준의 API까지 C#이 포함해준다면 이건 완전히 자동 번역기 수준의 작업이 되고도 남는다. 자바 애플릿 소스만 있으면, C# 애플릿이 뚝딱하고 나온다. 조금만 다듬으면, JVM도 필요 없고, 화면도 덜 껌뻑거리고, 어쩌면 MS 인터넷 익스플로러의 지극한 원조를 받아 아주 빠르고 편한 모습까지 갖춰줄 지 알 수 없다. 그러고 보면 사용자에게도, 심지어 개발자에게도 자바 애플릿의 박멸은 그리 나쁠 것이 없다. 오히려 사용자는 빠르고 익숙한 사용자 인터페이스를 향유하고, 개발자는 흐느적거리는 MS의 자바 지원에 항의할 필요도 없고, 이거야 말로 누이좋고 매부좋은 형국이 아니던가. (참고로 JUMP to .NET은 올 하반기 베타, 내년 정식 공개를 예고하고는 있다. 실제로 그 스케줄이 지켜질 지 알 수 없긴 하지만.) JDK 1.4를 기준으로 자바 입문서를 쓰고 있는 나는 썬의 "발 늦은 행각"에 자주 미소를 짓는다. 비웃는 것은 아니다. 썬도 나름대로 사정이 있었겠지 하며 이해하니까 그런 표정을 짓게 되는 것이다. 휠 마우스가 대중화 된 게 언젠데 이제서야 지원하고, 환상적인 2D 랜더링으로 자바 그래픽 분야 개발자들을 경악의 도가니로 몰고 간 게 벌써 수년이 지났건만 지금에서야 가속 기능이 제대로 구현되고 있으니 말이다. 세계에서 자바를 열심히 하기로는 둘째 가라면 서러운 대한민국이건만 썬의 한국지사 분들은 얼마나 황망하신지 몰라도 자바 명세 문서의 번듯한 한글판조차 찾아볼 수 없어 일본어판을 한미르로 자동번역해서 보는 엽기적인 사태까지 실제로 벌어진들, 오늘도 서버와 솔라리스의 판매에 심혈을 기울이고 계시나 보다. 작년 말 자바 2 클라이언트 기술에 대해 알아보던 중 아주 반가운 소식이 들려왔다. 바로 자바 웹 스타트(Java Web Start)의 등장이다. 더 이상 애플릿으로 어떻게 해볼 수 없는 상황에서 일종의 타개책으로서 아주 확실하게 ASP(Application Service Providing)으로서 기존 애플릿 구조와는 궤를 달리하고 싶어하는 분위기가 역력했다. 개인적으로는 아주 좋은 시도라고 여겨졌지만, 글쎄 애플릿 돌리기 위한 자바 플러긴도 안받으려고 하는데 누가 과연 JWS까지 설치해서 그걸 쓰려고 할까. 아직 인터넷 선진국이라는 우리나라에서 자바2 플러긴하에서 돌아가는 상업용(유료건 무료건) 서비스 애플릿을 본 적도 없고, 더군다나 JWS는 더 본 적이 없다. 썬이 집집마다 CD를 돌린다고 해도 일명 찌라시와 다를 바 없다면 아무 소용이 없지 않을까? JDK 1.4고 JWS고 다 좋다. 그러나 중대한 사안은 기술의 진보성이 아니다. JDK 1.2가 나온지 2년이 다 되어가건만 MS가 기술력이 없어서 그걸 구현하지 못할 리도 없고, 썬이 설득력이 없어서 인터넷 익스플로러에 썬의 자바 기술을 집어넣지 못한 것도 아니다. 나는 작년 연구 당시 내내 이런 꿈을 꾸었다. "MS와 썬이 갑자기 공동기자회견을 통해 MS는 썬의 JVM을 윈도우 OS와 인터넷 익스플로러에 탑재하고 썬은 MS과 윈도우에 최적화된 JVM의 구현을 긴밀하게 협조한다." 어떤가? 그야말로 자바인들에게는 꿈의 향연일 것이다. 그러나 잘 보면 왜 이것이 그저 한 개발자의 화장실속 상상으로 밖에는 그칠 수 없는지 짐작이 간다. 기브 엔 테이크(give and take)의 본고장에서 잘 보라, MS는 무슨 이익을 얻는가를. 아무런 이득도 없다. MS가 공짜로 썬의 JVM을 받는다면 좋을 법도 하지만, "자사 라인업은 자사화한다"는 MS의 정책과는 위화감이 크다. 만약 썬의 JVM이 시원치라도 않으면 뭐라 간섭이라도 해야할 텐데, 공짜로 쓰는 주제에 그럴 수도 없을 것기다. 그렇다면 썬의 JVM 구현에 MS가 참여해야 하는데, 그 결과는 결국 썬의 자바 기술 강화로 이어진다. 그야말로 죽 쒀서 개 주는 꼴이 아닌가. 내가 빌 게이츠라도 별로 내키지 않을 뿐더러 전혀 실익이 없는 협력을 할 MS가 아니다. 그렇게 낭만적으로 경영을 했다면 MS는 5년 전에 벌써 IT역사의 뒤안길로 사라졌을 것이다. 그래서 처음에 MS는 윈도우용 자바 기술을 아예 통째로 좌지우지하려고 했지만 결국 위험한 시도가 썬에게 발각되어 기나긴 재판 끝에 변호사의 배만 불리고 자바쪽에서 손을 씻는다는 맹세 끝에야 풀려났다. MS는 C#과 같은 새로운 언어가 그다지 필요한 것이 아니었는데도 결국 자바를 보며 입맛을 다신 채 새로운 커피를 마셔야 했던 것이다. 일각에서는 썬의 실책이 크다는 평이 있다. 아예 썬의 CEO인 스캇 맥닐리까지 싸잡아서 비난하기도 한다. MS는 하나 잘못한 것 없다. 밉게 보인다면 철저하게 시장의 원리에 따른다는 태도 때문이고, 오히려 썬이 너무 오만하게 굴고 난 끝에 마침내 자신들과 자바 사용자가 뒤웅박 써버린 결자해지(結者解之)의 과정이 연출된 것 뿐이라는 시각이다. 이번 XP 소동도 썬이 조금만 굽히고 들어가서 MS에게 JDK 1.3.1의 인터넷 익스플로러 6용 플러긴을 XP 출시 일정에 잘 맞춰 제공하겠다고 말만 해봤어도 이렇게 욕을 먹지는 않았을 것이라는 후문이다. 사후약방문도 아니고, 이제서야 사용자의 플랫폼 선택의 자유 운운하는 모습에 마냥 동정이 가지는 않는 것이 아무리 자바를 애호하는 입장이라도 솔직한 심정 아닐까. MS도 이제 JVM 만들기 지쳤을 것이고 개발팀 운영에 돈만 아깝다는 생각이 들 터인데, 오히려 아쉬운 입장인 썬에게 아무 연락이 없으니 괘씸해서라도 자바 지원에 성의를 보이고 싶지않는 것이 당연하지 않겠는가. 자바의 3대 플랫폼 중 가장 돈이 안되고 있는 J2SE(Java 2 Standard Edition)에 대해, "아예 PC시장을 포기해라"는 비아냥도 들린다. 정말로 J2SE가 단순히 개발 환경과 표준 제시의 수준에서 그칠지 걱정 아닌 걱정을 해본다. "Write once, Run anywhere"가 가슴을 뜨겁게 했던 것이 지난 수년간 애플릿을 달구어왔다면, 이제 "Write once, Run well in Windows"가 작금의 현실이다. 워크아웃이니 퇴출이니 하는 말이 판치는 요즘, 과연 자바 시대의 장을 열었던 그 조그만 애플릿은 자신의 고향에서 쫓겨나야 하는 것인지, 애플릿을 열렬히 선전하고 믿어 의심치 않던 그 누군가에게라도 묻고 싶다. 혹시 INRI란 약자를 아는가. 예수가 박혔던 십자가위에 달린 죄목판에 쓰인 말, "Iesus Nazarenus Rex Iudaeorum -유대의 왕 나사렛 예수"이다. 이제 AJRI란 푯말과 함께 애플릿이 인터넷 익스플로러 위에 X(컴포넌트 실행 불가 상태)로 표시될 지도 모른다. Apletus Javanus Rex Internetium - 인터넷의 왕 자바의 애플릿 P.S. 자바 애플릿을 많이 쓰는 우리나라의 실정을 감안하여 PC메이커나 용산 조립 업체에게 XP설치 시 JVM를 추가해주는 배려가 있었으면 하는 것이 소박한 바람이다. 미국쪽보다는 시간의 여유가 있으니 썬에서도 말만 앞서지 말고 실제적인 지원으로 한국의 사용자에게 감동을 주길 기대해본다.
TAG :
댓글 입력
자료실

최근 본 상품0