2차대전에서 영국과 미국은 연합군 진영으로서 독일에 대항해 싸웠다. 하지만 같은 영어를 쓰는 나라이면서도 두 나라는 이미 유럽과 신대륙의 거리만큼이나 사고방식의 차이가 있었다.


대표적인 차이점은 독일에 대한 공중 폭격방식이었다. 당시의 폭격기는 프로펠러 방식이었고 정밀 유도기기나 전자장치 같은 건 없었다. 그러기에 영국은 철저히 합리적으로 나왔다. 어차피 목표물을 정확히 맞추기 어렵기에 그저 많은 양의 폭탄을 싣고 목표 위에 뿌려버리자는 것이다. 그러다보면 어차피 그 가운데 상당수는 맞을 게 분명하다는 것이다. 이른바 융단폭격의 논리다.




반면 ‘양키’라 불리는 미국은 정밀 유도폭격을 주장했다. 미국 군인들은 영국의 논리는 단지 실력부족일 뿐이며 확신을 가지고 도전한다면 충분히 목표물만을 면도날처럼 도려내듯 폭격할 수 있다고 주장했다. 미국의 정밀타격 논리는 그러나 실전에서는 거의 빛을 보지 못했다. 고향인 미국 대륙의 고요한 평원위에서 성공했는지는 몰라도, 막상 혼란스럽고 예상치못한 일이 속출하는 유럽의 전장에서는 연거푸 실패했기 때문이다.


하지만 미국은 끝내 포기하지 않았다. 2차대전 중에는 거의 성공하지 못했지만 미국은 끝내 정밀 유도 무기를 만들었다. 제트엔진과 컴퓨터칩이 들어간 미사일과 정밀 유도폭탄은 결국 미국의 손에서 완성되어 지금 중동전역을 비롯한 각지에서 마술과 같이 쓰이고 있다. 토마호크 순항 미사일의 정밀도를 놓고 티비에서도 감탄하는 이유다.


애플의 소프트웨어 경쟁력을 논함에 앞서 이런 미국의 이른바 ‘양키 기질’을 이해할 필요가 있다. 우리가 헐리우드 영화의 젊고 시건방진 주인공에서 곧잘 보듯이 이들은 기존의 낡은 사고를 거부하며 자기가 하면 뭐든지 할 수 있다고 믿는다. 이들의 이런 도전은 많은 경우 실패로 끝나지만, 그 가운데 성공하는 몇 가지는 완전히 기존의 기술을 뒤엎는 혁신을 이뤄내는 게 사실이다. 그리고 컴퓨터 업계에서 그런 존재가 바로 애플이다.


애플이 지금도 자랑스럽게 내세우는 혁신 컴퓨터 매킨토시를 살펴보자. 매킨토시의 핵심인 GUI(그래픽 유저 인터페이스)는 사실 팔로알토의 있는 제록스의 연구소에서 가져왔다. 그 기술이 어째서 범용화되지 못했을까? 단순히 제록스의 경영진이 멍청하거나, 기술진이 나태해서가 아니다. 최초에 이 기술은 제록스에 있는 고가의 워크스테이션 위에서만 구현되었기 때문이다.


워크스테이션은 기업의 비즈니스나 연구용으로 만들어진 소형 컴퓨터다. 그렇지만 말이 소형이지 일단 개인용 컴퓨터보다 크고, 안에는 고성능을 위한 고가 부품과 전력소모가 극심한 전자기기로 이뤄져 있다. 개인이 이런 것을 부담없이 살 수 있을 리가 없다. 수치연산용 보조 프로세서(FPU)는 전혀 없었고, 저가의 범용 그래픽 가속장치 같은 건 존재하지도 않았던 것이 당시의 개인용 컴퓨터다. 설령 누군가 제록스의 기술을 훔쳐내자고 생각했더라도 실제로 싼 부품으로 만들어 저렴하게 팔아야 하는 PC레벨에서 구현하는 건 불가능에 가까웠다.

 

 

그렇다면 애플은 이것을 어떻게 구현했을까? 사실 애플이라고 무슨 마법이 있었던 건 아니다. 일례로 애플이 매킨토시에 앞서 내놓았던 컴퓨터인 리사(LISA)를 보자. 이 컴퓨터는 최초로 그래픽 유저 인터페이스를 채택했지만 가격이 무려 1만달러에 달했다. 더구나 느리고 오류도 잦았으며, 과열우려까지 있었다. 결국 잡스의 딸 이름과 같은 이 컴퓨터는 시장에서 외면받고 말았다.


리사가 이렇게 비싸지고도 성능이 부실해진 원인은 앞서 말한 데서 기인한다. 당시 기술수준에서는 워크스테이션에서나 가능한 그래픽 인터페이스를 구현하려고 해서다. 검은 바탕에 녹색 글자를 간신히 움직이던 세상에서 그래픽이 움직이며 동작하는 시스템을 만들려고 해보자. 특별히 주문한 그래픽 칩은 단가가 비싸게 먹히고, 코드를 짜는 프로그래머는 길고도 복잡한 코드를 작성하고는 오류가 없게 짜야한다. 그것뿐이랴, 기본적으로 느린 CPU아래서 쾌적하게 움직이게 최적화까지 하는 건 상상을 초월한다. 리사의 실패는 당시 기술수준에 비하면 너무도 무리한 요구사항을 수용하려다 생긴 당연한 결과다.


그렇다면 매킨토시는 어째서 성공했을까? 해답은 바로 기계어에 있다. 공식적으로 밝히지는 않았지만 초기 매킨토시의 코드는 분명히 엄청난 양의 기계어로 직접 코딩되었을 것이다. 하드웨어인 칩을 직접 하나하나 제어하는 식으로 만들어진 코딩이다.




매킨토시의 개발비화에 따르면 매킨토시를 만든 엔지니어는 나중에 이 컴퓨터가 너무도 저렴한 하드웨어에서 최고의 성능을 발휘하도록 만들어졌다고 한다. 그리고 그 과정에서 하드웨어가 운영체제와 너무도 밀착되었다고 토로했다. 때문에 다른 경쟁자가 이걸 따라잡으려면 상당한 시간이 걸려야할 거라 했다. 하지만 대신 매킨토시의 운영체제를 하드웨어에서 분리하는 것도 불가능에 가깝다고 밝혔다. 


사실 이것은 당시 또다른 컴퓨터 산업의 한축인 일본에서 많이 쓰이던 방식이다. 일본은 8비트의 범용칩으로 많은 컴퓨터와 게임기를 만들었는데 한정된 성능과 가격의 하드웨어에서 최고의 그래픽과 사운드를 제공하기 위해 종종 어셈블리어로 대표되는 기계어 코딩을 썼다. 이건 속된 말로 ‘노가다’라고 말할 수 있다. 


예를 들어 일반적인 컴파일러형 언어(C언어)에서 1과 1을 더한다고 생각해보자. 프로그래머는 하드웨어를 거의 생각할 필요없이 더하라는 명령을 내리면 된다. 나중에 컴퓨터가 그걸 알아서 풀어 재해석하고는 기계어로 옮긴다.


그러나 어셈블리어는 다르다. 재해석 과정 없이 바로 인간이 기계어를 쓰는 것이다. 1이라는 값을 특정 레지스터를 통해 메모리에 넣으라고 명령하고는 다시 1을 다른 레지스터에 넣은 후 양쪽 값을 더해 다른 메모리에 넣고 출력하라고 해야한다. 간단한 작업 하나에도 너무도 많은 신경과 노력이 소모된다. 대신에 나중에 실행하는 속도는 비교가 안되도록 빠르다. 컴파일러는 기계가 인간에 맞추는 언어인데, 어셈블리어는 인간이 기계에 맞추는 방식이기 때문이다.    


초기에 애플과 잡스가 어째서 맥의 운영체제를 마이크로소프트의 도스처럼 범용 하드웨어용으로 만들지 않았는가에 대해서 많은 논쟁이 있었다. 일부는 잡스가 하드웨어에 상당히 집착하며 최고의 사용자경험을 제공하기 위해서라는 면을 부각한다. 그렇지만 실상 초기 매킨토시에서는 잡스가 설령 떼어내고 싶어도 그럴 수가 없었다는 점이 더 크게 작용했을 것이다.




애플의 소프트웨어 경쟁력, 혁신의 비밀은?


여기서 애플의 구체적인 경쟁력이 무엇인지 적나라하게 알 수 있다. 다른 경쟁 업체들이라면 애초에 기술적으로 가능하지 않기에 기다려야 한다고 포기했을 것이다. 하지만 애플은 용감하게 도전했다. 잡스는 매킨토시 개발팀을 데리고 해적처럼 일했다. 그들이 휴일이고 휴식시간이고 없이 살인적으로 일하며 도전해야 했던 이유가 바로 이것이다. 기계어로 하드웨어에 밀착된 최적의 코딩작업을 해야 했기 때문이다.


일단 목표가 정해지면 그에 대해 엄청난 힘으로 부딪친다. 그리고 이뤄낸다. 애플의 소트프웨어 경쟁력은 이렇게 불가능이라 생각하는 일에도 도전하는 도전정신에 있다. 필요하다면 가장 낮은 수준의 언어인 기계어까지 쓰며 운영체제를 만들수 있는 엄청난 노력 말이다. 다른 업체들이 도저히 할 수 없다고 손을 들때, 애플은 그것이 반드시 해야하는 일이라면 기꺼이 돈과 인력을 쏟아넣는다.


그러면 다른 경쟁업체들은 한동안 두 눈 멀쩡히 뜨고 감탄만 할 수 밖에 없다. 엔지니어가 기술적으로 힘들다고 포기하고, 경영진이 채산성이 안맞는다고 거부하고, 마케팅팀이 시장이 아직 덜 무르익었다고 기각했던 계획을 실현했기 때문이다.


결국 애플의 혁신에 열광한 소비자를 보고 정신이 퍼뜩 든 경쟁자들은 뒤늦게 따라가야 하기에 당분간은 카피캣이 될 수 밖에 없다. 윈도우가 그랬고, 안드로이드가 그랬다. 삼성이 이제부터 스마트폰과 태블릿 등에서 전면적으로 싸워야 할 애플은 바로 이런 기업이다.




실제로 매킨토시 응용프로그램을 만들며 기술 일부를 배울 수 있었던 마이크로 소프트마저도 맥의 운영체제를 흉내내기가 너무 힘들었다. 최초에 나온 윈도우 1.0 은 그래픽도 조악했고 동작도 엉성했다. 3.0에 이르러서 간신히 어느 정도의 흉내가 가능했으며 거의 맥과 비슷해진 것이 윈도우 95였다.

MS의 프로그래머들이 역량이 부족해서가 아니다. 하드웨어에 너무도 밀착된 맥의 운영체제는 기계어를 얼마든지 쓸 수 있지만 하드웨어에 상관없이 범용 PC에서 돌아가는 운영체제를 만들려면 기계어 사용이 제한될 수 밖에 없기 때문이다.
이것은 애플이 당시의 일반적 기술수준을 뛰어넘기 위해 처절하게 노력했음을 보여주는 반증이기도 하다.

과연 삼성은 이런 애플을 어떤 방법으로 뛰어넘을 수 있을까? 매우 힘들지만 불가능하지는 않다. 골리앗이 그랬듯이 어떤 기업도 약점은 있다. 이후에 애플이 가진 약점과 삼성이 가진 강점을 알아보도록 하자.

 

P.S : 어제 맥북에어 11인치를 중고로 구입했습니다. 나름 가지고 다니는 용도로는 최적이라고 생각해서 산 것인데 무척 마음에 드네요^^