웹표준이 병신인 것을…
웹표준을 지지하는 사람들의 이상은 나도 동감한다. 어느 플랫폼 에서나 잘 나오는 웹 이라... 참 올바르고 올바른 이상이라고 할 수 있다.
하지만, 그 웹표준이 시대의 요구를 따라가지 못하고 있는 것을 어쩌랴...
웹은 본래 하이퍼텍스트를 하이퍼링크로 엮었기에 웹 (거미줄) 이라고 불리웠다. 본래의 웹 에서 웹은 하이퍼 텍스트 문서의 집합이었고, 그 일방성의 한계를 극복하기 위해서 서버로 request 를 날리고, response 를 받는 형식을 사용한 cgi (common gateway interface) 기술을 사용하기 시작했고... 그 대화형 시스템이 현재 웹 서비스의 기틀이 되었다.
그런 대화형 시스템의 포괄성과 하이퍼텍스트의 표현력을 이용하고, 인터넷이라는 공간의 무제약을 기틀로 해서 커뮤니티, 미니홈피와 같은 서비스들이 우후죽순으로 생겨났다.
하지만, 이 웹 서비스가 진행되는 중간에 이상한 현상이 발생했다. 기존 윈도우와 같은 데스크탑 OS 를 통해 어플리케이션을 배포하는 것이 너무나도 복잡한 절차를 거치는 일이었기에, 서비스의 빠른 유통을 원하는 이들이 점차적으로 웹을 어플리케이션의 대안체로 사용하길 원했다는 것이다.
그리고... 이 점차적인 어플리케이션화에 웹표준이 대응을 하지 못하며, 초반엔 activeX 가, 현재는 발전된 표현력을 바탕으로 한 flash 로 바뀌어 나가고 있고, javascript 를 기반으로 한 Ajax 기술 역시 꽃을 피우게 되었다.
하지만, 웹표준이 제안하는 기본적인 방식인 Ajax 와 같은 기술의 표현력은 재앙에 가까울 정도로 형편 없다는 것이 문제였다. bitmap 을 다루지 못하기에 필요한 그림은 모두 이미지 파일로 저장해서 서버에 올려야했고, 효율적이지 못한 javascript 형식에 얽매여있고, 단순히 이미지 프로세싱이 되면 그만일 뿐인 사항들에 대해서 css 를 가지고 박스를 이리저리 변형시켜야 했다. (visual 을 그냥 만들어버리면 되는 것과 오브젝트를 transform 하는 것은 일반적인 경우 초반이 오히려 더 쉽다...)
XML 을 한도 끝도 없이 사용하는 XHR 을 사용하면서도 엥간한 웹어플 개발플랫폼들은 옛날에 버린 방식인 고전적인 firstChild.firstChild.nextSibling 연타를 날려야 했고, 그런 것을 극복해 보겠다고 비합리 위에 합리를 설계하기 위해 기형적인 모양새가 된 prototype, mootools, jquery 와 같은 프레임워크 들이 등장했다...
대형 벤더들의 경우 google calendar 나 google docs 와 같은 살인적인 작품들을 만들어내기도 했지만, 그 작업량이 그냥 플래시와 같은 편리한 수준의 개발 플랫폼으로 만들었을때보다 작업량이 얼마나 더 높을지 상상도 하기 힘들고, 벤처로 대표되는 대다수의 it 기업들은 그것을 선택하기 어려운 수준이었다. 똑같은 표현을 하기 위해서 끔찍한 작업을 하느니, 차라리 flash 로 만드는게 더 좋다는 거지...
htm5 가 나온다곤 하지만... video 태그 된다고 해봤자 그냥 유튜브 같은 서비스를 교체할 뿐이지 막상 스트리밍, 저작권 보호 기능등이 없고, 아직 이슈화 되지 조차 못하고 있는 웹소켓은 이미 사용되던것들 뒷북치는 상태이고, canvas 는 차마 ie 에서 지원도 되지 않을 뿐더러 flash 로 치면 가장 원시적 api 인 Graphics 만 뚝 띄어다 놓은 상태이고, 막상 javascript 가 제대로 된 개발방식을 지원해주지 못하기 때문에 canvas 를 바탕으로 한 프레임워크가 나와봤자 prototype 같은 괴상한 언어 형식이 될 것은 뻔하다... 그나마 제일 기대되는 기능은 웹DB 뿐...
html5 가 암만 발전했다고 난리를 쳐봤자 막상 어플리케이션을 만드는 일에 있어서는 플래시 MX 2004 수준의 저급한 환경밖에는 지원이 안된다... html, css, javascript 역시 개발 플랫폼이라고 봤을때, 정말 저질스럽다고 할 정도로 낮은 수준밖에 지원이 안된다.
시대는 흘러흘러 웹 어플리케이션 시장 역시 작업량이 살인적으로 늘어나서 이제 설계지향이니 뭐니 하는 벼라별 소리가 나오다 못해, 프레임워크 시대로 넘어가고 있는데, 웹 표준의 개발플랫폼 수준은 다른 플랫폼들의 2004년 정도의 수준도 안되고, 차마 발전한 건덕지도 보이질 않는다. 단순히 되냐 마냐 (그나마도 안되는게 너무 많지만...) 의 문제를 넘어 이젠 개발을 얼마나 편리하게 할 것인가, 고객의 요구에 얼마나 빠르게 대응 할 것인가, 유지보수에 있어서 얼마나 합리성을 갖출 것인가, 그것들을 통해 얼마나 쓰잘데기 없는 코딩질에 시간 뺏길일 없이 가치있는 것에 신경을 쓸 것인가... 에 촛점이 맞춰지고 있는 상황에서 웹표준을 부르짖는 것은 실제 하이퀄리티 웹어플리케이션을 개발하는 이들에겐 짜증나는 개소리일 뿐이다.
웹표준이 실제적으로 사용되지 못하는 것은 웹표준 이라는 개발플랫폼 자체가 근원적으로 문서에 바탕을 둔 어플리케이션을 지향하지 않았던 기술들이었기 때문에 불편하기 때문이다.
많은 사람들이 플래시 개떡같다 하지만, 잘못 만들어진 작업물 가지고 개떡같다 하면, 막상 html, javascript 개발하는 이들 중에서 여전히 getElementByID 를 안써서 IE 이외의 브라우저들에서 작동되지 않는 더 많은 개발물들이 존재한다... 다 싸잡아서 "병신" 이라고 말하면 거꾸로도 말할 수 있는 것이고, 기술 대 기술로 정정당당하게 평가하자면 웹표준은 뭘 만들기엔 상당히 저질스럽다...
안해봐서 저질스럽다는 것도 아니고, 둘 다 다 하는 입장에서 javascript 로 개발하기도 짜증나거니와 브라우저간 호환성 맞춘다고 병신짓 하기도 지친다... 한 달 작업한다고 생각해봐야 Flash 로 만드는 것과 Ajax 로 만들 수 있는 것의 수준 차이가 너무 끔찍할 정도로 큰데, Ajax 와 같은 표준을 바탕으로 한 기술 따위 마음이 가질 않는다.
난 개인적으로 웹표준이 왜 성역화 되는지, 개떡같은 기술들이 왜 표준으로 주장되어야 하는지 잘 이해를 못하겠다는 생각이 든다. 다른 기술들은 기업들이 개발해서 표준으로 써달라고 그렇게 주구장창 외치며 경쟁하고 난리도 아니던데, 웹표준은 왜 과거의 방식에서 한발자국 발전하는데 세월아 네월아... 기다려야 하는것인가...
웹표준이 성역화 되어서 졸라 쓰기 힘든 개떡같은 플랫폼으로 개발하는 것이 올바른 것이 되느니, 차라리 다양한 기술들이 표준으로 제정되기 위해 경쟁하는 것이 더 옳지 않은가... 왜 플래시는 표준이 못되는거지? 단순히 어도비가 기술 공개를 안하기 때문일 뿐이고, 공개 하면 canvas 같은거 때려치고 그냥 플래시 쓸건가?
요새 3d 개발한다고 피뽑고 있는 상황에서 웹이 웹표준으로 뒤덮여야 된다고 부르짖는 사람들의 말은 그 이상을 이해하면서도, 동시에 "아 썅... 클라이언트 개발만 전문적으로 하지 않으면 닥쳐!" 라고 말하고 싶을 정도로 짜증이 날때도 있다...
객체풀을 사용해서 성능을 개선할만한 방법도 없거니와, transform 도 아니고 단순 trasition 에서 조차 버벅대고, 필요한 컴포넌트를 만들어서 사용할 수도 없거니와 브라우저 호환성 때문에 신뢰성 높은 언어 레퍼런스 조차 없고, Graphics drawing 을 할 수 없기 때문에 round rect 를 그리는 것 조차 이미지 9조각 잘라서 병신짓을 해야 하는 플랫폼으로 무슨 개발을 하라는 건가...
3d 에 필요한 triangle draw 를 할 수 조차 없고, bitmap 이 없어서 bitblitting 기술을 써서 그나마 최적화를 시킬만한 방안도 없고, web gl 이라는게 도대체 언제 나올지도 모르겠고... 뭐 말은 졸라 많은데 html5 가 막상 실제적으로 굴러갈라면 분명 4~5년은 걸릴 것 같고... 플래시 플레이어 처럼 강제적으로 업데이트를 시킬 수도 없는 마당에...
무슨 웹표준이고 나발이고 지랄이고야... 그 이상을 가지는 것은 이해하지만, 그 이상 때문에 막상 더더욱 중요한 실제 구현작업이 파탄날 지경인데... 그냥 안만들고 말라는건가? 그래... 요샌 앱스토어가 대세라서 플래시 때려치고 그냥 앱스토어 앱 만들면 되겠다. (어짜피 나도 하드웨어 렌더링도 제대로 안되는 플래시로 3d 를 하니 마니 하느라고 지쳐있는 상태였는데...) 웹 어플리케이션이고 나발이고 나야 그냥 안만들면 되는건데... 문제는 고객들이 원하잖아... 어쩌라고 Ajax 같은 걸로 만들다간 세월아 네월아 해야 하는판에 웹표준으로 만들까?
웹표준이 가지는 이상과 웹표준이 가지는 현재의 저질스런 현실은 분리되어서 생각되어 지는 것이 옳다고 본다. 개발자보고 짜증날 정도로 피곤한 웹표준을 가지고 작업하라고 닥달해댈게 아니라, 웹표준이 훌륭한 비전을 보여주는 기술이 되든, (꼴랑 html5... 플래시가 5년전에 구현하던거 이제 된다고 길길이 날뛸 수준으로는 택도 없다...), 아니면, 훌륭한 기술이 웹표준이 되든 해야한다.
웹표준이 무슨 바티칸도 아니고, 성역화 되어서는 안된다. 여타의 기술들과 경쟁하고 싸워서 훌륭한 플랫폼임을 스스로 입증하지 못하는 한 웹표준에 대한 애정은 영원히 멧돼지 같은 딸년 예쁘다고 바락바락 떠드는 양반나리 같은 수준으로 밖에는 비춰지지 않을 것이다.
애플이 플래시 깠다고 졸라 좋아하던데, 과연 애플이 원하는 것이 웹어플리케이션의 웹표준화 일까? 아니면, 웹어플리케이션 시장을 죽여서 앱스토어로 편입시키는 것일까? 내가 생각하기엔 애플이 승리했을때 가장 위험한 기업은 그토록 웹표준을 잘 지키고, 웹 어플리케이션으로 기존 어플리케이션 체계를 대체하고자 했던 활동을 많이 한 그 어떤 기업이지 않을까 싶다. 그 어떤 기업이 어디라고 생각하는가?
웹개발자가 아닌, 웹 클라이언트 어플리케이션 개발자로서 어느쪽이 되든 상관없다... 돈 만 되고, 사람들에게 좀 더 좋은 어플리케이션을 제공할 수만 있다면...
근데, 어쨌든 지금도 작업하기 힘든데, 웹표준 지켜서 html, javascript, css 라는 네안데르탈인 수준의 플랫폼에서 작업하진 않을거다...
2010년04월27일 10:17
안녕하세요.
문득 검색하다가 다소 과격하지만 저와 생각이 너무나 같음에 놀라서 글을 읽고 인사차 댓글을 남깁니다.
저는 지금도 이해가 안가는 부분이 있습니다. 바로 말씀하신 웹표준인데요.
그 웹표준이…컴퓨터라는 녀석이 처음 어느날 뚝딱하고 나올때, 웹표준은 이러이러하다라고 규정지어서 나온게 아닐진데 말입니다.
말씀하신데로..웹은 하이퍼링크를 기반으로 발전한 영역이기 때문에 기본이 철저히 텍스트 기반이고 한때 주야장천 쓰댔던 테이블이라는 녀석처럼 가로,세로 사각 셀로 규정될수 있는 녀석이죠. 그곳에서 웹은 빽빽히 마진과 패딩을 갖고 텍스트를 넣고 이미지를 넣고 그렇게 지금도 디자이너와 개발자의 궁색으로 사각테두리를 어떻게 좀 라운딩나게 꾸며볼까 머리를 맛대면서 고민하며 지금도 명맥을 유지하고 있죠.
그런데 우낀것이 이런 모양일때 비로소 진정한 표준이라고들 말합니다.
뭔가 세련됨, 화려한 요소들이 포함되면 표준을 논하는 사람들은 반사적으로 거부반응을 일으킵니다. 제가 작년에 왜 웹에서의링크를 A태그로만 앵크로 만들어야 되나로 어떤분과 논쟁을 벌였던적이 있는데요. 실상 span태그에 onclick으로도 전달을 할수 있죠.
문제는 그사람은 원론적인 얘기만 하고 웹이 그러니까..그렇다…웹의 정의안에는 표준과, 접근성이 보장되어야 한다. 맞습니다. 틀린얘기아니죠. A태그로 해야 액세스빌러티 때문에 시각장애인들이 사용을 할수 있고, 탭오더가 먹고 또 웹크롤러라는 녀석이 A태그를 기반으로 내용을 가져가죠..누가 그걸모르겠습니까만은.
제 얘기의 핵심은..당시 웹크롤러가 만들어질 시기, 그리고 시각장애인들을 위한 스크린리더기등이 초기에 HTML1.0 W3G의 기본태그를 기준으로 만들다보니..그렇게 된거지 그게 20년후에도 영원이 그렇게 해야만 한다는 절대적인 기준이 아니라는거죠..
그래서 저는 웹이라는건 발전을 해야하고 그렇기 때문에 span태그의 융통성이 나쁠게 없다라고 말한것이거던요… 사실 그런논리라면 AJAX도 역시 싸잡아 비난받아야 마찬가지이거던요.
분명 저녀석도 원래 용도는 지금처럼 대놓고 ASYNC로 써라고 만들어진 녀석이 아니니까요.
그럴꺼면 객체네이밍과 메소드명등이 좀더 근사하게 만들어졌어야 하니까..
그런데 이런 비유에서 AJAX와 플래시 둘중, 단지 AJAX는 플러그인이 필요없다는 이유로
표준의 범주에 허용(?)이 되고 플래시는 배제된단 말입니다.
앞뒤가 안맞는 논리이지요..
제가 항상 하는말이 있습니다. 표준과 비표준은 단어문구 하나차이처럼 그 영역이 매우 모호하고 문제는 수용할수 있는 그릇이냐 아니냐일뿐…
ActiveX와 플래시를 일반인들, 잘모르는 비전문가들은 같은 녀석으로 취급합니다.
하지만 분명 두녀석은 명확히 차이가 나죠.. 한녀석은 네이티브코드라서 오직 운영체제 종속적이고 한녀석은 VM만 있으면 어떤플랫폼에서든 동작되는 녀석이라는거…
그렇다면 이러한 관점에서 본다면 플래시는 준비된 그릇이지만…
표준을 관장하는 사람들, 기업들, 그들의 힘의논리에서 배제된 비운의 녀석일뿐이라는것이죠.
일반인들은 CPU와 GPU의 역할을 잘 이해하지 못합니다만. 그래픽카드는 잘알죠.
그래픽카드가 왜 생겨났을까요? 과거 MMX시절 펜티엄시절에 코프로세스가 왜 생겨났을까요?
중요한건 CPU의 부담을 줄이고 전문 영역에게 맡겨서 처리하자는 주의거던요…
그런맥락으로 본다면..
HTML5는 웹브라우져가 모든걸 알아서 처리해야지만 플래시는 브라우져에게 의존하지 않고 독자적으로 실행하는 VM이기때문에 GPU에 비유될수 있고 더 월등한 성능과 효율을 발휘하는 녀석이죠..
그런데 오직 웹브라우져안에 기본으로 탑재되지 않은 플러그인이라는 이유하나만으로 무시당합니다…
그렇다면 웹브라우져는 그럼 OS깔면 바로 깔리던가요? 4개 브라우져가 모두 설치도어있던가요? 그건아니거던요..우리는 우리가 원하는 프로그램을 사용하려면 다 설치를 합니다.
필요에 의해서 악성코드가 아니라면…
마찬가지로 파이어폭스의 수많은 플러그인 크롬의 수많은 애드온들을 다 설치해서 사람들은 저마다 다 쓰면서 플래시는 웹리소스 돼지 온상으로 취급합니다.
실상 그네들도 얼마전까진 유투브에서 동영상을 보려면 플래시로 만들어진 플레이어라는것을 망각한채 말입니다.
그리고 얼마전에 한 웹사이트를 보여주면서(디자인사이트입니다.) 그곳이 깔끔하고 군더더기 없고 부하가 적은 최적화된 사이트라고들말하면서 논 플래시 사이트가 이래서 좋다고들 얘길하는 분을 제가 봤습니다.
하도 어이가 없어서 한마디 해주고 싶더군요.
그 사이트에서는 플래시를 사용하지 않기 위해..(GNB는 당연 플래시가 아니여야지만) 리스트에 썸네일 이미지들을 전부 애니메이션GIF로 대체하고 10FPS이상으로 애니메이션되는 이미지들을 상단에 15개정도 리스트 업 했더군요..
사실 저야 플래시름 만지니 항상 기본 작업관리자의 메모리 상태를 띄워놓고 있어서 그사이트가 어떤상태인지 잘알고 있죠.
당장 눈에는 플래시가 안돌아가서 리소스가 적을것으로 사람들은 오인하지만 작업관리자 점유율상태를 눈으로 확인해보면 항상 100%상태라는것을 그사람들은 모릅니다.
즉, 플래시처럼 최적화된 기술이 아니기에..애니메이션 GIF로 프레임모션을 처리할경우 대상이 200*200 픽셀이 넘어갈경우 엄청난 부하가 가동된다는것을 일반인들은 이해하지 못합니다.
단지 눈에 여기저기 돌아다니는 웹플래시 베너가 없기 때문에 월등한것으로 오인하지요.
이것이 바로 잘못된 편견들이라는걸 일반인들은 이해하지 못합니다.
그리고 HTML5는 모든 웹브라우져를 최신것으로 업데이트 하지 않는이상 영원히 최선이 될수 없습니다. 물론 IE를 제외한 나머지 브라우져들은 자동으로 업데이트를 해줍니다만 국내에선 아직도 IE6이 점유율 60%를 넘어서고 25%가 ie8 나머지 15%가 ie7인 실정입니다.
그리고 며칠전에 네이버에서 탈플래시를 선언해서 개인적으로 지지하는 포스팅을 했었는데…
제가 원하는건 제발 네이버에서만이라도 쓰레기플래시 배너가 사라졌으면 하는 마음에서 지지했습니다. 하지만 정말 안타까운건 웹표준을 운운하는 사람들의 잘못된 편견과 시각들입니다.
지금이 시대가 2010년인데 다른 분야에선 다 모든 발전을 꾀차고 있지만 왜 아직도 웹에서만 오직 상하 좌우, 근래에는 이미지 없이 깔끔하게 떨어지는 텍스트기반의 사이트가 최고인냥 얘길하는건지… 웹은 모든플랫폼에서 다 보여야 한다고 얘길한다면 그건 영원히 발전을 포기한 멘트라는게 전제되는것인데…
이를테면 이명박대통령이 죽어라 컴퓨터를 업데이트 안하고 오직 Ie6만 고집하는사람이다라 친다면 이명박대통령 때문에 ie6에 기반된 사이트와 기술을 영원히 고수해야 옳은것인지 아니면 그사람을 설득해서 차라리 더 나은 기술을 사용해서 좀더 세련된 웹페이지를 표현하는게 옳은것인지 바로 그런 차이이거던요.
밤을 샜더니 횡설수설하네요. 아무튼 답답한 맘에 공감도 가고 해서 두서없이 댓글을 남기게 되었네요.. 좋은글 잘 읽었습니다. 꾸벅..
2010년04월27일 16:59
으음… 평소에 꽤 많이 쌓여있으셨나 보네요… ^^;;; 플래시 하는 사람들이 어딜가나 소수자에 포함이 되는 편이기 때문에 의견충돌이 많은 편이죠.
너무 스트레스 받지 마시고, 그냥 자기 할 일 잘하다보면 좋은 날 오겠지 라고 생각하면 될 것 같습니다. 저도 요새 좀 떠들었더니 피곤하기만 하고, 내가 왜 이런 소릴 하고 앉아있나 싶더군요…