일기장/2010-01-31


Youngrok Pak at 13 years ago.

잡스가 또 플래시 까는 이야기를 했다길래 어이가 없어서 반박글을 좀 써본다. 원문은 http://www.wired.com/epicenter/2010/01/googles-dont-be-evil-mantra-is-bullshit-adobe-is-lazy-apples-steve-jobs/

잡스가 플래시를 까는 이유는 플래시가 느리고 불안정하기 때문이랜다. 일단 안정성 얘기부터 해보자. 아이폰은 플래시 욕할 만큼 안정적인 플랫폼인가? 물론, 기본으로 깔린 아이폰앱은 절대 안 죽는다고 말해도 좋을 만큼 안정적이다. 하지만 앱스토어에 올라오는 앱들도 그런가? 이미 한국 사용자들은 죽는 앱 많이 경험해봤을 것이다. 많은 이슈를 낳았던 서울버스도 죽었고, 바코드 최저가 검색앱도 죽었다. 상위권에 올라온 앱들도 이렇게 죽는다면 하위권 앱들은 말할 것도 없을 것이다. 플래시 무비가 이 정도 빈도로 죽는가? 내 경험으로는 아이폰앱 40개 다운 받으면 그 중에 서너 개 정도 죽는 앱이 있었다. 무려 10%다. 그런데 일반적으로 네이버 뉴스를 보면서 웹 서핑을 하는 유저는 플래시 무비를 하루에 50개 이상 접한다. 한 사이트에만 플래시가 10여개 있는 사이트도 있으니 100개에 달하는 경우도 많을 것이다. 그 중에 브라우저를 죽이는 경우가 얼마나 될까? 이 정도만 봐도 아이폰이 플래시 욕할 입장이 아니라는 걸 알 수 있다.

하지만 꼼꼼히 따져보면 그 차이는 더욱 크다. 아이폰앱은 320*480 화면에 불과하며 멀티태스킹도 안되는 상황에서 실행된다. 화면은 많아야 너댓 개다. 이 정도 규모의 플래시 무비를 만든다면 액션스크립트 조금 배운 디자이너가 만들어도 절대 안 죽는다고 말할 만큼 안정적인 플래시 무비를 제작할 수 있다. 아이폰앱은? 개발경력 7~8년 차가 만들어도 죽는 앱 부지기수로 만든다.

실제로 요즘 시판되는 스마트폰이 아닌 일반폰들의 UI는 대부분 플래시로 제작한다. 햅틱 같은 피처폰 제외하고 보통 키패드 달린 폰들도 UI가 다 플래시라는 뜻이다. 이런 폰들이 불안정하다고 느낀 적 있는가? 작은 프로그램을 안정적이고 빠르게 만드는 것은 어려운 일이 아니다. 이런 어드밴티지가 있는데도 아이폰앱은 심심찮게 죽는다.

더 심각한 차이가 하나 더 있다. 아이폰앱은 앱스토어 심사를 거친다는 것이다. 심각하게 죽는 앱들은 이미 다 걸러졌다는 뜻이다. 그럼에도 불구하고 상위 랭크에 오르는 앱들조차 죽는 모습을 보여주는 것이다. 이것까지 감안하면 차이는 더더욱 커진다.

여기에는 이런 반론이 있을 수 있다. 아이폰앱은 죽어도 혼자 죽지만 플래시는 브라우저를 통채로 죽이거나 시스템 전체를 느려지게 하지 않느냐고. 물론, 그 차이는 있다. 하지만 아이폰이나 아이패드에 올리는 관점으로 보면 상관 없는 문제다. 어차피 멀티태스킹이 안되기 때문에 시스템 전체를 느려지게 만들지도 않고, 독립 프로세스로 실행되기 때문에 죽어도 자기만 죽거나 브라우저까지 죽는 선에서 멈추지 아이폰이나 아이패드를 다운시킬 수는 없다. 어차피 죽는 아이폰앱의 비율을 생각해보면 플래시로 인해 아이폰의 안정성을 떨어뜨릴 가능성은 거의 없다.

요컨대, 사용자 관점에서 봤을 때, 이미 죽는 아이폰앱을 많이 경험해봤을 것이기 때문에 플래시 때문에 사파리가 죽는다고 사용자들이 놀라지는 않을 것이라는 얘기다. 그에 비해 플래시가 주는 이득은 엄청나다.

그럼 왜 아이폰앱이 플래시 무비보다 잘 죽을까? 죽는 앱을 만들기가 더 쉽기 때문이다. 결정적인 이유는 괴상한 메모리 관리 구조다. malloc/free도 아닌, new/delete도 아닌, 자동 가비지 컬렉션도 아닌 이상한 체제를 선택했다. 이게 알고 보면 좋은 아키텍처니 어쩌니 주장할 수도 있겠지만, 결과적으로 개발자들이 메모리릭을 많이 만들어내는 걸 보면 좋은 아키텍처는 분명 아니다. 이에 비해 플래시는 느려지긴 해도 자동으로 가비지 컬렉션이 된다. 플래시 무비의 상당수를 디자이너들이 만드는데도 아이폰앱보다 덜 죽는 이유도 이것이다.

물론 그 대가로 아이폰이 얻은 것은 성능이다. 플래시가 fps로 따지면 아이폰앱보다 느리지 않지만 가비지 컬렉션 등의 이유로 반응성에서는 아이폰만 못하다. 하지만 그 대가가 너무 크지 않은가.

솔직히 난 아이폰이 플래시를 보면서 반성해야 한다고 생각한다. 아이폰 개발 환경은 21세기에 나왔다고 믿기 힘들만큼 후졌다. 4~5년차 개발자가 아이폰 개발 책 2~3권 읽고 두세 달 동안 스터디해도 앱 하나 제대로 못 만드는 모습, 많이 봤다. 내가 한 달 전 모 컨퍼런스에서 안드로이드를 아이폰이랑 비교하면서 버그 많고 느리고 성숙도가 낮다고 까댄 바 있는데, 그래도 안드로이드는 보통의 자바 개발자가 한 달 배우면 뭔가는 만들어낸다. 플래시는 개발 경험 없는 디자이너가 일주일 배우면 어지간한 무비클립 만들 수 있다. 개발자가 한 달 정도 배우면 플래시로 뭐든지 만들 수 있다. 이 정도 차이가 난다면 반성해야 정상이 아닐까?

난 iPad가 상업적으로는 대성공을 거둘 것이라고 생각한다. 하지만 이것은 아이폰과 아이튠즈의 성공을 카피한 것일 뿐이다. 애플의 혁신은 아이폰 1세대가 끝이었다. 잡스는 성장을 멈췄고, 성공을 복제해내고 있을 뿐이다.

하지만 난 사실 플래시가 iPhone에도, iPad에도 탑재되지 않길 바란다. 오히려 HP나 Dell, 삼성, 소니 등에서 플래시 중심의 경쟁 플랫폼을 내놨으면 하고 바라기 때문이다. 우리 회사도 지금은 시장의 크기 때문에 아이폰앱 쪽에 투자하고 있지만 장기적으로 투자하고 싶은 플랫폼은 아니고 경쟁 플랫폼들이 좀더 성장하기를 바란다.

잡스 까대는 김에 하나 더 까자. 애플이 구글 욕하는 것도 웃긴 일이다. 자신들의 시장에 침투한다고 Evil인가? 구글이 Don't be evil이라고 말하는 것이 경쟁을 안하겠다는 뜻으로 보인다면 오산이다. 게다가, 구글은 자기네들 플랫폼도 다 오픈하고, 심지어 마켓조차 마음대로 만들 수 있게 해주지 않는가. 애플보다 덜 evil에 가까운 것은 분명하다. 더군다나, 대외적으로 모바일 사업 진출을 더 먼저 선언한 것은 구글이다. 안드로이드와 관련된 제조업체와의 제휴는 아이폰 발표보다 1년 이상 전에 시작했고, 사업 추진 발표도 더 빨랐다. 물론 아이폰도 그 전에 준비는 하고 있었겠지만, 그걸 몰랐을 구글에게 애플의 사업 분야에 왜 진출했냐고 하는 것은 말도 안된다는 것이다. 역시나 잡스의 판단력이 예전 같지 않다는 것을 보여주는 대목이다.

오히려 이 이야기는 애플이 안드로이드로 인해 상당히 당황하고 있다는 뜻으로 해석하는 게 맞을 듯 하다. 사실 난 안드로이드처럼 기술적으로 후진 플랫폼이 아이폰 경쟁자로 떠오르는 상황이 참 맘에 안 들지만 비즈니스가 꼭 기술적인 이슈로 움직이는 것은 아니니까.


Comments




Wiki at WikiNamu