May 19 - 20, 2010
Moscone Center, San Francisco

2010년 5월 19-20일, 이틀에 걸친 Google I/O 행사가 막을 내렸다. 이번 행사에서는 최근 웹 기술의 핵심인 HTML5를 집중 조명하고, 안드로이드 OS 2.2를 선보였으며, Google TV를 소개했다. 전체 Keynote 영상은 여기서 볼 수 있다. (영문 자막이 기본으로 재생된다. 유투브도 변하고 있다)


HTML5

최근 웹이 굉장히 빠른 속도로 진화하고 있는데 그 중심에는 HTML5가 있다. HTML4가 1999년에 표준으로 제정된 이후 여태까지 멈춰 있었다는 사실로 인해 '빠른 속도로 진화' 한다는 것에 의문을 품을 수도 있겠지만, HTML5를 제안과 거대 유명 기업들의 적극적인 참여, 인터넷 판도의 변화로 인해 급격하게 변하고 있다는 것만은 부정할 수 없는 사실이다.

나중에 별도의 포스트로 다루겠지만, HTML5는 웹을 Contents Viewer 수준에서 Application 수준으로 끌어올리는 것이 특징이다. 다양한 상호작용을 위한 기반 기술과 함께 로컬 디스크를 사용하게 하며, 하드웨어 가속을 사용하는 2D/3D 그래픽, 오프라인 지원 등이 HTML5의 핵심이다.



이 날 HTML5로 제작된 많은 웹 어플리케이션들이 소개되었다. 상당히 인터렉티브하고 시각적 효과가 뛰어난 예제들이 많이 보였다. 플래시나 실버라이트 같은 플러그인의 도움 없이 오직 HTML5만으로 어플리케이션 수준의 웹 콘텐츠를 제작할 수 있다는 것이 무척 인상적이다. 또한 오프라인 상황에서도 웹 어플리케이션을 실행하여 작업하고, 인터넷이 연결 되었을 때 자동으로 동기화하는 것 역시 인상적이었다.

한편 최근 HTML5에서의 비디오/오디오 지원이 꽤 주목 받고 있다.  애플과 어도비의 논쟁이 한창일 때 스티브잡스가 이런 이야기를 했다.

네이티브 어플리케이션을 개발함으로써 하드웨어의 모든 기능을 최대한, 그리고 매우 효과적으로 사용할 수 있다. 그렇게 개발된 어플리케이션은 전체 품질을 향상시키며, 더 많은 사람들이 그것을 소비하고 그로 인해 시장이 확대되며, 이는 다시 개발자에게 기회로 다가간다.  플래시가 설 자리는 이제 비디오/오디오 재생 밖에 없는데 그마저도 HTML5가 대체할 것이다. 이제 어도비는 HTML5를 위한 저작도구를 만드는 것이 현명한 선택이 될 것이다.

이제 우리는 HTML5를 통해 플래시 같은 별도의 플러그인 없이 자유롭게 동영상을 감상할 수 있게 된 것처럼 보인다. 하지만 아직 풀지 못한 숙제가 하나 있다. 바로 코덱이다. 코덱은 동영상을 압축하고 해제하는 방법을 말한다. 따라서 코덱이 다르면 동영상 정보를 수신하더라도 그것을 올바르게 해석할 수 없기 때문에 영상을 재생할 수 없다. 비디오/오디오를 위한 태그와 그것을 세세하게 제어하기 위한 함수 목록은 어느 정도 결정되었지만 코덱만큼은 아직까지도 논쟁 중이다.

이런 상황에서 구글은 VP8 코덱을 선보였다. 게다가 이것을 오픈 소스로 공개하고 로얄티 프리를 선언했다. VP8은 모질라와 오페라가 함께 지원한다. 이에 따라 코덱 논쟁이 빠른 속도로 종결되지 않을까 생각한다. (물론 애플의 퀵타임과 사파리, 마이크로소프트의 WMV와 인터넷 익스플로러가 변수이긴 하다)

HTML5는 기술 표준이지 구글의 산출물은 아니다. 이 발표에서 핵심은 HTML5 생태계를 위한 다양한 그들의 노력과 결실이다. 구글은 크롬 웹 스토어(Chrome Web Store)와 함께 웹 어플리케이션 개발을 지원하는 다양한 툴과 프로그램을 선보였다. 선보인 기술 모두 HTML5에 기반을 두고 있기 때문에 반드시 안드로이드나 크롬 브라우저를 사용할 필요는 없다. 이미 구글 닥스(Google Docs) 등을 통해 다양한 웹 어플리케이션을 선보인 구글은 이번 발표를 통해 HTML5 선도 기업으로 확실히 자리매김할 것이다.


Android 2.2 (aka. Froyo)

발표 둘째 날, 기대하던 안드로이드 새 버전이 공개되었다. 나는 최근 450% 이상의 성능 향상이 있다는 소문을 들었기 때문에 기대가 매우 컸다.



Dalvik VM에 JIT(Just-In-Time) 컴파일러가 추가되었다. 이로 인해 2-5배 이상의 성능 향상이 있을 거라고 구글은 주장했다. 사실 나는 이 발표를 듣고 깜짝 놀랬다. 그럼 여태 안드로이드에는 JIT 컴파일러가 없었단 말인가? 데스크탑에서만 자바를 사용하다 보니 JIT 컴파일러가 너무나 당연하게 여겨졌었나보다. 확실히 (데스크탑 자바의 역사로 보건데) JIT 컴파일러로 인해 안드로이드 어플리케이션의 성능은 비약적으로 향상될 것이다.

새 버전의 안드로이드에는 JIT 컴파일러 이외에도 많은 변화가 일어났다. Application Data Backup API는 앱에 저장된 사용자 데이터를 안전하게 백업하고 복구할 수 있게 한다. 사용 중이던 안드로이드 기기를 다른 안드로이드 기기로 교체하더라도 어플리케이션의 사용자 데이터를 온전히 이전시킬 수 있다. (아이폰은 이미 어플리케이션 동기화를 통해 이러한 기능을 수행하고 있기 때문에 그리 놀랍진 않았지만, 다양한 플랫폼으로 이식되는 안드로이드 입장에서는 매우 중요한 기능이다)

Cloud-to-Device Messaging API, 이름이 굉장히 거창한데 아이폰의 Push Notification과 매우 유사한 기능을 제공한다. 구글도 이를 의식한 듯 다음과 같이 말했다.

Let me be clear, this is not a push notification API designed to compensate for the lack of basic functionality like multitasking in the operating system.

많은 청중이 환호하는 목소리가 들렸다. 구글이 애플을 대하는 태도가 매우 차갑다. (이후에도 상당히 많은 부분에서 애플을 견제했다. 브라우저의 자바 스크립트 실행 성능을 설명할 때 아이패드를 비교 대상으로 시연했고, 모바일 광고에 대해 열변을 토할 때도 애플의 iAd를 겨냥해 많은 이야기를 풀어냈다)

어쨌든, 아이폰의 Push Notification과는 다르다. 이는 어플리케이션 구조에서 오는 차이에서 비롯된다. (참고: 아이폰과 안드로이드폰의 전략 - #2 App 모델) 이 기술을 통해 안드로이드 기기는 단순히 텍스트 메시지를 받는 것이 아니라 인텐트(intent)를 수신한다. 안드로이드에서 인텐트는 어플리케이션을 시작시키는 이벤트(goal)이다. 따라서 단순히 사용자에게 어떤 정보를 알리는 데에 그치지 않고 어플리케이션을 직접 구동시키는 것이 특징이다. 이를 보다 쉽게 설명하기 위해 노트북에서 크롬 브라우저로 구글 맵을 보다가 특정 아이콘을 클릭하여 현재 보고 있는 맵을 안드로이드 폰에 바로 띄우는 것을 시연했다.

확실치 않아서 언급하기가 조심스러운데, 아이폰 역시 알림 메시지를 수신하여 특정 어플리케이션을 실행시킬 수 있는 것으로 알고 있다. 내가 즐겨하는 게임인 위룰(We Rule)이 그러하고, 최근 사용하기 시작한 페이스북(Facebook)이 그러하다. 실행 인자를 전달 할 수 있는지는 모르겠다.

테더링과 핫스팟 지원, 테더링은 아이폰에서 이미 되기 때문에 흥미를 끌지 못했지만 핫스팟은 매우 흥미롭다. 안드로이드폰에서 핫스팟을 활성화 시키면 아이패드 Wi-Fi 모델에서 이를 잡아 인터넷을 사용할 수 있다. 물론 시연으로 직접 보여줬다.

브라우저의 자바 스크립트 실행 성능 향상은 매우 주목할 만한 부분이다. 앞서 HTML5로 구현된 많은 웹 기반 어플리케이션들을 선보였는데, 이러한 웹앱(WebApp)의 핵심은 자바 스크립트다. 따라서 웹앱을 원활하게 구동하기 위해서는 빠른 자바 스크립트 엔진이 필수적인데 안드로이드는 V8 엔진을 채택하여 성능을 엄청나게 향상시켰다. 시연은 넥서스원 두 대(Froyo와 Eclair), 그리고 아이패드가 사용되었는데 Eclair 기반의 넥서스원과 아이패드가 비슷한 성능을 보였고, Froyo 기반의 넥서스원이 월등히 앞섰다.

이미 이슈가 되었던 플래시(Flash) 지원, 사용자 선택에 맡기는 것이야 말로 진정한 개방이라고 주장하는 모습이 인상적이었다. 많은 사람들이 모바일 폰에서 플래시가 지원되기를 기대하며, 또 많은 사람들이 플래시 지원을 반대하거나 관심 없어 한다. 안드로이드폰에서 플래시를 지원하기로 결정한 것이 정말 좋은 판단이었는지는 앞으로 조금만 지켜보면 알게 될 것이다.

그리고 안드로이드 사용자들이 정말로 반길만한 바로 이것! 안드로이드 2.2에서는 사용자 선택에 따라 내부 메모리에 저장된 앱을 SD 카드로 옮길 수 있게 되었다. 나는 이 기능이 좀 더 나중에 구현될 거라 예상했기 때문에 매우 뜻밖이었다. 정말 많은 안드로이드 사용자가 최고로 꼽을 만한 기능이 아닐까 생각한다.


Google TV

아주 흥미로울 것 같은 구글 TV는 안타깝게도 내겐 전혀 흥미롭지 않았다. TV에 PC를 연결한 것과 어떤 차이가 있는지 분명하게 전달되지 않은 듯 하다. 무선 네트워크 문제로 인해 시연이 무척이나 불안정해서 보기 참 안타까웠다. 흥미를 끌지 못했기에 이 글에서는 구글 TV를 다루지 않겠다.


근두근 6월

구글은 이번 발표에서 대놓고 애플을 상당히 견제했다. 그럼에도 거의 모든 발표에 애플 노트북을 사용한 것은 흥미롭다. 오직 어도비만이 MS 윈도우를 사용해서 그들의 제품을 시연했다.

이번 발표로 애플이 입을 타격은 사실 미미하다. 아이폰에 비해 월등히 앞서는 신 기술이 등장했다기 보다는, 기존에 많이 부족했던 안드로이드가 이제야 제대로 갖춰지는 듯 한 인상이 강하다. 하지만 일부 기술에 대해 애플과의 차별성을 설명하는 과정에서 애플의 심기를 불편하게 만들었음은 분명하다.

이제 조금만 있으면 애플에게 화답의 기회가 온다. 아이폰 4G 유출 사건과 함께 이번 구글의 발표를 스티브잡스가 어떻게 대처할지 무척 기대된다.



  1. deVbug 2010.05.24 13:49 ADDRESS | MODIFY/DELETE | REPLY

    http://www.macrumors.com/2010/05/23/steve-jobs-on-wwdc-announcements-you-wont-be-disappointed/
    스티브 잡스가, '실망하지 않을 것이다'고 기대해도 좋을거라는군요. ㅎㅎ

    애플은 어떤걸 들고 올려나 기대되네요.

    • semix2 2010.05.24 14:11 ADDRESS | MODIFY/DELETE

      스티브잡스의 한 줄짜리 답장은 언제봐도 즐겁네요. 다소 귀찮은 듯 하면서도 강렬함이 느껴져서 좋습니다. 전 이번 발표에서 어떤 것을 들고 나오는가 보다도 어떻게 이야기를 풀어가는가에 더 관심이 많아요. 정말 두근두근 기대가 큽니다!! 끼얏호-

  2. 학주니 2010.05.24 15:14 ADDRESS | MODIFY/DELETE | REPLY

    일단 구글이 먼저 선빵을 날렸지요..
    이제 남은건 애플의 WWDC에서의 놀라움 뿐인가요.. ^^

    • semix2 2010.05.24 15:39 ADDRESS | MODIFY/DELETE

      그러게요- ^^ 애플이 iAd를 발표하면서 구글을 자극한 건 분명하지만, 그렇다고 구글을 비판하는 뉘앙스는 아니었는데 이번 구글의 발표는 꽤 공격적이었어요.

      WWDC에서 스티브잡스가 어떻게 나올 지 정말 궁금합니다. 아이폰 유출 사건도 어쩌면 계획된 해프닝이 아닐까 기대하고 있던 터라 이번 발표가 너무나 기대되네요! 꺄호~

CATEGORIES