[번역] 해커와 화가 – 5 (끝)

미술처럼 대부분 소프트웨어는 사람들에게 보이는 (쓰이는)것이 목적이다. 그래서 화가처럼 해커도 “동감”할줄 알아야 작품을 만들수 있다. 사용자의 관점에서 사물을 바라볼때 작품이 나온다.

어려서부터 나는 다른 사람의 관점에서 사물을 바라보도록 교육받았다. 실제로 이게 의미했던건 내가 원하는 것 보다는 주변의 사람들이 원하는 것을 먼저 해주게끔 배운 것이다. 물론 “동감”말고 이러한 삶의 방식을 나쁘게 부르는 이름이 있고 (역: 자기희생, 눈치보기), 나중엔 태도를 바꿔 내것을 먼저 챙기려고 노력했다.

그런데 내가 틀렸다. 사물을 다른 사람의 관점에서 바라보는 것이 실제론 성공의 비밀이었다. 그게 꼭 자기 희생을 의미하는 것은 아니었다. 실제론 그것과 거리가 멀었다. 다른 사람이 사물을 어떻게 보느냐를 이해하는 것은 꼭 그 사람의 이해관계를 위해 행동하라는 뜻은 아니다. 어떤 경우, 예를 들어 전쟁중에는 그 반대로 행동해야할 때도 있다.

대부분의 maker들은 사람들을 위해 무언가를 만든다. 그리고 사람들을 끌어들이기 위해서는 그들의 필요를 이해해야 한다. 예를들어, 거의 대부분의 명작 미술품들은 사람을 그린 것인데, 그 이유는 사람들은 그림에서 사람을 보고 싶어하기 때문이다.

“동감”은 아마도 괜찮은 해커와 뛰어난 해커를 나누는 가장 중요한 차이일 것이다. 어떤 해커들은 아주 똑똑하지만 동감의 면에 있어서는 아주 자기중심적이다. 그런 사람들은 사용자의 관점에서 사물을 못 보기 때문에, 위대한 소프트웨어를 디자인 하는것이 불가능하다.

해커가 얼마나 동감을 잘 하는지 알려면 기술적 배경이 없는 사람에게 기술 질문에 대한 답을 하는것을 보면 된다. 아마도 우리는 주변에서 똑똑하지만 그런 설명을 어처구니없이 못하는 사람들을 몇명 알고 있을 것이다. 그런 사람은 누군가 저녁식사 자리에서 프로그래밍 언어가 무어냐고 물으면 이런 식으로 대답할 것이다. “아, 하이레벨 언어는 컴파일러가 그걸 인풋으로 받아서 오브젝트 코드로 만들어주는 거예요” “하이레벨 언어?” “컴파일러?” “오브젝트 코드?” 프로그래밍 언어를 모르는 사람이라면 당연히 그런 용어에 무지할텐데 말이다.

소프트웨어가 해야 하는 일중 하나는 그 자신을 사용자에게 설명하는 것이다. 그래서 좋은 소프트웨어를 짜는 것은 사용자들이 기술에 얼마나 무지한지를 아는게 중요하다. 사람들은 소프트웨어에 아무 준비없이 다가갈 것이고, ‘이 소프트웨어는 이렇게 작동할거야’ 생각하며 실행시킬때 그 기대한대로 동작해야 한다. 사용자들은 매뉴얼을 읽지 않을것이기 때문이다. 이 기준으로 내가 경험한 최고의 시스템은 1985년의 최초 매킨토시 컴퓨터다. 매킨토시는 그전까지 소프트웨어가 한번도 못한것을 했다. 그냥 동작했다. (It just worked).

소스코드 역시 자신을 설명해야 한다. 사람들에게 프로그래밍에 대한 딱 한가지 격언만 소개한다면 책 “컴퓨터 프로그램의 구조와 해석”의 첫장에 나오는 이 구절이다.

“프로그램은 기본적으로 사람들이 읽을 수 있도록, 오직 우연히 컴퓨터에 의해 실행되도록 작성해야 한다”

사용자뿐 아니라 소스코드를 읽을 다른 해커들을 향한 동감을 가져야 한다. 사실 당신 자신을 위한 것이다. 많은 해커들은 자신이 짠 프로그램을 6개월 후에 다시 들여다보고는 전혀 감이 안잡히던 경험이 있을 것이다. 많은 이들이 다시는 Perl로 프로그램 안짠다고 맹세한 이유이기도 하다.

어떤이들은 동감할 줄 모르는게 똑똑해서 그렇다고 생각해서, 일부러 더 동감하지 않으려 한다. 하지만 지식과 동감에 꼭 상호연관이 있다고 생각치 않는다. 자연과학과 수학에 뛰어난 사람들은 흔히 사람들을 잘 이해하는데, 자연과학과 수학을 잘 하는 사람들은 보통 똑똑한 이들이다. 무식한 사람들중에 자기 중심적인 사람도 많다. 토크쇼에 전화를 거는 사람들 이야기를 들어보라. 그들은 자기가 무슨 질문을 하는지도 잘 몰라서 사회자가 그들의 질문을 해석해 다시 묻곤 한다.

자 그럼 해킹이 그림, 글쓰기와 같은 것이라면 과연 그런 직업처럼 쿨한 것일까? 당신은 딱 한번 인생을 사는데, 쿨하고 위대한 일에 시간을 보내고 싶을 것이다.

아쉽지만 이 질문에는 답이 어렵다. 멋진 것에는 항상 시간의 차이가 존재한다. 마치 먼 우주속 별이 보내는 빛과 같다. 지금 미술이 사람들 사이에 명망높은 이유는 500년전에 위대한 작품을 만든 사람들 덕분이다. 그 당시에는 지금 우리가 떠받드는 작품들이 대단치 않은 소장품이었다. 그 당시 사람들에게 우르비노의 공작 Federico da Montefeltro이 현 시대 사람들에겐 프란체스카의 그림에 나오는 이상한 코쟁이 인물로만 알려지는게 신기할 것이다.

지금은 해킹이 미술만큼 그렇게 쿨한 것으로 인정받지 못하는게 아쉽지만, 미술 역시 그 영광스런 시대엔 보잘 것 없는 직업으로 취급받았다는 사실을 기억해야한다.

그러나 우리가 확신할 수 있는것은 지금이 해킹의 영광스런 시대라는 사실이다. 대부분 분야에서 가장 훌륭한 작품들은 초기에 만들어졌다. 1430년에서 1500년 사이에 그려진 미술품들은 여전히 최고의 가치를 지닌다. 셰익스피어는 막 사설 극장이 세워지던 시절에 활동했었는데, 그 이후에 모든 극작가들이 그의 그늘 아래에서 작품을 써야만 했다. 알베르트 뒤러는 판화에서, 제인 오스틴은 소설에서 그랬다.

시간이 지나면 지날수록 우리는 같은 패턴을 본다. 새로운 매체가 출현하고 사람들은 그것에 흥분해서 매체의 가능성을 처음 몇 세대동안 모두 탐구해본다. 해킹이 바로 그 시점에 있다.

다빈치는 그의 작품들로 인해 훗날 미술을 쿨한 직업으로 인정받게끔 했지만 그 시대엔 그 영광을 누리지 못했다. 해킹이 얼마나 쿨한 직업으로 훗날 인정받을까의 여부는 지금 우리가 이 매체로 무엇을 만들어낼까에 달려있다.

https://twitter.com/sm_park

21 thoughts on “[번역] 해커와 화가 – 5 (끝)

  1. 안녕하세요 저는 지금 대학교 4학년인 학생입니다.
    컴퓨터 사이언스 학과구요 ㅎㅎ
    한가지 여쭤볼것이 ㅎㅎ 오픈소스를 보면서 공부를 하는것이 좋다고 하시는데…
    어떻게 해야할지를 잘 모르겠어요 ㅎㅎ
    저번학기에는 C언어로 프록시 서버를 구현하는 게 프로젝트였는데요 ㅎㅎ
    너무 막막해서 오픈소스를 보면서 했는데 ㅎㅎ
    이해는 될까말까 하면서 ㅎㅎ 뭔가 따라하기는 따라하는데 너무 카피하는거 같은 느낌도 나고 그러더라고요 ㅎㅎ 이게 과연 맞는 공부 방법인지 잘 모르겠습니다.
    나중에 오픈소스를 안보고 하라면 못할것 같습니다. ㅠㅠ

    • 제가 보기엔 맞는것 같은데요? 글에서도 얘기했듯이 오픈소스의 혜택중 하나가 코드를 참조하면서 배워나가게끔 하는 거니까요. 카피하는것 같다고 했는데 처음에야 누구든 그런 느낌이겠죠.. 저도 그랬던 경험 있고 말이죠.

      저는 오픈소스 회사에서 일하는데 회사의 새로운 프로젝을 시작할때 경쟁 오픈소스 회사의 코드를 다 훑어봅니다. 특히 언어나 프레임웍이 생소한 경우에 그렇죠. 지난번엔 그동안 한번도 안한 ajax, jquery등을 리드해서 코딩했는데, 처음 일주일간 아무것도 안하고 경쟁사 코드만 봤습니다. 그러고나니 대략 아키텍춰를 어떻게 해야할지 감이 잡히더군요.. 오픈소스니까 경쟁사라도 그럴땐 서로 도움이 되는거죠. ㅎㅎ

      학교에서 공부할때도 마찬가지일겁니다. 이론도 필요하지만 막상 코드와 돌아가는 것 매칭 시켜보면서 배우는것 만큼 효과적인게 없습니다.

      그리고 오픈소스 코드를 배우는 것 이상 중요한게, 오픈소스로 어떤 툴, 언어, 프레임웍이 나와있나를 아는게 중요합니다. 나중에 큰 시스템 만들때도 결국은 그런 툴을 조합하면서 빈 공간만 코딩하는게 일반적이니까요..

  2. 좋은 글 잘 읽었습니다. 저는 디자인 전공중인 학생인데, 예전에 너드의 코드 읽고 감명받아서 (!) 다른 글도 잘 읽어보고 있어요. ^ ^

  3. 핑백: 해커와 화가 | lifeplayer

  4. 해커와 화가 이글로 시작해서 블로그에 있는 글 전부 읽었습니다. 너무 재밌습니다ㅋㅋ
    게다가 제 학교 저희과 선배 이시군요 저도 미국에서 프로그래머로 취업하고 싶네요~

  5. 철학을 전공하지만 세상 여러분야에 관심이 많은 학생입니다. 생계수단이 아닌 단지 코딩 그 자체에 매력을 가지고 느리지만 묵묵히 나아가던중에 이 글을 보고 많은 감명을 받고갑니다! 이런 좋은글을 볼수있게 해주셔서 감사합니다~!

    • 네. 이번에 유럽에 여행을 다녀오면서 그림을 참 많이 봤는데 해커와 미술가가 닮았단 생각을 더 많이하게 됐습니다.

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중