이전

리뷰 (3)

한줄평
평점 분포
  • 리뷰 총점10 33%
  • 리뷰 총점8 67%
  • 리뷰 총점6 0%
  • 리뷰 총점4 0%
  • 리뷰 총점2 0%
연령대별 평균 점수
  • 10대 0.0
  • 20대 0.0
  • 30대 0.0
  • 40대 9.0
  • 50대 8.0
리뷰 총점 종이책
철학을 담은 소프트웨어 에세이
"철학을 담은 소프트웨어 에세이" 내용보기
미국에서 현업 프로그래머로 활동하고 있는 임백준이 쓴 을 읽었습니다. 저자 임백준에게 이 책은 벌써 세 번째입니다. 전에 낸 두 권의 책이 제법 인기를 끌었던 것 같습니다. 저는 읽어보지 못했습니다만, 이 책을 다 읽고난 지금, 그 두 권의 책도 마저 읽고 싶습니다. 저자는 삼성SDS와 루슨트 테크놀로지를 거쳐, 지금은 뉴욕의 한 금융회사에서 프로그래머로 일하고 있습니다.
"철학을 담은 소프트웨어 에세이" 내용보기
미국에서 현업 프로그래머로 활동하고 있는 임백준이 쓴 <임백준의 소프트웨어 산책>을 읽었습니다. 저자 임백준에게 이 책은 벌써 세 번째입니다. 전에 낸 두 권의 책이 제법 인기를 끌었던 것 같습니다. 저는 읽어보지 못했습니다만, 이 책을 다 읽고난 지금, 그 두 권의 책도 마저 읽고 싶습니다. 저자는 삼성SDS와 루슨트 테크놀로지를 거쳐, 지금은 뉴욕의 한 금융회사에서 프로그래머로 일하고 있습니다. 미국에서 석사공부를 마치고 잠깐 한국에 들어왔다가 아르바이트 삼아 구직광고를 낸 적이 있는데, 미국으로 다시 간 이후에도 그 내용이 남아있어 한국의 모 출판사로부터 번역 제의를 받았다고 합니다. 그것이 프로그래밍 서적 번역과 직접 집필까지 하게 된 계기였다고 합니다. 대개 프로그래머라고 하면 글쓰기와는 전혀 무관한 직종의 사람처럼 보입니다. 혹시 기술서를 쓰더라도 기술적인 내용만 다룰 뿐입니다. 제 경험으로는 우리나라에서 아직 글 잘 쓰는 프로그래머를 본 적이 없는 것 같습니다. 그런 면에서 이 저자는 예외입니다. 10년 이상의 프로그래밍 경력을 가진 현업 프로그래머로서, 그의 지식과 경험을 쉽게 풀어내는 능력이 돋보입니다. 전문가들도 이제는 글쓰기를 잘해야 자기 분야에서도 인정을 받고 대중과도 소통할 수 있는 스타가 될 수 있습니다. <나의 문화유산 답사기>의 유홍준, <과학콘서트>의 정재승, <영혼이 있는 승부>의 안철수 등이 그러합니다. 그 외에도 화가 김병종, 한젬마, 김점선 씨와 건축가 김진애, 서울법대 안경환 교수나 생명과학부의 최재천 교수도 필력을 갖춘 전문가들입니다. 최재천 교수는 지난달 한겨레21에 "글 못 쓰는 이공계, 보따리 싸라"라는 글을 실은 적이 있습니다. 과학분야일수록 실제 글쓰기가 더 필요하다는 그의 주장에 충분히 공감이 갔습니다. <임백준의 소프트웨어 산책>은 프로그래머라면 지겹도록 들었을법한 객체지향과 디자인 패턴, 리팩토링, 소프트웨어 공학, XML에 대한 이야기입니다. 소설도 한 편 실려있습니다. 문학적 완성도에 대해서는 제가 평가할 수 없는 영역이지만, 실력 있는 프로그래머를 채용하기 위한 구글(goole)의 광고를 모티프로 한 그의 글에는 프로그래머만이 느낄 수 있는 경험들을 잘 녹아 있습니다. 저는 현업 프로그래머도 아니고 전직 프로그래머도 아닙니다. 다만 몇 년 전부터 프로그래머와 함께 일할 기회가 많았던, 굳이 분류하자면 기획자에 가깝습니다. 그런 제 입장에서 봤을 때, (전체가 모두 재미있었지만) <소프트웨어 공학>을 다룬 4장을 특히 관심 있게 읽었습니다. 이 장에서는 소프트웨어 프로젝트 관리 방법론 중의 하나인 '애자일(agile)' 방법론과 애자일 철학을 가장 충실히 구현한 XP(eXtreme Programming)에 관한 이야기를 주로 다루고 있습니다. '개발자와 사용자의 직접적이고 지속적인 의사소통'을 강조하는 이 방법론은, 짧은 제 경험으로 볼 때도 가장 명쾌하고 '현실적'인 방법론이라는 생각이 들었습니다. 기계 설비 제조업에서 사용하는 프로젝트 관리 방법론을 본뜬, 일명 '폭포 모형'에서는 '요구사항 분석', '디자인', '구현', '테스트'라는 일련의 단계가 있습니다. 이 과정은 순차적이며 '부득이한 경우'에 한해 앞 단계로의 피드백이 진행됩니다. 이런 과정에서는 소프트웨어가 최종적으로 완성되었을 때, 만약 사용자(클라이언트)가 기능상의 결함이나 빠진 부분을 발견한다 하더라도 그것이 제품에 반영할 기회가 원천 봉쇄됩니다. 위와 같은 경험을 한 번이라도 해 보신 분들은, 저자의 다음 말에 뼛속까지 공감합니다. "사용자의 요구사항이 수시로 '변경'되는 것은 그들의 남다른 변덕이나 악의적인 의도를 가지고 있기 때문이 아니다. 자본주의 경제 시스템에서 시장의 요구와 비즈니스의 방향이 수시로 변화하는 것은 너무나 자연스러운 일이기 때문에 한 번 합의된 사용자의 요구사항이 영원히 고정되어 있을 것이라고 믿는 것은 터무니없는 착각이다. 만인의 합의하에 확정된 요구사항이라도 시장의 변화로 인해서 달라져야 한다면, 그것은 달라져야 한다. 어제의 요구사항에 기초해서 이미 소프트웨어를 설계하고 구현까지 마쳤기 때문에 요구사항이 고정되어 있어야 한다고 주장하는 것은 비현실적인 독선이다."(p.128) 이와 같은 철학이 바탕된 소프트웨어 관리 방법론 중 대표적인 것이 XP입니다(Windows XP가 아닙니다^^). "XP는 소프트웨어 프로젝트를 네 가지 근본적인 방식으로 개선한다. 그 네 가지란 의사소통, 단순성, 피드백, 그리고 용기를 의미한다. XP 프로그래머는 사용자 그리고 동료 프로그래머들과 의사소통을 한다. 그들은 설계를 매우 단순하고 깔끔하게 유지한다. 그들은 그들이 작성한 소프트웨어를 첫날부터 테스트하고 피드백을 구한다. 그들은 사용자에게 시스템을 최대한 일찍 전달하고 사용자들이 제안하는 방식에 따라서 수정한다. XP 프로그래머들은 이러한 내용에 기초해서 요구사항의 변경과 새로운 테크놀로지에 용감하게 대처할 수 있다." (www.extremeprogramming.org) 이 책에서 저는 처음으로 XP 방법론과 페어 프로그래밍(pair programming), 테스트 중심 개발 기법(TDD;Test Driven Development)을 알았습니다. 두 사람이 하나의 컴퓨터 앞에서 일한다는 페어 프로그래밍은 상식을 깨뜨립니다. 뿐만 아니라 리팩토링과 디자인 패턴에 대해서도, 단순의 그 말의 표면적인 뜻이 아니라, 그 속에 담긴 철학을 알 수 있었습니다. 현업 프로그래머로서 프로그래밍의 역사와 최신 기술 지식을 쉽게 풀어낼 뿐만 아니라, 그 이면에 담긴 '철학'을 끄집어 내어 널리 이해시킬 수 있다는 점에서 저자의 능력은 탁월합니다. 소프트웨어(개발)라는 전문 지식과 글쓰기가 조화를 이룬 에세이는 처음 읽었습니다. 기분 좋은 경험이었습니다. 저자의 전작 두 편도 꼭 읽어봐야겠습니다.
n******8 2005.06.13. 신고 공감 13 댓글 0
리뷰 총점 종이책
프로그래머는 자신만의 철학이 있어야 한다.
"프로그래머는 자신만의 철학이 있어야 한다." 내용보기
임백준씨의 책은 이번이 두번째이다. 처음엔 ''나는 프로그래머다''라는 임백준씨와 여러저자가 쓴 책을 읽었는데 임백준씨가 쓴 부분에서 깊은 사고를 했다. 다른 전문적인 서적과는 다르게 프로그래머의 세계와 생각들을 들을 수 있었다. 앞으로 프로그래머가 되기 위해 무엇을 해야 하고, 어떤 마음가짐을 가져야 할지 생각하게 했다. 난 개인적으로 프로그래머가 되기 위해서는 기술
"프로그래머는 자신만의 철학이 있어야 한다." 내용보기
임백준씨의 책은 이번이 두번째이다. 처음엔 ''나는 프로그래머다''라는 임백준씨와 여러저자가 쓴 책을 읽었는데 임백준씨가 쓴 부분에서 깊은 사고를 했다. 다른 전문적인 서적과는 다르게 프로그래머의 세계와 생각들을 들을 수 있었다. 앞으로 프로그래머가 되기 위해 무엇을 해야 하고, 어떤 마음가짐을 가져야 할지 생각하게 했다. 난 개인적으로 프로그래머가 되기 위해서는 기술적인 부분도 중요하지만 마음가짐이 가장 중요하다고 믿는 사람이다. 그래서 난 전공서적도 좋아하지만 이런 종류의 책들을 좋아한다. 프로그래밍은 과학이지만 철학이 없이는 이루어 질수 없는 과학이라 생각한다. 이 책은 크게 두 부분으로 이루어져있다. 이론적인 내용과 소설부분. 이론부분은 객체지향, 디자인 패턴, 리팩토링, 소프트웨어공학, XML. 이렇게 5가지 분야다. 각 분야 별로 간단한 정의와 역사, 그리고 어떻게 이용되며 앞으로의 전망에 대해서 서술했다. 아직 프로그래밍을 깊숙이 제대로 공부하지 않은 나로서는 상당히 괜찮았다.(가끔 나오는 CODE부분을 제외하고) 어디선가 한번 이상 들었을 5가지에 대해 설명해주니 평소의 궁금증이 해소 되었다. 내가 관심있게 본 부분은 평소 관심이 있던 소프트웨어공학분야이다. 관리자의 필요성과 역할이 상당히 굼금했는데 적절한 예로 이해를 도와주었다. 책의 마지막 부분에 있는 소설(프로그래머 K씨의 하루)은 정말 나에게 무언가를 이룰수 있는 동기가 되기에 충분했다. 사실 프로그래머라는 직업은 어렵고 가난하고 힘든 직업이다. 새로운 것이 계속 쏟아져 나오는 정보의 홍수 속에서 뒤쳐지지 않으려 무척 노력하고 공부하지만 그에 비해 보수는 너무 작다. 노력의 결실이 금전적인 것으로 보상된다는 생각이 정답은 아니지만 현실성을 생각하면 간과할 수없는 부분이기도 하다. 엄연히 프로그래머도 직업인데 무보수를 위해 일할수 있겠는가? 현실에 부딪혀 프로그래머의 길을 걷는 것을 포기하려고 한 나에게 임백준씨의 프로그래밍 철학은 용기를 주며 동시에 나를 부끄럽게 한다. 마지막 소설의 주인공인 K씨도 우리들과 비슷한 생각을 가진 사람일 것이다. 그가 하나의 문제를 두고 도전하고 쓰러져도 끝까지 노력하는 모습은 우리가 보고 배울 자세다. 프로그래밍을 공부하는 사람뿐만 아니라 모두 다 배워야 할 점이다. 프로그래머는 문제를 해결하는 사람이지 문제를 피하는 사람이 아니라고 했던가? 현실의 어려움을 극복하고 노력하며 문제를 해결하는 그 맛은 프로그래머만이 느낄수 있는 묘미라 할 것이다. 이 책을 보고 나면 내 가슴속 깊숙한 어딘가에서 무언가가 타오르는 것을 느낀다. 그것은 우리들 마음속에 현실이라는 거대한 벽 뒤에 숨겨진 열정이 아닐까? 프로그래머의 열정...
b*****h 2006.05.25. 신고 공감 1 댓글 0
리뷰 총점 종이책
역시나 흥미로웠던 그의 산책
"역시나 흥미로웠던 그의 산책" 내용보기
이전에 임백준씨의 책들을 감명깊게 읽었던지라 이번책도 큰 기대를 품고 읽게 되었습니다. 그의 철학에 녹아있는 이야기들은, 자신에 철학과 글에 대한 믿음이 절로 이해가 되는 책들이라 매우 와닿았었죠. 이번책의 내용은 소프트웨어 방법론에 대한 이야기였는데, UML, 리팩토링, XP, 디자인 패턴등 다양한 방법론에 대한 이야기를 듣고 관련 서적을 접해보았지만, 딱히 와닿지
"역시나 흥미로웠던 그의 산책" 내용보기
이전에 임백준씨의 책들을 감명깊게 읽었던지라 이번책도 큰 기대를 품고 읽게 되었습니다. 그의 철학에 녹아있는 이야기들은, 자신에 철학과 글에 대한 믿음이 절로 이해가 되는 책들이라 매우 와닿았었죠. 이번책의 내용은 소프트웨어 방법론에 대한 이야기였는데, UML, 리팩토링, XP, 디자인 패턴등 다양한 방법론에 대한 이야기를 듣고 관련 서적을 접해보았지만, 딱히 와닿지는 않았던게 사실입니다. 설계가 잘 되어진 프로그램이 더 좋게 나올것이라는 생각은 늘 가지고 있었지만, 과연 UML의 다이어 그램을 통해서 프로그램을 좋게 만들수 있을까? XP는? 리팩토링은?? 늘 의구심이 들었습니다. 예외로, 디자인 패턴은 그 활용 가치에 공감했지만 말이죠. 특히나 리팩토링의 경우는 더더욱이 그런 편이었는데, 임백준씨가 책안에 적어놓은 코드안에 철학은 진정한 객체지향으로 향해 가는 코드를 보였고, 의미없는 클래스와 객체의 남발에 대한 일침을 가했다고 봅니다. 책안에 UML에 대한 이야기는 없었지만, 결과적으로 소프트웨어 방법론에 대한 핵심적인 이야기를 들음으로해서, 그것들이 필요하고, 왜 필요한지에 대한 "동기부여"가 됨으로써 그 가치가 더 높았다고 생각합니다. 자칫하면 한동안 (언젠가는 필요로 했을지 모르지만) 장식품 역할을 할뻔한 소프트웨어 방법론 서적들에 필요성을 높여준 이번 책도 역시 임백준씨라는 생각이 드네요. 프로그래머 K씨의 하루의 경우는 시도는 좋았던것 같았지만, 본책의 페이지를 줄이며 등장할것이 아니고, 기본적인 내용이 일정 페이지수를 만족하며, 부가적인 요소로 삽입되었으면...하는 아쉬움이 있었지만 나쁘지 않았다고 생각합니다. 여전히 방법론에 회의적인 분들을 위해 이 책을 추천하며...

[인상깊은구절]
버그를 잡을때나 기능을 더할때 어디선가 냄새가 나는것 같으면 그곳으로 소매를 걷고 달려가서 소매를 걷고 뚝딱 리팩토링 하면된다. 리팩토링은 그런것이다. 평소엔 느끼지 못하지만 없으면 숨을 쉴수 없는 공기처럼 아무소리없이 프로그램으로 스며드는 그런 것이다.
l*****8 2005.11.22. 신고 공감 0 댓글 0