Table of contents
드리밍 인 코드
이 책은 챈들러라는 프로젝트가 어떤 비전을 갖고 어떤 문제를 해결하기 위해, 어떤 방식으로 진행되었는지 이야기한다. 옮긴이의 말처럼 이 이야기는 매일매일 소프트웨어 시간의 늪에서 허우적거리는 우리의 이야기이기도 하다. 책을 읽으면서 내가 고민하고 깨달은 내용들을 적어보려 한다.
무어의 법칙
하드웨어는 무어의 법칙에 따라 정말 빠른 속도로 발전하고 있다. 그러나 소프트웨어는 그 속도에 한참을 못 미친다. 하드웨어의 엄청난 발전에도 불구하고, 어째서 소프트웨어는 여전히 엉망이며 느려터져서 던지고 싶은 충동을 느끼게 하는 걸까? (요즘 가끔씩 크롬과 인텔리제이가 이유없이 느려진다. 그럴 때마다 집어던지고 싶지만 나는 지성인이니까 전원 버튼을 살짝 누르고 흡연실로 향한다.)
소프트웨어는 실체도 없는 주제에 시간이 지날수록 살이 붙어 덩치만 커져간다. 늘어난 무게는 부채가 되어 악취를 풍긴다. 결국 소프트웨어의 무게와 악취는 우리가 통제할 수 없게 된다. 통제할 수 없으니 짱짱한 하드웨어에 맡기는 수밖에 없겠지.
공학자와 예술가
공학: 공업적인 생산에 응용하여 생산력과 생산품의 성능을 향상·발전시키기 위한 과학 기술의 체계적인 학문. 엔지니어링(engineering).
technology는 고대 그리스어 technologia로부터 유래됐다. 이는 art(예술)과 craft(공예)를 의미한다.
예술: 특수한 소재·수단·형식에 의하여 기교를 구사해서 미(美)를 창조·표현하려고 하는 인간 활동 및 그 작품. 건축·조각 등의 공간 예술, 음악·문학 등의 시간 예술, 연극·무용·영화 등의 종합 예술로 나눌 수 있음.
art는 라틴어의 ars(마디, 기술, 예술)로부터 유래됐다. 문명 초기에는 예술과 과학기술(공학)의 구분이 없었다. 개발자 세계에서도 이 둘의 구분이 무너지고 있다. 개발자는 컴퓨터가 아닌 타인이 읽을 글쓰기 기술을 갈고닦는 예술가이면서 동시에 전문 지식을 기반으로 문제를 해결하는 공학자가 되어야 한다.
인공지능이 인간의 사고와 감정을 따라갈 수 있을까
우리는 커즈와일의 견해처럼 인간의 두뇌와 같은 소프트웨어를 만들어내어 특이점(Singularity)이라고 부르는 순간에 도달할 수 있을까? 글쎄... 3년 차 개발자면서 평범한 개발자인 내 입장에서는 아직 작은 프로그램 하나 만들기도 벅차다. 아무리 인공지능이라지만 패턴 인식에 불과한 현시점에서는 도저히 불가능해 보인다. 나는 케이퍼에게 박수를 보내고 싶다.
뭐 천재들만 모인다면 다를 수 있지 않을까? 야심찬 비전을 가졌지만 하나의 정보관리 소프트웨어에 불과한 챈들러도 난다 긴다하는 사람들이 모였는데 결과는? (이것 또한 개발자의 사고에 얽매여 버린 걸까)
마치며
스콧 로젠버그의 이야기 덕분에 내 직업의 목표와 한계에 대해 좀 더 깊게 이해할 수 있게 되었다.