잡스의 기준

IT 2020. 11. 3. 19:57

- 애플 소프트웨어의 성공에 기여한 일곱 가지 핵심 요소
1. 영감 Inspiration: 거대한 아이디어를 떠올리고 그 가능성 상상하기
2. 협력 Collaboration: 다른 사람과 함께 일하는 과정에서 각자의 보완적인 장점 결합하기
3. 기능Craft: 기술을 적용해 최고의 결과물을 얻고, 항상 더 좋은 것을 만들어내기 위해 노력하기
4. 성실Diligence: 힘든 일도 마다 않고, 쉽고 빠른 길에 의존하지 않기
5. 결단력 Decisiveness: 까다로운 결정을 내리고, 미루지 않기
6. 취향Taste: 선택을 위한 세련된 감각을 개발하고, 즐거움을 주는 통합된 전체를 만들어내기 위한 균형감 유지하기
7. 공감Empathy: 생각이 다른 사람들이 살아가는 세상을 이해하려 노력하고, 그들의 삶에 잘 어울리고 그들의 욕망을 충족시킬 제품 창조하기
- 나는 오랫동안 많은 이로부터 어떤 주제든 혹은 미심쩍은 이야기까지도 상대가 믿게 만드는 스티브만의 특별한 능력에 대한 이야기를 들었다. 스티브의 현실왜곡장 Reality Distortion Field, RDF은 어느덧 전설이 돼 있었다. 하지만 스티브가 나를 바라보는 순간, 나는 반대 힘, 즉 극성이 바뀐 RDF를 느꼈다. 마치 전등 스위치를 누른 것처럼, 스티브가 주변에 단단한 공간을 형성했다. 그 공간에는 겉치레와 가식이 없었다. 그의 시선은 불친절하거나 위협적이지 않았다. 그러 나 깜빡이지 않는 그의 시선에는 분명 상대를 꼼짝 못 하게 만드는 위 엄이 있었다. 나 역시 거기서 벗어날 수 없었다. 그의 응시는 어떤 속임수도 용납하지 않겠다는 의미로 보였다.
- 스콧은 또한 품질 높은 데모만 승인해, 스티브 대신 데모 회의의 문지기 역할을 했다. 스콧은 팀원들이 열심히 일했다는 생각만으로 3등 급짜리 데모를 들고 가서 CEO의 승인을 요구해선 안 된다고 생각했다. 그것이야말로 스티브의 화를 돋우고, 두 번째 결정자란 권한을 잃는 지 름길이었다. 게다가 스콧은 대단히 빠른 혈통 좋은 경주마를 늙은 말 한 무리와 함께 내놓고 스티브가 만족스럽게 승자를 택하길 기대하는 방식으로 데모 회의 과정을 수정해서도 안 된다는 사실을 잘 알았다. 스티브는 틀림없이 그런 꼼수를 금방 알아차릴 것이었다.
- 리눅스와 맥OS X은 UNIX(1969년 벨 연구소가 개발한 운영체제)라는 같은 조상에서 나왔지만, 이미 그 기원으로부터 너무 멀리 갈라져 나왔다. 시간이 흐르면서 리눅 스와 맥은 점차 같은 언어를 쓰는 갈라진 두 나라처럼 돼버렸다. 한쪽 은 대형 화물차를 '로리lorry'라고 부르는 반면 다른 한쪽은 '트럭truck'이 라고 부르는 식이었다. 특히 웹브라우저 같은 최종 이용자 앱과 관련해, 둘의 호환성 범위는 지극히 협소했다. 하지만 프로그래머가 작업하는 알고리즘 단계로 내려가보면, 호환성 범위가 넓어진다는 사실을 확인 할 수 있다. 둘은 몇몇 기술적 언어와 문법을 공유하며, 캉커러 개발자가 소스코드 작성에 사용한 프로그래밍언어인 C++를 토대로 프로그 램을 구축하고 실행할 수 있다. 리눅스와 맥은 C++로 된 프로그램을 실행하기 위해 서로 다른 프로그래밍언어와 문법을 사용한다. 이런 사실은 특히 그래픽 사용자 인터페이스에서 두드러지게 나타난다. 이로 인 해 이 컴퓨터에서 저 컴퓨터로 코드를 복사할 수 없다. 만약 우리가 캉커러를 웹브라우저 프로젝트의 기반으로 삼고자 한다면, 캉커러의 리 눅스 소스코드에서 모든 언어와 기술적 차이점을 수정하고, 강력한 소 프트웨어 기술로 리처드가 만든 심을 교체해야 한다. 특정 운영체제를 기반으로 구축된 코드를 다른 운영체제에서 돌아가도록 가공하는 작업은 따로 용어가 있을 정도로 흔한 일이었다. 프로그래머들은 이 작 업을 포팅porting'이라고 부른다. 마치 원래 맥을 위해 구축된 것처럼(실제는 아니지만) 작동하는 소스코드로 애플 기준에 적합한 웹브라우저를 내놔야 한다는 점에서, 우리의 포팅 작업은 실제로 완벽에 가까워야 했다.
- 기술적인 부분을 제쳐둔다면, 컴퓨터 프로그램은 요리책과 비슷하다. 둘 다 특정한 과제 수행을 위한 구체적인 지침을 담고 있다. 다만 요리사는 독자가 읽을 수 있도록 글을 쓰지만, 프로그래머는 컴퓨터가 읽도록 코드를 쓸 수 없다. 컴퓨터가 원래 프로그래밍언어를 이해하지 못하기 때문이다. 컴퓨터는 오로지 0과 1의 이진법 언어로밖에 의사소통하지 못한다. 컴퓨터에게 지시를 내리려면, 컴파일러compiler라는 프로그램을 통해 C++ 언어를 컴 퓨터가 이해하는 이진법 언어로 전환해야 한다. 인간이 이해하는 언어 를 기계가 이해하는 언어로 번역하는 과정을 '컴필레이션(compilation' 혹 은 '빌딩building'이라고 한다. 또한 이런 번역 작업은 왜 프로그래밍언어로 작성된 코드 라인을 소스코드'라고 부르는지 설명해준다. 코드의 라 인은 컴퓨터가 이해하는 이진법 코드를 빌드(다시 말해 번역)하기 위한 원재료인 셈이다. 웹브라우저처럼 완전한 기능을 갖춘 프로그램은 엄청난 양의 소스코드를 필요로 하기 때문에(캉커러 같은 상대적으로 단순한 프로그램도 10만 라인이 넘는다), 프로그래머는 이들 라인 전부를 따로 떨어진 소스코드 파일로 구분해야 한다. 이런 작업을 통해 프로그래머는 각각의 하위 과제를 조직하고 구성할 수 있다. 웹브라우저의 경우, 웹주소URL를 다루는 코드는 단 하나의 소스코드 파일에 포함돼 있을 수 있다. 반면 인터넷에서 데이터를 내려받기 위해 URL을 활용하는 것처럼 복잡한 코드는 다양한 소스코드 파일에 퍼져 있다. | 요리사 역시 자신의 요리법을 여러 부분으로 구분한다. 예를 들어 에 그 베네딕트 요리법은 수란을 만들고, 캐나다 베이컨을 튀기고, 잉글리 시 머핀을 굽고, 홀란데이즈 소스를 만드는 하위 방법으로 이루어져 있 다. 하지만 요리사가 에그 베네틱트 요리법을 설명하면서 홀란데이즈 소스 만드는 법을 세세하게 다루지 않을 수도 있다. 가령 아스파라거스 요리법에서 홀란데이즈 소스 만드는 법을 이미 소개했다면 말이다. 요리책 전체에서 단 한 번만 홀란데이즈 소스 요리법을 소개하면 된다. 그 리고 각각의 서로 다른 요리법에서 이를 언급하기만 하면 된다. 예를 들 어 “123쪽 홀란데이즈 소스 참조”라는 식으로 말이다. 프로그래머도 마찬가지다. 웹에서 데이터를 내려받기 위한 소스코드 파일을 작성하려면 URL을 처리하기 위한 코드가 필요하다. 그렇지만 그 코드를 필요한 모든 곳에 통째로 붙여 넣지는 않는다. 대신 '인클루드include 명령어를 활용해 URL 소스코드 파일을 언급하기만 하면 된다. 에그 베네딕트 요리법에서 홀란데이즈 소스 만드는 법은 특정 페이 지를 참조하라는 언급만 하고 넘어가는 것처럼 말이다. 소프트웨어에 서 인클루드 지시어는 요리책에서 참조와 똑같은 역할을 한다. 프로그 래머는 이런 지시어 덕분에 전체적인 형태를 유지할 수 있다. 각각의 구 체적인 작업에 오직 하나의 명령어만 있으면 된다. 하지만 이런 시스템은 완벽하지 않다. 상호참조 방식이 에러의 여지 를 남겨두기 때문이다. 예를 들어 에그 베네딕트 요리를 하면서 홀란데이즈 소스 만드는 법을 참조한다고 해보자. 이때 홀란데이즈 소스 요리법이 실린 123쪽이 아니라, 실수로 132쪽을 펼친다면 원하는 내용을 찾을 수 없을 것이다. 이런 에러는 프로그래밍 과정에서 언제든 일어나기 마련이다. 사람들 은 실수하고, 컴퓨터는 그런 실수를 용납하지 않는다. 프로그램을 작성 할 때 다양한 실수가 벌어진다. 가령 프로그래밍언어 문법에서 실수를 저지르거나(요리책의 오탈자와 비슷하다), 잘못된 파일을 참조하는(요리책 에서 잘못된 페이지를 펼치는 것과 같다) 경우가 그렇다. 게다가 명령 내용이 명확하지 않을 경우, 컴파일러는 정확한 의미를 이해하지 못한다.
- 슬라이드를 설명할 때, 스티브는 프레젠테이션 주인공 역할에 완전히 몰두했다. 청중이 가득 들어차 있는 것처럼 목소리, 자세, 손짓 등 그 모든 것을 정확하게 했다. 모든 것이 만족스러 울 때까지 리허설을 이어나갔다. 뭔가가 필요하다고 느끼면 역할에서 빠져나와 작은 목소리로 말했다. 맨 앞에 앉은 월드와이드 마케팅 수석 부사장 필 실러 Phil Schiller 같은 임원에게 표현 바꾸는 것을 어떻게 생각하는지, 혹은 이야기가 부드럽게 흘러가고 있는지 물었다. 스티브는 임원들의 피드백을 잠시 신중하게 생각한 다음 다시 역할로 돌아와 리 허설을 이어갔다. 발음이 부드럽게 이어지지 않으면 다시 한 번 시도했 다. 때로는 세 번, 네 번 반복하기도 했다. 마치 영화 대본을 낭독하는 것처럼 매번 다른 느낌으로 그렇게 했다. 그는 단 한 문장도 놓치지 않았다. 그때는 이미 프레젠테이션 문장이 다듬어져 있었지만, 스티브는 모든 문장과 표현을 완벽하게 만들기 위해 집중했다. 스티브는 프레젠테이션을 처음부터 끝까지 연습했다. 행사가 있기 전 토요일, 일요일에는 매일 두 번씩 했다. 행사는 2003년 1월 4일 화요일 로 예정돼 있었다. 행사 직전 주말 연습은 모두 드레스 리허설로 진행됐다. 실제로 스티브는 검정 터틀넥에 청바지 차림으로 연습했다.

'IT' 카테고리의 다른 글

창조력 코드  (0) 2020.11.20
괴물신입 인공지능  (0) 2020.11.19
디지털의 배신  (0) 2020.10.27
타겟티드  (0) 2020.10.18
은밀한 설계자들  (0) 2020.09.07
Posted by dalai
,