기술보단 결과물

소프트웨어 | 2006/02/01 13:04 | djhan
"Java로 만들면 우라지게 느린데다가 윈도우즈나 맥에 맞춰서 UI를 만들기도 어렵잖아요? 대체 그걸로 만든 이유가 뭐예요?"
"거기선 Java가 신앙이었어. 다른 걸론 죽어도 개발 못하지."
- ThinkFree Office 개발에 참여했던 모씨의 증언


맥유저라면 기억이 생생할 것이다. 아래아한글과의 호환성을 보장한다는 사실 하나를 내세워 무시무시하리만치 엄청난 기대를 몰고 왔던 ThinkFree Office를. 그러나 막상 써보니 지독하게 느린 속도와 형편없는 UI와 덜 떨어진 기능 때문에 다들 이를 갈며 분노하고 끝내는 하드에서 지워버린 ThinkFree Office를.

ThinkFree Office는 멀티 플랫폼 데스크탑 어플리케이션을 지향하는 동시에 ASP(Application Service Provider) 시장을 개척하겠다는 원대한 희망을 이루기 위해, Java로 개발되었다.
하지만 다들 잘 알다시피 데스크탑 어플리케이션을 개발하는 데 있어서 Java는 결코 좋은 선택이 아니다. 멀티 플랫폼을 지원하는 개발 환경이긴 하지만, 리눅스/윈도우즈/맥의 자바 버츄얼 머신의 특성과 UI가 조금씩 다르다는 문제가 있다. 각각의 플랫폼에 맞춰 조금씩 손을 볼 필요가 있다. 각 플랫폼에 최적화된 코드로 실행되는 것이 아니기 때문에 그 실행 속도는 대단히 느린 편이다.
더군다나 제품 개발 도중에 MS가 Sun과의 분쟁 때문에 Java 버추얼 머신을 Windows에서 제거한다는 결정을 내리는 등, 악재가 속출했다. 그럼에도 불구하고 ThinkFree는 결코 Java를 포기하지 않았다.

당시 상황을 여러 가지로 취합해 보건대 ThinkFree가 Java 개발 환경을 고집한 이유는 딱 한 마디로 축약된다. Java는 그들에게 있어서 빛이요 소금이요 희망이었던 것이다. 그것은 시대를 선도하는 개발 툴이었으며 매력적인 마케팅 수단이었고, 종교적인 믿음이었다. Java로 하면 안 되는 게 없다, Java로 하면 최고다, 그러니 Java를 써서 개발하는 우리에게 투자할지어다!

어떤 소프트웨어가 상업적인 성공을 거두기 위해서 필요한 것은 세 가지로 요약된다. 첫번째는 사용자들이 원하는 기능(혹은 그 이상)을 갖출 것, 두번째는 편리한 인터페이스를 갖출 것, 세번째는 속도가 빠를 것.
하지만 ThinkFree Office의 개발진은 멋들어진 신기술에 도취된 나머지, 이런 기본적인 사실을 완전히 무시해 버렸다. 그 결과물은 대단히 참혹한 것이었다.
기능? 메모장 수준이었다. 인터페이스? 메모장보다 못했다. 속도? 메모장이 훨씬 빨랐다. 결론? 그런 걸 누가 쓰겠냐. 게임 오버.

ThinkFree 개발사는 해외에서 투자받은 몇천만 달러를 야금야금 까먹으며 거대 기업에서 중소 기업으로 마지막에는 개인 사무실 수준으로까지 몰락해 버렸고, 종국에는 한글과 컴퓨터에 헐값으로 넘어가 버렸다. 그리고 애플을 비롯한 여러 회사에선 ThinkFree Office를 번들 소프트웨어 목록에서 삭제했다. 최근에 나온 ThinkFree Office 3.0 역시, Azureus를 제외한 그 나머지 Java 기반 데스크탑 어플리케이션은 인간이 쓸 만한 물건이 못 된다는 편견을 다지는 데 있어서 지대한 공헌을 하고 있을 따름이다.

Web 2.0 시대니, Ajax가 어쩌느니, 다들 말이 많다. 하지만 등소평의 흑묘백묘론을 빌려 말하자면 어떤 기술을 쓰건 결과물이 좋아야 하는 것이다. Web 2.0이고 뭐고 간에, CSS 1.0만 썼건 뭐고 간에, 구시대적인 테이블 태그로 도배를 했건 뭐고 간에, Safari와 Firefox와 IE에서 골고루 잘 보이면 그게 바로 좋은 사이트다.
겉멋에 들어 Ajax가 어쩌고저쩌고 뻔지르르한 말만 늘어 놓으면서 제대로 된 결과물 하나 내놓지 못한다면 그건 기술을 기술로 쓰는 게 아니라 마케팅 수단으로 쓰는 것이며, 망하는 지름길이기도 하다.
2006/02/01 13:04 2006/02/01 13:04