상단 사이드바 열기

데스크탑 = 나 (III)

데스크탑 = 나 (III) 분류없음 2008/03/13 00:45
TV를 예로 들어보자. 기존 매체인 TV는 내가 중심인 매체가 아니다. TV가 중심이고, 제공자(server/provider)가 먹여주는(feeding) 컨텐트를 받아먹을 수 밖에 없는 흔히 이야기하는 "바보상자"다. 내가 일반적으로 할 수 있는 것은 정해진 시간에 정해진 컨텐트를 보거나 보지 않거나(못보거나) 둘 중 하나이다. 재방송이라고 해도 그 시간에 보거나 보지 않거나(못보거나) 둘 중 하나이다. 그것을 바꾸기 위해서 내가 TV로 할 수 있는 것은 없다 - 간접적으로 영향을 주지(feedback) 않는 한에는.

그곳은 사람들이 혹은 내가 모일(gather) 수 밖에 없는 곳이다. 모인다는 측면은 굉장히 좋은 특징이지만, 이 시대의 개인(individual)이라는 것이 점점 더 중시되는 현상을 충족하기에는 부족한 것이 분명하다. 모이기 때문에 더 인간적이라고 하는 것은 시대적으로 딱 정확한 말이라고 하기에는 부족함이 있지 않을까. 그 먼 - 혹은 멀지 않은 - 옛날에 동네 아이들과 어르신들 흑백TV 앞에 모두 모여 김일의 박치기를 보던 그런 느낌이리라. 영화에서 그런 연출을 하는 것도 뭔가 즐거운 분위기를 위한 모티브를 제공하기 위함이었을 것 같다.

아직 그런 느낌이 남아 있는 중계들이 있다. 스포츠 중계. 그래서 그 중계권을 따내기 위해서 엄청난 돈을 뿌리고 경쟁들을 하는 것이다. 하지만, 토요 명화, 주말의 명화라는 말이 이전과 같을까.

언제든 실시간일 필요 없이 골라서 볼 수 있는 방법들이 계속해서 만들어지고 있기에 모두 모이는 의미의 역할이 점점 축소되어가고 있다. TV기 때문에 모이는 것이 아니라 모이기 위해서 TV를 사용하는 - 하지만 없어지지는 않으리라. TV에서의 온디맨드(On-Demand)라는 말은 꽤 오랫동안 이야기되어왔지만, 우리의 마음에는 TV란 그런 것이 아니다. TV의 이미지는 TV의 브랜드는 여전히 모이는 곳으로서의 느낌을 오랫동안 떼어내지 못하고 있다. 그래서 TV와 모니터의 기술적인 갭 뿐만 아니라 심리적인 갭이 이렇게나 좁히기 힘든 것일테다. 근래에서야 메가TV/하나TV등과 같이 인프라를 활용한 서비스들이나 IPTV와 같은 말들이 슬금슬금 가능성을 드러내고 있는 상황이다. 그래도 웬지 혼자 보기보다는 딸이나 친구랑 같이 봐야 더 좋다.

반면 데스크탑은 일단 내가 중심인 곳이다. 내가 원하는 것을 내가 원하는 때에 볼 수 있는 그런 곳이다. 내가 원하는 것을 보여줄 수 있는 그런 곳이다. 컴퓨팅을 한 모니터 앞에 모여서 하는 것이 흔할까 아니면 각자 데스크탑 뒤의 RJ-45 전기신호로 통신을 하는 것이 흔할까...답은 정해져 있다. PC는 Personal Computer이고, 핸드헬드 디바이스는 사실 Personal Device인 것이다. 소유의 의미로써의 Personal 뿐만 아니라 나를 대변한다는 의미로써의 Personal.

(이 데스크탑이 다시 TV때의 모이는 의미로 회귀하는 경우는 오락(entertaining) 목적인 경우이고, 오락이 목적이되면 되려 데스크탑으로서의 의미가 퇴색되는 경우이기에 다른 이야기로 남겨둔다.)

데스크탑이 TV가 가진 훌륭한 특성을 버리게 만드는 역할을 한다는 것이 아니다. 대신 데스크탑을 통해서 가상적으로(Virtually) 모이는 새로운 방식을 제공하게 되었다는 것이다. 위에서 이야기한 것처럼 얼굴 마주보고 모이는 것에 비해서 이것이 "덜 인간적이다(?)"라고 하는 말이 세대를 거쳐가면서 점차 참/거짓의 참으로 이야기할 수 없는 것이 되어가고 있는 것이 아닐까. 이 "가상적으로 모인다"는 말은 물리적으로 모인다는 것에 비해서 엄청나게 큰 기회를 제공한다. 그리고, 이 모인다는 표현에 있어서의 매개는 "데스크탑"인 것이다! "데스크탑=나".

- 철수(charlz)(20080313)
Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

데스크탑 = 나 (II)

데스크탑 = 나 (II) 분류없음 2007/07/15 02:20
데스크탑의 컴퓨팅파워는 항상 밑빠진 독처럼 부족했다. 향상되는가하면 그것을 풀 이상으로 사용하여 아무리 편리해져도 뭔가가 모자른 상태의 미완성이었다. 이런 미완성은 단지 소프트웨어가 파워를 잡아먹는데서만 기인하는 것이 아니라 기존의 설계가 유지되는데에도 영향을 많이 받기도 한다. 아무튼 빨라진다는데 정작 내가 하고자하는데 있어서는 얼마나 빨라졌는지 체감하는 정도가 광고하는 만큼이 아닌 적이 얼마나 많았던가. 결과적으로 항상 만족할만하다는 말은 그것을 계속 겪어 습관적으로 익숙해진 예상치에 비해 얼마나 조금 더 나은가에 평가되곤 한다.

이에 대한 불만의 해소조로 일반 사용자들은 내가 필요한 기능만 있으면 되는데...라는 상상을 하지만 사실은 대부분의 기능(functionallity, not feature)이 사실은 다른 기능(feature, not functionallity)를 만드는 그런 형태의 유기적인 모습으로 인해서 그것이 가능한 것인지도 알 수 없는 것이 현실이다. 알고보면 내가 필요한 기능은 이 모든 것이 된 것이다. 그런 생각에 OS가 새로 만들어지기도 하고, 모듈화되기도 했지만, 결국에는 원점이다. 데스크탑의 파워는 결국 모자른 것이다. 새로운 기능 없이 기존 기능만 계속해서 체감속도를 빠르게 하는 OS가 나올리 만무하지 않은가. 파워에 불만이 있더라도, 그러게 만들면 그것을 사겠는가?

컴퓨터가 우리를 편하게 해주는 것과는 반대로 우리는 그 편함을 누리기 위해서 컴퓨터에 맞춰야하는 반대급부가 항상 존재하고 있고, 문제는 그것이 큰 숙제라는 것이다. 아직도 컴퓨터가 우리에게 해줄 수 있는 것은 이 우주의 크기만큼 남았다. 생각만 하면 이뤄졌으면 좋겠지만, 그 생각이 표현되고 디지털화되기 위해서는 거쳐야하는 여과과정이 있다. 컴퓨터가 이해할 수 있도록 그 생각이 변형되어야한다는 것이다! 그 변형의 과정은 컴퓨팅 파워를 먹고 자라기 때문에 그리고 아직도 한참 모자르기 때문에 뱃속에 거지가 든 마냥 파워를 먹어댄다.

그것이 "데스크탑=나"의 또다른 이야기다. 파워가 모자른 것이 당연한 자연스러운 것인 이유가, 나라는 개체가 하는 것들에 가까워져야 하기 때문인 것이다. 내가 - 내 머릿속의 8차원 공간이 - 원하는 것의 복잡성은 컴퓨터가 하는 것에 비할바가 아니다. 내 머릿속의 파워와 맞먹기 위해서는 수십년이 필요하다고 쳐도 파워와 함께 머릿속에 들어있는 것들이 비슷해지기 위해서는 수십년이 더 필요할 것이다. 오시이 마모루의 "Ghost in the Shell에서처럼 뇌를 전뇌화해서 직접 통신하거나 케빈 워윅처럼 신경을 직접 연결해서 인터페이스하는 등의 기술들이 보편화되기 전에는 저 디지털로 된 세상과 아날로그인 내가 인터페이스하는 그것, 바로 데스크탑이라는 갭이 있을 수 밖에 없기 마련이다. 이 갭을 데스크탑이라는 쉬운 말로 표현했다. 사람과 컴퓨터 사이의 갭.

이 갭은 컴퓨팅이 보편적으로는 눈을 통해서 입력되고 손을 통해서 출력될 수 밖에 없는 현재 기술의 한계에 기인한다. 따라서 저기 저 디지털의 세계 속에서의 관점으로는 - 물론 디지털 세계가 생명이 있다는 말에는 다양한 관점이 있을 수 있기에 의인화한다면 - 나는 내 데스크탑인 것이다.

- 철수(charlz) 20070715
Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

데스크탑 = 나 (I)

데스크탑 = 나 (I) 분류없음 2007/07/11 01:37

많은 사람들이 데스크탑은 죽었다, 웹이 왕이고 웹표준이 살길이다라고 이야기하는 딱 지금의 이 시점이 왜 "데스크탑=나"냐는 질문에 대해서 되려 조금 더 이야기할 필요성이 조금 더 강해진 시점이라는 생각이 든다. "지금의 이 시점"이라 함은, 이 블로그를 통해서 계속 이야기하고 있던 다양한 방법을 통하여 크로스플랫폼이라는 것을 들고 나오는 커다란 기업들의 공세가 눈에 띄게 시작한 시점이기도 하고, 그 크로스플랫폼을 이루기 위해서 런타임이라는 것을 사용자의 주머니에 은근슬쩍 밀어넣는 그런 방식이 어떻게 성공하게 될 것인가가 가시화되고 있는 시점이기도 하며, 이것이 정말 중요하게 생각하는 것이 결국 "데스크탑"이라는 것이 자명해지는 그런 시점이기도 하다.

크로스플랫폼이라는 말을 잘 풀어서 생각해보면 다양성을 존중해준다는 의미로 받아들여질 수 있기도 하다. 사용자가 뭘 쓰든지간에 존중해주겠다는 일종의 개방성(openess)이며, 한가지로 통일(unification, 단일화)하기 위한 노력과는 별도로 통일하지 않고도 통일하겠다는 방식의 변화이다. 나라는 개인이 좀 덜 획일화될 수 있는 하나의 방향성이고 개인성이 더 커지고 있는 세태를 이야기해주고 있는 것이기도 하다. 나는 내가 사용하는 것으로 인해서 고립될 필요가 없고, 개인이 커지면서도 함께일 수 있다는 나름대로 강한 메시지다.

기업시장에서도 수년동안 서서히 바뀌는 패러다임의 주류 중 하나가 이종(heterogeneous) 환경의 통합(integration)이다. 기존에 있던 혹은 새로 도입한 뭔가가 서로 소통하기 위한 비용은 10년전과는 완전히 다르고, 한가지만 써서 서로 독립되어 (홀로 훌륭하게) 동작하는 것은 구세대의 이야기인 것이다. 각기 다른 플랫폼/도구등은 각기 다른 장단점이 있고, 이를 타협(tradeoff)하는 것이 아니라 장점을 취하고 소통하게 하는 방식이라는 것이다.

기업시장에서는 사람 대 사람의 통신이 아니기 때문에 - 물론 사람과 인터랙션하는 부분을 제외한 부분의 이야기 - 런타임이라는 타협의 덩어리가 필요하지 않기 때문에 메시징(messaging)을 통해서 이루고 있지만, 일반 사용자가 대상인 웹에서는 기업의 이런 변화와 더불어 이 런타임이 필요하다. 여기서 이 일반 사용자라고 칭하는 것이 사실은 일반 사용자를 "데스크탑"이라는 녀석으로 한 겹 쌓아놓은 개체인 것이다. 이 인간의 복잡성을 걸러주는(filtering) 부분인 것이다.

"데스크탑=나"라는 메타포적인 말은 변화하는 세상에 맞춰 이렇게 걸러주는 역할을 하는 녀석에 침투하기 위한 기업들의 부단한 노력에서부터 시작된다. 이전에는 어느 하드웨어 아키텍쳐냐가 가장 중요했지만 어느 OS냐가 더 중요해지기 시작한 시절이 있었고 점차 어느 브라우저냐라는 말이 조금 식상해져있을때 어느 런타임이냐라는 말이 시작하게 된 것이다. 이 모든 것들에 대해 나를 대변해주는 것은 데스크탑이라는 것이다. 미래의 대세는 모바일 디바이스일 것이다 홈 서버일 것이다 또다른 무엇일 것이다라고 이야기되지만 그것은 아마도 아직은 아닌 다음 단계의 모습이고, 각 개인을 대변해주는 뭔가가 있어야되는 것은 분명하다는 생각을 하고 이것이 데스크탑일 것이라는 이야기를 해본다.

p.s. 데스크탑 컴퓨터를 이야기하는 것이 아니라 내가 내 눈앞에서 보고 있는 이 가상의 공간으로써의 데스크탑을 이야기하는 것.

- 철수(charlz) 20070711

Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

웹 위의 크로스 플랫폼 전략(3) - 그림의 떡같은 브라우저 밖 세상

웹 위의 크로스 플랫폼 전략(3) - 그림의 떡같은 브라우저 밖 세상 씨리즈 2007/06/06 16:25

"Web as a Platform"은 브라우저라는 창 안의 세상만으로는 아직 익지않은 감입니다. "Web as a Platform"이라기보다는 그냥 브라우저 플랫폼입니다. 웹 응용프로그램이 아무리 수십만대의 클러스터로 이뤄진 검색엔진을 통해서 그리고 엄청난 데이타를 자랑하는 맵 서비스의 매쉬업이라고 하더라도 브라우저 안에서 밖에 돌아갈 수 없는 불쌍한 신세(?)의 응용프로그램입니다. 지도를 3차원으로 보여주려고 해도, 검색의 생산성을 시각적 효과로 향상시키려해도 그 Creativity에는 브라우저 UX라는 벽에 있습니다. 그것은 꽤 오랫동안 사용자에게 익숙해져 있는 것이기도 하기 때문에 타파가 되려 시간이 지날 수록 더 어려워지고 있는 딜레마에 위치한 것이기도 합니다.

브라우저를 벗어나려는 시도는 다양했습니다. 정확히 이야기하자면, 브라우저의 표준세상을 확장하거나 새로운 방식을 제시하는 시도라고 해야겠죠 - 그것 자체가 브라우저를 변형하거나 벗어나는 것이니까요. 언젠가 이야기한 것처럼 브라우저의 안이냐 밖이냐는 사실 state of mind입니다. 사용자가 받아들이는 입장이지 기술 자체가 불가능 하기 때문은 아닙니다. 하지만, 대부분의 시도가 아직까지는 실패로 돌아갔거나 효과가 크지 않은 소강 상태에 있습니다. 여러가지 이유가 있겠지만서도, 그 이유 중 하나는 변화가 일어나기 위해서 모두가 사용할 직접적인 필요성을 가진 - Google이 자신들의 서비스 사용자 기반을 통해서 AJAX의 기반이 되는 기술을 전파한 것과 같은 - 구심점이 없었다는 것입니다. 굳이 브라우저를 통해서 브라우저 밖으로 갈 기술이라면 그냥 브라우저 밖에 있는 기술을 사용하면 되는 것이고 꼭 브라우저 안일 필요가 없었기 때문이었습니다.

브라우저로 보이는 자료를 3차원 그래프로 보여주는 것으로 사용자의 생산성을 높이는 방법은 수없이 많습니다. 하지만, 반대로 현재 브라우저를 통해서 보이는 자료가 3차원 그래프로 보여졌으면 좋겠다고 생각하는 경우는 하루에 얼마나 될까요. 웹브라우징을 하다가 보이는 사진 관리 사이트에서 사진이 펑펑 튀어나오고, 빙글빙글 돌아갔으면 하고 생각하는 경우는 얼마나 될까요. 일반 사용자는 소위 우리가 이야기하는 벤더 락인(Lock-in)이라는 현상과 비슷하게 기술 락인이라는 것을 체험하게 됩니다. 체험이라기보다는 쉬운말로 적응 후 익숙이라고 해야할까요. 재미난 예로, 브라우저와는 상관 없지만, 컴퓨터를 잘 모르는 어떤 사용자에게 화면 UI에 있는 버튼을 누르라고 했더니 버튼을 못찾고 포기했다는 이야기가 있습니다(뭐, 그것 비스무리한 이야기일겁니다;). 컴퓨터에 익숙한 사람이라면 척보면 알겠지만, 뭔가 물리적으로 튀어나온 것을 찾았다면 못찾는게 맞는 것일 수도 있겠죠. 서비스를 제공하는 입장에서는 이런 생각을 하지 않을 수가 없습니다. 우리가 만든 것이 익숙한 것이 좋을까 아니면 덜 범용적이고 익숙하지는 않지만 더 낫다고 생각하는 UX가 좋을까 등의 다양한 요소를 가지고 잽니다(measure).

브라우저 안의 세상은 밖의 세상보다 상대적으로 대부분 규격화된 굉장히 익숙한 모습을 제공합니다. 사용자가 어디를 먼저 볼지를 예측할 근거자료도 많고, 뭘 많이 클릭할지에 대한 연구자료도 많습니다. 그런데 이를 벗어나는 것은 단순히 브라우저가 아닌 응용프로그램에 관한 것이 아니라 이 둘이 연결되어 생기는 예측 불가능한 시너지 혹은 부작용을 낳게 됩니다. 스케일은 다를지라도 인터넷이라는 것으로 우리네들이 연결되는 것에 대한 파급효과를 만들 당시에 예측하기 힘들었던 것과 의미상 다르지 않습니다. 그림의 떡 같은 브라우저 밖 세상 - 웹이라는 거대한 것을 플랫폼으로써 주도하려는 계획 - 을 꿈꾸던 (그 엄청나게 똑똑한) 기업들이 갑작스럽게 뛰어넘어야 할 틈(chasm)이 최소화되어야 한다는 것을 몰랐기 때문에 군침만 흘린 것은 분명 아닐것입니다. 수백가지의 요소가 과연 익기 시작하고 있는가를 판단할 수 있는 방법이 없었기(혹은 너무나 어려웠기) 때문이죠. 또한 익었다고 하더라도 그 요소를 주도하고 있느냐는 관건도 있습니다.

밖으로 나오기 위한 일차적인 요소중 하나는 "되도록이면 많은 사람들"이 혜택을 누릴 수 있거나 혹은 사람들이 그렇게 생각하도록 보여야한다는 것은 필수가 되었습니다. 이것이 크로스플랫폼이겠습니다. 이를 기반으로 기업들은 자신들이 좀 더 앞선 부분에서부터 -  Adobe는 flash와 동영상에서부터, Microsoft는 OS 플랫폼의 노하우에서부터, Sun은 Java 플랫폼 기반에서부터, Mozilla는 브라우저 플랫폼 기반에서부터, 그리고 Google은 서비스 기반에서부터 브라우저 밖을 벗어나려고 하고 있습니다.

(다음편에 계속...)

Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

Silverlight, 마이크로소프트의 차세대 웹 전략의 교두보(III)

Silverlight, 마이크로소프트의 차세대 웹 전략의 교두보(III) 씨리즈 2007/05/30 01:55

첫 글에서는 탄생 배경을, 두번째 글에서는 Media Side Story에 관해서 이야기를 했습니다. 그런데 이런 이야기를 하면서 드는 의문이 있을 것입니다. SilverLight를 그렇데 대단한 것으로 이야기한다면 마이크로소프트의 전략은 지금의 웹과 그 기술들을 넘어서 퇴색시키려는 전략을 이야기하는 것일까요? 아주 먼 미래라면, 굳이 마이크로소프트의 기술이 아니더라도 지금과는 어떤 다른 것을 생각할 수 있을 것이겠고, 단기간내의 기술이라면 그렇게 하고 싶다고 하더라도 가능하지 않은 시나리오일 것입니다.

마이크로소프트의 Presentation 기술들을 X,Y축을 Rich와 Reach로 하여 그려보면 그 모습은 한눈에 보입니다:

사용자 삽입 이미지

Microsoft Rich & Reach


Rich란 더 풍부한 사용자 경험을 위한 기술을 이야기하고 Reach는 더 많은 사용자들에게 닿을 수 있는 성격을 말합니다. Future라고 표시되어있는 부분은 아직 미지의 영역이라는 뜻이고 RIA의 방향성과 비슷한 영역일 것입니다. 왼쪽 아래의 영역은 굳이 갈 필요가 없는 영역이겠죠. (참고로 Adobe의 Mike Chambers가 그린 그래프 같은 경우는 시각적으로 Adobe의 기술이 우월해보이는 모습을 위해서 Desktopiness와 Webiness를 한 축에 넣은 이상한 방식을 썼지만 - 마치 WPF가 한쪽 구석에 쪼그리고 앉은 것 같죠^^, Desktopiness의 능력이 한정되어있는 것같이 보이는 이런 모양은 비교자료로는 썩 적합하지 않은 것 같습니다. 왜냐하면 기술의 용도나 기술 자체를 속성이 아닌 겨우 웹과 데스크탑이라는 주관적인 기준으로 제한한 것일 뿐이고 데스크탑 기술이 성장할 수 있는 방향성을 전혀 보여주지 않으니까요.)

위 표에서 Future라는 대형 업체들이 군침을 흘리는 영역을 마이크로소프트가 가기 위해서는 WPF가 Reach를 늘리는 방법이 있거나, HTML/CSS가 Richness의 도약을 하는 두가지 방법을 생각할 수 있겠지만, 이는 불가능한 것은 아니라고 하더라도 이미 단기간에 이루기에는 쉽지 않다는 것을 많은 사례들이 증명해줬습니다.

SilverLight는 이 간극을 최대한 줄여줄 수 있는 기술로 만들어진 것은 이전에도 설명을 했었습니다. 한쪽 속성을 가지는 기술로 현재로써는 상충되는 다른 속성을 가지게 하는 것이 어렵다면, 아예 처음부터 두가지 속성을 가진 기술을 만들어서 그 다음을 생각하기 쉽게 하자는 것입니다. 가능하다면 어느쪽 기술과 합쳐질 수 있다면 금상첨화일테니 그럴 "가능성"만은 남겨두고 말이죠. SilverLight는 태생부터가 위 표의 Future 영역으로 뻗어나갈 수 있는 여지를 위해서 만들어진 기술입니다. 마케터라면 "누구나 쓰는 HTML/CSS + 풍부한 경험의 WPF = 누구나 쓰는 풍부한 경험"을 지향한다고 이야기하겠죠.

SilverLight는 그런 이유로 WPF의 여러가지 성격 외에 ASP.NET과 ASP.NET AJAX가 잘 조화를 이룰 수 있는 형태로 만들어졌습니다. SilverLight의 XAML이 Text 형태인 것은 그리고 XML 형태인 것은 굳이 ASP.NET 뿐만 아니라 PHP든 Java든 어떤 언어라도 쉽게 생성하고 수용하기 쉽게 해줍니다. (누군가가 라이브러리를 만들어주리라 기대합니다.^^) ASP.NET Futures라는 이름으로 ASP.NET (AJAX)에서 SilverLight와의 연동을 위한 기술을 조금 선보이기도 했습니다. XAML DOM을 브라우저에서 접근할 수 있는 것과는 반대로 SilverLIght에서 HTML DOM을 Access할 수 있는 방법도 잘 제공하고 있습니다. 이런 것이 유용한 예로 Jon Udell이 GreaseMonkey에서 SilverLight를 접근할 수 있음을 이야기합니다. 만들어놓고 연동되도록 Bridge를 만든 것이 아니고 애초부터 연동을 생각해서 설계를 했다는 이야기.

이 정도라면 지금의 웹 기술을 버리는 방향이 아니라는 것은 조금 설명이 될 것 같습니다. (SilverLight만이 아니더라도 마이크로소프트의 방향이 웹을 더 수용하는 방향인 것은 근래 MIX에서 발표한 내용에서 찾아볼 수 있을 것입니다.) 웹과의 연동을 위해서 설계를 했다면 이를 최대한 활용할 수 있는 윈윈이 가장 투자한 것을 거뒤들일 수 있는(?) 방법일테니까요. 생산성의 향상과 직결된 Future의 영역을 뭔가가 메꿔주지 않으면 이전의 Software Crisis가 다시 오지 않으리라는 법도 없는 것일지도 모르겠습니다.^^

Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

Silverlight, 마이크로소프트의 차세대 웹 전략의 교두보(II)

Silverlight, 마이크로소프트의 차세대 웹 전략의 교두보(II) 씨리즈 2007/05/06 03:57

부제: Media Side Story

아직도 해외 어디어디 갔더니 인터넷이 느려서 UCC 동영상은 도저히 못보겠더라는 이야기를 들으면 많은 동영상/멀티미디어 사이트들이 받는 전망들을 생각할때 갸우뚱하게 합니다. 구체적으로는, 그냥 구글이 유투브 인수하니까 그래보이는거고 인터넷 인프라가 발달한 우리나라에 국한된 이야기가 아닐까하는 의문이겠습니다. 진실은 그럴지도 모르는 일입니다. 혜택을 누리는 사람들과 그렇지 못하는 사람들의 격차가 벌어지고 있는 것인지도 모르겠습니다. 하지만, 분명히 웹을 통해서 rich media(리치 미디어 - 한글로 리치라고 하니까 꼭 leech(거머리)라는 의미같아보이기도 합니다^^)의 혜택을 받는 사용자는 분명 엄청나게 늘어나고 있고, 트래픽량과 증가추이가 이를 뒷받침해주고 있습니다. 순수한 웹브라우저만으로는 가능하지 않은 Media 시나리오들이 웹의 미래가 향한 가는 길이라는 것을 뒷받침해주고 있습니다.

(순수한 웹브라우저를 위한) 웹표준의 영역은 그 노력에 비하여 멀티미디어의 영역과는 상당히 동떨어져있습니다. 브라우저에서 음악이 나오기 위해서는 컨트롤이나 플러그인이 불가피합니다. 브라우저에서 동영상을 보기 위해서도 컨트롤이나 플러그인이 불가피합니다. 10년도 더 되는 시간동안 발전한 swf가 있는데, 이제야 만들어낸 브라우저에서 지원하지도 않는 canvas 태그같은 것으로 간단한 애니메이션을 보는데에 사용자가 만족할까요? 그리고 이것이 권고안이 될때까지 기다려야할까요? 권고안이 되면 기존의 것들을 그 방식으로 바꿔야 할까요? 그리고 정말 브라우저들이 이를 따르는 것이 모두를 위한 일일까요? swf가 표준이 아니고 회사가 소유하는 것이기 때문에 사용자는 웹표준으로 옮겨가야할까요? 동영상/음악을 위한 웹표준이 만들어진다면 어떤 포맷을 지원해줘야할까요? 모든 포맷을 다 사용할 수 있는 컨테이너 포맷이 만들어진다고 하더라도 브라우저에서는 모든 코덱을 지원해야하는 것이 될까요? 이런 것을 정하기 위해서 또 얼마나 더 오랜 시간이 걸릴까요? New Media에 맞는 웹을 위해서는 이렇게 커다란 질문들이 펑펑 쏟아져나올 수 밖에 없습니다.

반대로 생각을 해보죠. Media라는 것은 원래 웹브라우저에 한정된 것이 아닙니다. 그런데, 웹표준에 국한된 웹브라우저는 Media를 한정합니다. 간단히 접근성의 한 예를 생각해봅시다. 스크린리더를 위하여 웹페이지를 읽어줄 수 있도록 만들어야된다는 이야기는 있어도 웹페이지 자체에서 음성을 제공할 수 있는 방법은 웹표준에는 없다는 것입니다. 유일한 방법은 웹브라우저를 확장하는 방법 뿐입니다.

사실 사람들이 웹이라는 것을 바라보는 시각은 "State of Mind"일 뿐입니다. 동영상을 링크를 눌러 다운로드하여 데스크탑의 플레이어로 보는 것과 동영상이 웹페이지에서 보이는 것 두가지가 기술적으로 얼마나 다를까요. 바로보나 다운로드해서 보나. 헌데, YouTube는 엄청난 성공을 가져왔습니다. 그 성공과 함께 Flash Player의 동영상 기술도 같이 성공을 가져왔죠. 꽤 오랫동안 우리의 눈앞에 와있던 New Media를 웹을 통해서 제공하기 위한 노력은 수도 없었습니다. 이런 노력을 위해서는 (이를 거부하지 않는다면) 수없이 깔리는 컨트롤/플러그인들을 이제와서 피할 수는 없습니다.

그렇다면, 단순히 각 기능에 대해 어떤 특정한 Player(컨트롤이나 플러그인)가 아니라 이런 모든 Media를 위한 플랫폼 - 그것도 cross-browser cross-platform이고 보안도 걱정해주는 - 이라면 어떨까요? 웹페이지를 New Media에 맞게 만들 수 있는 그런 플랫폼 말이죠. 그게 요즘 웹의 미래를 그리는 사람들의 공통적인 생각중 한가지입니다. 거기에 여러 업체가 동참했고, 그 중 하나가 마이크로소프트입니다.

그리고 이를 위해 SilverLight가 탄생합니다. 이게 SilverLight의 Media Side Story입니다.

SilverLight라는 단일 플랫폼에서는 이종 브라우저와 OS에서 돌아갈 수 있는 다음의 Media들을 제공합니다:

  • 벡터그래픽
  • 비트맵그래픽
  • 텍스트
  • High-Quality (스트리밍)비디오
  • (스트리밍)오디오
  • 애니메이션
  • 그리고 이 모든것의 통합 wiring.
Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

웹 위의 크로스 플랫폼 전략(2) - 표준이냐 기술이냐...쫓고 쫓기는 추격

웹 위의 크로스 플랫폼 전략(2) - 표준이냐 기술이냐...쫓고 쫓기는 추격 씨리즈 2007/03/01 12:54
표준이 기술 수준을 따라가지 못한다는 말은 그 우위나 경중을 이야기하는 것이 아닙니다. 그 둘의 성격이 다른 것은 물론이거니와 표준은 기술이 존재하고 그 위에서 만들어지는 것이기 때문에 그 시간적인 순서로써의 "표준화"를 이야기하는 것입니다. (구현과는 별도의) 기술적인 바탕이 없고서는 표준이 만들어지는 것이 불가능한 것이라는 뜻이겠습니다. 기술과 표준이 거의 동시에 만들어지는 경우도 있지만, 기술개발 이전에 표준이 만들어지는 경우라면 쉽게 이야기해서 해보지도 않고 수많은 사람들에게 이렇게 해라 라고 이야기하는 것과 마찬가지라고 할 수 있겠습니다.

기술이 아무리 뛰어나고 혁신적이라도 쓰는 사람이 별로 없다면 그 효용 가치는 매우 낮을 것입니다. 그 예로 과거의 앨런 케이등의 Smalltalk라든가 스티브 잡스의 NeXT등이 이런 평가를 받은 경우겠죠(해당 기술의 현재는 사뭇 다릅니다만). 추앙받는 개념이라도 사람들이 적응하는 것이 쉽지 않다면, 널리 사용되기가 어렵습니다. 이런 경우에는 그 기술이 후세대(혹은 기간이 좀 지난 후)에 다시 나타나게 되는 경우가 대부분입니다. 사람들이 받아들일 준비가 된 상태에서 다시 시작해보려는 노력이겠습니다.

기술은 사람들 각자의 머릿속에 있는 것이고 이것을 구현하는 것인데 개개인에게는 구체적이라고 하더라도 모아지면 굉장히 추상적인 모습이기 때문에, 표준은 그것을 명문화 - 개발팀등을 대상으로 한다면 표준보다는 스펙명세등이 되겠죠 - 하는 것입니다. 명문화한다는 것은 어떤 시점의 스냅샷을 찍는 것이라고도 할 수 있겠습니다. 글로 적는 중에도 사람의 머릿속은 회전하며 기술을 발전을 해갑니다.

기술은 항상 개인이 만드는 것이 아니고, 어떤 주체들이 낸 결과물로 만들어지게 됩니다. 그 주체가 물론 개인이 될 수도 있지만, 주로 기업 혹은 단체인 경우가 많습니다. 개인이건 기업이건 단체이건 기술을 만든 곳과 기술을 사용하려는 쪽의 인터랙션을 동반하고, 인터랙션은 이익관계와 소통의 문제 역시 동반하게 됩니다. 표준을 만드는 것(표준화)은 이런 관계의 얽힘입니다. 한사람이 아닌 많은 사람들의 머릿속에 있는 것들을 잘 조율하여 글로 적는 일은 어떤 한사람에게도 만족을 주기 힘든 일입니다.

표준이 기술을 따라가지 못하기 때문에 표준이 만들어질때까지 혹은 그 만들어지는 과정에서 어떤 기술을 만들기 위해서 기다릴만한 참을인(忍)자가 없는 주체들은 이를 해결할 방도를 찾게 될 것입니다. 새로운 표준을 만들어서 주도하거나, 표준을 따르지 않거나 하는 방법밖에는 없겠죠. 결국 당장의 대세는 표준을 따르는 것이 최선으로 보이더라도 기술의 혁신을 위해서 표준과는 별도로 기술개발을 할 수 밖에 없다는 것입니다. 기약도 없이 표준이 권고안(Recommendation)이 될 때까지 기술 개발 스케줄을 맞출 회사는 그리 많지 않을 것입니다. 최선의 경우 일단 표준의 draft만 따르고, 그 수준에서 다른 기능들을 늘리고 혁신시켜서 기술을 완성하겠죠.

설명이 길었는데, 스냅샷인 표준으로 많은 사람들에게 물을 대느냐, 아니면 기술을 더 앞서나가도록 독자적으로 개발해나가느냐의 밸런싱은 바로 이번 글의 제목과 같은 추격전을 이야기합니다. 특정 하드웨어를 위한 기술로 사람들에게 굉장한 모습의 UI를 만드느냐, 아니면 하드웨어에 관계없이 모두 돌아갈 수 있는 공통분모만을 최대한 사용해서 UI를 만드느냐...어느 경우라도 목적에 따라 장단점을 가지게 되기에 그 레슬링은 계속됩니다.

이런 기술 개발이 유효하기 위해서 최근의 분위기에서 할 수 있는 것 중 대표적인 대안이 될 수 있는 것이 무엇이냐하면 바로 크로스 플랫폼이라는 것입니다. 이 공통분모를 최대한도로 짜내는 작업은 표준화의 사명 중 하나인 "모두가"라는 말을 지켜줄 수 있게하는 방법 중 하나입니다.

모든 플랫폼을 지원한다는 것은 상이한 인력과 그에 따른 부가적인 비용으로 인해서 쉬운일은 아니었습니다. 비용이 100이면 2개의 플랫폼을 지원하기 위해서는 200 혹은 그 이상까지도 필요할 수 있습니다. 그런 비용이 들어서 ROI(투자 대비 효과)가 크다면 문제가 아니겠습니다. 이런 크로스플랫폼은 여러 OS를 지원하는 응용프로그램을 만드는 것이 아닙니다. 기반 플랫폼을 만드는 것이고 따라서 그에 따른 부가가치를 생각하는 것이겠습니다.

크로스플랫폼 지원이라는 말은 같은 계층(Layer)의 다른 이질 하부 플랫폼에서도 동일하게 혹은 적정 수준에서 논란의 여지가 적을 정도로 비슷하게 동작함을 이야기합니다. 이전글에서 이야기한 동일한 계층의 "플랫폼(platform)"간의 벽을 허물어 건널 수 있게(cross)한다는 의미입니다. 수직 플랫폼이 아닌 수평 플랫폼을 구현하기 위한 한가지 방법이고, 컴퓨팅의 역사적으로 다양한 방법으로 시도되고 있는 소프트웨어史의 특성이라고도 할 수 있습니다.

모두가 웹에서 표준을 따른다면 이미 표준이 크로스 플랫폼을 어느정도 보장을 하는 것입니다. 문제는 표준을 따르지 않을 경우의 기술의 혁신 방안인데, 직접 크로스 플랫폼 지원을 하는 것으로 이를 해결하고자 하는 것이 지금 현상의 대안 중 하나입니다. 예를 들면, 플래시(Flash) 기술은 다양한 플랫폼을 지원하는데, 개발 방법론은 동일합니다. 혹은 가상화(virtualization) 기술은 내가 쓰는 플랫폼위에서 다른 플랫폼이 돌아갈 수 있게하여 동일한 경험이 가능하도록 하는 것입니다.

크로스 플랫폼이라는 말은 전혀 새로운 것이 아닌 것은 익히 아실 것입니다. "cross platform"의 구글 검색 결과로 89,800,000개의 결과가 리턴됩니다. FF(FireFox)도 퀵타임(QuickTime)도 혹은 씽크프리(ThinkFree)도 크로스 플랫폼을 지원합니다. 단지 모두가 어떤 것을 그 위에 얹느냐가 다른 것입니다. 요는 모두가 혜택을 누릴 수 있도록 하는 한가지 방법 중 하나라는 것이고, 이런 것들이 바로 표준과 기술의 밸런싱이라는 관점으로 해석 될 수 있습니다.

(다음편에 계속...)
Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

웹 위의 크로스 플랫폼 전략(1) - 플랫폼화 되어가는 소프트웨어들

웹 위의 크로스 플랫폼 전략(1) - 플랫폼화 되어가는 소프트웨어들 씨리즈 2007/02/14 10:50

지하철을 타기 위해서 대기하는 위치를 플랫폼이라고도 하고, 무대처럼 올라간 곳을 플랫폼이라고도 합니다. 여러가지 뜻으로 사용되지만 컴퓨팅에서는 다음의 뜻으로 사용됩니다.

"In computing, a platform describes some sort of framework, either in hardware or software, which allows software to run.(플랫폼은 하드웨어나 소프트웨어 위에서 소프트웨어가 돌아갈 수 있도록 해주는 프레임웍과 같은 것을 이야기한다.)" - Wikipedia의 정의

쉽게, 우리가 흔히 사용하고 있는 PC의 CPU가 제공하는 x86 아키텍쳐/x64 아키텍쳐 같은 것들이 하드웨어 플랫폼의 예가 되겠습니다. 이 하드웨어 플랫폼 위에서는 Bios같은 소프트웨어가 돌아가고, OS같은 소프트웨어가 돌아가고, OS를 기반으로 또 다양한 소프트웨어들이 돌아갑니다. 마이크로소프트 Windows, 애플의 OSX, 선의 Solaris, Linux 등은 OS 플랫폼입니다. 그 OS 자체가 다른 소프트웨어를 돌릴 수 있는 기술로 위치해 있기 때문에 역시나 플랫폼이라고 불립니다. 이런 플랫폼들은 해당하는 기술 위에서만 사용할 수 있는 소프트웨어를 만들 수 있는 수직(Vertical) 플랫폼이라고 할 수 있겠습니다. OSX의 실행파일(바이너리)을 Windows 상에서 돌리는 것을 불가능하다고 하겠죠.

Sun의 Java나 Microsoft의 .NET Framework 이라는 소프트웨어 플랫폼도 있습니다. 역시나 Java의 바이너리를 .NET Framework 상에서 돌릴 수 없습니다만, 이들이 나온 본래의 취지 중 한가지가 하드웨어 혹은 OS 플랫폼과는 상관 없는 소프트웨어를 만들기 위함이었기 때문에 그 태생은 수평 플랫폼이라고 이야기할 수도 있겠습니다. Java나 .NET Framework의 VM이 있는 곳이면 어디든지(OSX 위라든지, Windows 위라든지) 동일한 바이너리를 실행할 수 있는 모습을 이야기하겠죠. 하지만, 실상은 그 하부 플랫폼에 너무 가깝게 만들어진(coupled) 이유로 쉽지가 않았습니다. 이들도 OS라는 플랫폼 위에 하나의 레이어(Layer)를 얹은 소프트웨어 플랫폼입니다.

월드 와이드 웹(WWW)이라는 것이 도래한 이후에는 HTML이라는 마크업 언어(Markup Language)를 알아들을 수 있는 레이어로서의 브라우저라는 플랫폼이 등장했습니다(* 브라우저를 플랫폼으로 보는 견해는 이견이 있을 수 있지만, 여기서는 일반적인 플랫폼의 의미를 위한 예임을 강조합니다). 이 플랫폼 또한 하부의 하드웨어나 OS등의 플랫폼과는 무관하게 동작할 수 있는 꿈을 가지고 만들어졌고, 기반이 되는 HTML은 실행이라는 개념을 한단계 추상화하여 Java나 .NET Framework과는 다르게 이들의 바이너리 속성(실행파일)을 전혀 신경쓰지 않아도 되는 텍스트를 기반으로 한 언어를 사용하였기 때문에 이를 이해하는 어떤 브라우저에서도 비슷하게 데이타와 링크를 보여줄 수 있었습니다. <b>라는 태그는 하드웨어와 OS 그리고 브라우저가 어떤 식으로 동작하든간에 문자를 볼드(bold)로 보여주면 되는 의미를 전달하는 역할을 하고, 이는 이런 동작 자체는 추상화하여 장식한 말 그대로의 마크업이었습니다.

점차 웹 응용프로그램들이 복잡미려(Sophisticated)해지면서 이질적인 브라우저 플랫폼간의 괴리가 발생하기 시작했습니다. 비록 텍스트로 되어있고, 문법(Syntax)이 표준화되었더라도, 텍스트들의 표현에 관한 시맨틱 자체는 표준화되어있지 않은 이유로 그리고 표준을 따르지 않는 구현들의 추가로 이런 현상은 가속화되었습니다. 설명을 위해 간단히 <p> 태그를 예로 들면, 몇 픽셀만큼 얼마나 어떤식으로 paragraph를 구분해야하는지에 대한 약속은 되어있지 않기 때문에 다른 브라우저간의 구현이 다르게 되고 최종 결과물간의 괴리가 생기게 된다는 것입니다.

이런 괴리를 해결하기 위한 늦은 표준 작성 노력은 너무나 소수였던 IE 이외의 브라우저 점유율로 인해서 모멘텀을 얻지 못하고 있었습니다. 그런 와중에 높은 점유율을 가진 인터넷 탐색기(IE)가 일부 사용자의 구미에 맞는 모습을 보여주는 다른 브라우저들에게 조금씩 사용자 내주기 시작하면서 이런 괴리는 부각이 되기 시작했고, 이리하여 이런 괴리를 해결하기 위한 사용자들의 해결책으로 웹 표준화 운동이라는 것이 생겨납니다. 점하나의 위치가 중요한 디자이너들의 불만도 불만이지만, 심지어는 사용자들에게도 직접적인 불편이 초래되었기 때문에(타 브라우저를 사용하면 아예 보이지 않는 일) 이런 현상은 지극히 당연한 것이었습니다.

그 결과로 이런 웹 표준화 운동과 함께 표준화로 재무장된 새로운 웹 응용프로그램의 조류가 만들어지면서 "플랫폼으로써의 웹(Web as a Plaform)"이라는 캐치프레이즈가 유효해지게 됩니다. 웹의 취지에 맞게 어떤 브라우저에서도 돌아가는 웹 응용프로그램으로의 모습을 향해 가는 방향성을 보여주는 것이죠. 브라우저라는 하부 플랫폼 종속적인 플랫폼이 아니라 웹 자체가 수평 플랫폼의 역할을 하며, 이런 (역시나) 하드웨어/OS 플랫폼과는 무관하게 응용프로그램들이 연동되고 유기적으로 동작하고 표현되며 사용자와 인터랙션할 수 있는 프레임웍을 만들어낼 수 있는 기반이 됩니다.

이것이 현재의 플랫폼들의 모습이고 사용자에게 점차 당연히 받아들여지는 방향으로 전해지고 있는 상황입니다. 소프트웨어는 필연적으로 사용자에게 가까워지기 위해서 각 기술 위에 또하나의 기술을 창출하고 플랫폼화하는 방향으로 갈 수 밖에 없습니다.

하지만, 이런 일련의 (필수적인) 추상화 단계(Layer)를 거친 과정의 현 시점은 두가지 약점이 드러나고 있습니다 - 그리고 위 이야기가 아니더라도 역사적으로도 많은 기술들이 비슷한 현상을 겪습니다. 하나는 표준이 기술 속도를 따라가지 못한다는 것과 다른 하나는 브라우저라는 상자 밖을 나가지 못하고 있다는 것입니다.

(다음편에 계속...)

Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

웹 위의 크로스 플랫폼 전략(0) - 목차

웹 위의 크로스 플랫폼 전략(0) - 목차 씨리즈 2007/02/13 00:51

원래는 어딘가에 송고해볼까 하는 생각을 가지다가, 잡지에 적으면 하도 편집이 많이 되고 내 허접성이 드러나지 않는 단점(?)으로 인해서 그냥 포스트로 끄적거리던 글입니다. 엉성해보이는 글을 좀 덜 엉성해보도록 하기 위해서 몇번으로 쪼갤 수 있게 글을 적었는데, 아무래도 블로그의 포스팅으로는 그게 편하겠죠. 요즘 알게 모르게 웹에는 표준바람, 브라우저바람, 액티브엑스칼바람 이면에서 이전과는 다른 크로스플랫폼형 신종 무기가 등장하고 있는데 그에 관해 적어보았습니다. 다음과 같이 진행해보려 합니다.

웹 위의 크로스 플랫폼 전략(1) - 플랫폼화 되어가는 소프트웨어들
웹 위의 크로스 플랫폼 전략(2) - 표준이냐 기술이냐...쫓고 쫓기는 추격
웹 위의 크로스 플랫폼 전략(3) - 그림의 떡같은 브라우저 밖 세상
웹 위의 크로스 플랫폼 전략(4) - 미정(가제 - 어도비의 전략)
웹 위의 크로스 플랫폼 전략(5) - 미정(가제 - 마이크로소프트의 반격)
웹 위의 크로스 플랫폼 전략(6) - 미정(가제 - 결국 브라우저를 탈출할 수 있을 것인가)

2007/2/13 - 네, 아래의 4,5,6편은 제목이 미정입니다. 글을 먼저 쓰고 나서 제목을 확정하려고 합니다. 1,2,3편은 대충 윤곽만 적어두었습니다. 앞으로 다 적는데 얼마나 걸릴지 모르겠지만, 나름 차례가 있는 계획적인 글도 시작해보게 되네요.^^

Posted by charlz
Creative Commons License이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
1