프로그래밍의 원리를 알려주는 책 – SICP

By | 2007년 10월 22일
안윤호 님의 글을 보면 조엘 스폴스키(Joel Spolsky)가 SICP에 대해 불평하다 재평가했다는 얘길 하고 있죠. 그런데 최근 번역서가 나온 조엘의 『Smart and Gets Thing Done』에서도 SICP를 다시 거론하고 있네요. ^^ 조엘은 이력서 선별 기준으로 “컴퓨터에 열정을 갖고 프로그래밍을 정말 좋아한다는 뚜렷한 증거를 찾으려 애쓰며…. 그런 판단의 근거” 중 하나로

컴퓨터 프로그램의 구조와 해석을 읽고 진한 감동을 받아서 눈물까지 흘렸다는 내용을 자기소개서에 서사적으로 기술한 사람은 진정 프로그램을 이해하는 마니아임에 틀림없다.

라고 쓰고 있습니다.

내친김에 국내에서 SICP를 이미 원서로 읽고 글을 올리신 분들을 찾아봤습니다.

마법사 하르 님은 “상당히 인상 깊은 교재였다”며 “컴퓨터에 대해 서술하거나 언어의 문법에 대해 이야기하기보다는 문제를 먼저 제시하고 해당 문제를 프로그램 로직으로 어떻게 해결하는지를 서술하는 형태로 구성이 되어 있고, 문제의 경우도 해당 분야에 대한 기초적인 이해가 있어야 쉽게 이해할 수 있는 것들이 많았었다.”라고 소개하고 있습니다. 마법사 하르님은 SICP를 감수하신 이광근 교수님의 제자이셨나 봅니다.

아겔 님의 글은 책 소개는 아니지만 ‘마법사 찬가’라는 글에서 SICP를 “ SICP란 책의 표지에는 마법사가 그려져 있다. 책의 내용은 “structure and interpretation of computer programs”란 제목처럼 컴퓨터프로그램에 대한 기초(그렇다고 어느 시점엔가 잊어버릴 그런 무의미한 ‘기초’가 아니라 프로그램을 작성한다면 언제나 잊지 말아야할 기초로서.)를 설명하는 책이다.”라고 소개하고 있습니다.

안윤호 님은 또 다른 글 ‘LISP을 다시 살펴보는 이유’에서 “MIT의 SICP 과정은 컴퓨터 교육에 새로운 이정표를 만들어 처음의 몇 년 동안 대단히 성공적이었다. 책은 정말 잘 만들어진 교재”라는 글을 올려주셨네요.

칭찬 일색이라구요? 뭐… 내용은 독자 분들이 판단하시는 거고, 여기에 올리는 글들은 출판사의 홍보 글이니 그러려니 하고 봐주시길….. ^^

사용자 삽입 이미지

지난 토요일(20일) 저녁 따끈따끈한 책이 출판사에 도착했습니다. 그동안 많은 분이 SICP에 관심이 있었지만 영어의 장벽과 만만치 않다고 알려진 내용으로 인해 쉽게 접근하지 못하셨을 텐데, 역자분들이 지난 5년 간 흘린 땀방울이 많은 도움이 되었으면 좋겠네요.

아래는 꼼꼼히 원고를 손봐 주신 이광근 교수님께서 써주신 ‘감수의 글‘입니다.

SICP를 감수하고 – 이광근(서울대 컴퓨터 공학부 교수)

Structure and Interpretation of Computer Programs“. 이 책을 처음 접한 것이 1987년 가을이었습니다. 제가 대학원 과정을 막 시작할 때였습니다. 재미있었고 놀라웠고 많은 것을 깨우쳐 주었습니다. 그리고 지금은 너무나 유명해진 책이 되었습니다. 전 세계 유수의 많은 대학교에서 이 책을 사용해서 강의하고 있습니다.

이 책을 통해서 우리들은 소프트웨어 제작의 기본 원리, 구성 요소, 프로그래밍 미학 등을 습득하게 됩니다. 그래서 소프트웨어 시스템의 복잡한 모습을 손쉽게 다룰 수 있는 능력과 자신감을 익히게 됩니다. 그리고 컴퓨터라는 도구가 소프트웨어를 자동으로 실행시키는 원리를 익히게 됩니다.

특히 이 책은 위의 내용에 우리가 쉽게 집중할 수 있도록 꾸며져 있습니다. 실습언어로 Scheme이라는 매우 간단한 언어를 사용하기 때문입니다. Scheme은 비록 널리 사용되는 프로그래밍 언어는 아니지만, 실습언어를 익히느라 정작 배워야 할 것을 소홀히 하는 문제점이 없도록 하는 데 탁월한 효과를 냅니다. 독자들은 오직 어떻게 소프트웨어를 기획하고 구현하는지에 집중할 수 있게 됩니다.

원리를 단단히 익힌 사람은 방편에만 능한 손재주를 쉽게 능가합니다. 글로벌 선두를 차지하는 인력 풀은 이제는 기술흐름의 핵심을 맛본 사람들로 구성될 것인 바, 원리를 단단히 파악하지 못하는 교과 내용은 그런 인력의 저변을 두텁게 하는 데는 바람직하지 않습니다.

제가 1995년도에 귀국 후 대학에서 강의를 맡으면서, 기회만 되면 학부 학생들에게 이 책을 소개하고 교재로 채택해 왔습니다. 저는 ‘시스템 프로그래밍’이라는 기존의 강의에서 ‘프로그래밍의 원리’라는 새로운 강좌를 만들면서(서울대와 KAIST에서) 이 책을 교재로 쓰고 있습니다.

이제 비로소 번역본이 나왔습니다. 너무 늦었습니다. 하지만 쉽고 부드럽게 번역해 보려는 번역자들의 노력이 많이 배어있습니다. 전문 용어를 정확히 이해하고 그 의미가 쉽게 전달되는 말을 찾으려고 했고, 이때 지레 ‘겁먹게 하는’ 용어(불필요한 한문)를 피하고, 될 수 있으면 쉬운 말을 찾았습니다. 우리말, 한자어, 외래어를 따지지 않고, 번역할 전문 용어의 내용을 가장 잘 전달하는 쉬운 말을 찾아 낸 모습이 곳곳에 배어있습니다.

아무쪼록 이 번역본이 쉽고 널리 읽혔으면 하는 바램 입니다. 그래서 관심 있는 청소년들이나 이제 막 전공을 시작한 대학생들이 즐겁고 유익하게 만나는 책이 되기를 바랍니다.

.

10 thoughts on “프로그래밍의 원리를 알려주는 책 – SICP

  1. 열이아빠

    SICP 라는 제목그대로인줄 알고 조금 헤메었습니다.
    아직 모든 서점에서 판매되는건 아닌가 보네요.
    11월 예매리스트에 올려놓아야 겠습니다.

    Reply
    1. 인사이트

      앗! 그렇군요. 인터넷 서점 쪽에 원서 제목 Structure and Interpretation of Computer Programs 2/E, SICP가 같이 검색될 수 있도록 요청해 놓겠습니다.
      감사합니다.

      Reply
  2. Pingback: Extremely Agile

  3. 블루어

    강컴에 예약해서 드디어 오늘(정확히는 어제네요) 받았습니다.
    가슴이 설레이는군요.
    묵직한 모습의 책을 보니, 벌써 뿌듯해집니다.

    이렇게 좋은 책을 내놓은 인사이트에 감사드립니다.

    앞으로도 더욱 더 좋은 프로그래밍 서적을 출판해 주시길 진심으로 부탁드립니다. ^^

    Reply
  4. Pingback: 마법사 하르의 엉망진창 실험실

  5. Pingback: Extremely Agile

  6. Pingback: Extremely Agile

  7. allmue

    여기 달아도 되는지 모르지만…^^; 컴퓨터 프로그램의 구조와 해석이 2009년에 반양장으로 나온 것이 있더군요….이건 2권짜리…. 이걸 사야하는지 아니면 2007년에 출간된 한권짜리를 사야하는지…. 어떤 차이가 있는지 알려주세요^^

    Reply
    1. 너굴;

      안녕하세요 allmue 님. ^^
      SICP 양장과 반양장의 내용은 똑같습니다.
      사무실이나 학교에 두고 읽으실 땐 양장도 괜찮을테고, 들고 다니며 읽으실 땐 아무래도 반양장이 편하겠네요. ^^

      Reply
  8. Pingback: geekinside's me2DAY

댓글 남기기