반응형
죽음의 행진이라는 책을 읽었습니다. 부제는 문제 프로젝트에서 살아남는 법입니다. 비정상적인 프로젝트에 대한 이야기를 다루고 있다는 점에서, 이 책은 현실적으로 다가왔습니다. 문제 프로젝트를 처음부터 맡지 않는 게 가장 좋은 대안이겠지만, 문제 프로젝트에 어쩔 도리 없이 참여하게 될 경우 어떤 조치가 도움이 되는지 여러 장에 걸쳐 소개합니다. 우선순위 결정이나, 일을 중요도와 긴급도를 통해 4가지 영역으로 구분하는 일은 일상생활에서 사용하기도 유용한 전략이라고 생각합니다. 기술적인 문제가 아니라 다른 정치, 사회적 문제가 문제 프로젝트에 위기를 가져온다는 이야기를 읽으면서, 문제의 중심은 사람이며 팀의 동기 부여 여부나 사기가 프로젝트에 중요하다는데 공감했습니다.
죽음의 행진(문제 프로젝트에서 살아남는 법)
카테고리 경제/경영
지은이 에드워드 요든 (소동, 2005년)
상세보기


반응형
반응형
프로그래밍 심리학(원서명:The Psychology of Computer Programming, POCP)을 읽었습니다. 이 책은 25주년 기념판이 번역된 것인데요, 제랄드 M. 와인버그가 기념판을 펴낼 때 원서 자체에서 내용을 덧붙이는 형태로 펴냈기 때문에 예제로 사용되었던 PL/1이나 APL 언어들을 볼 수 있습니다.
지금으로서는 찾아 보기 힘든 천공카드에 대해 얽힌 이야기라거나, 실행시켜볼 코드를 보내놓고 회송시간을 기다린다거나 하는 이야기들이 있어서 이 책을 읽는게 지금에 와서 무슨 소용일까라고 생각할 수도 있습니다. 그러나 책을 보면, 과거의 프로그래머들이 해 왔던 고민들이나 어려움들이 현재의 기술도구로 해결되지 않는 부분이 상당함을 알 수 있습니다.
저자는 각 장에 후기를 보태며, 자신이 전에 펴냈던 내용에 대한 아쉬움을 밝히거나, 기저에 깔려 있던 이야기들을 고백하고 있습니다. 어쩌면 딱딱하게 보일 수 있는 주제임에도, 책 중간에 곁들여지는 제랄드 M. 와인버그의 유머는 그런 긴장을 풀어줍니다.
쓰는 사람의 내공이 나타나는 책을 읽을 때마다, 저자의 생각을 이렇게 먼 거리에서 책이라는 매개체로 나눌 수 있다는 점이 독자로서 느낄 수 있는 큰 행복입니다. 관리자, 프로그래머, 테스터 등 소프트웨어 관련 업계에서 일하고 계신 분이라면, 자신이 평소에 유지하던 "프로그래밍"이라는 행위에 대한 생각의 외연을 넓힐 수 있는 기회라고 생각합니다.

프로그래밍 심리학(프로그램 프로그래밍 프로그래머 4) 상세보기
제랄드 M. 와인버그 지음 | 인사이트 펴냄
프로그래밍도 사람이 하는 일이다! '프로그램 프로그래밍 프로그래머' 시리즈, 제4권 『프로그래밍 심리학』. '프로그래밍도 사람이 하는 일'이라는 당연하지만 현실에서는 인정받지 못하는 문제 인식을 바탕으로 저술된 것이다. 이 책은 프로그래밍을 둘러싼 여러 영역의 사람들이 가지는 마음의 이치를 다루고 있다. '인간 행위로 보는 프로그래밍', '사회 활동으로 보는 프로그래밍', '개인 행위로 보는 프로그래밍' 등으로
반응형
반응형
(우리가 미처 알지 못한) 소프트웨어 공학의 사실과 오해(원서명: Facts and Allacies of Software Engineering)을 주변에서 추천해 주셔서, 읽게 되었습니다. 소프트웨어 컨플릭트 2.0의 저자이기도 한 로버트 L.글래스가 지은 책입니다. 책은 사실 55가지와 오해 5+5가지를 다루고 있습니다. [각주:1]

제일 감명 깊게 읽은 곳은 오해의 마지막 부분입니다. 교육에 관련된 오해인데요. 저도 처음에 프로그래밍 언어를 배울 때나, 아니면 특정한 프로그래밍 언어를 가르쳐 주는 책을 볼 때면 이런 이런 문법을 설명해 줍니다. 그 다음에 연습문제로 이런 이런 코드를 짜 보라고 하죠. 이렇게 많은 책에서 설명하고 있기 때문에, 그렇게 프로그래밍 언어를 학습하는 일이 당연한 것처럼 느꼈습니다. 우리가 어떤 언어를 학습할 때에 쓰기는 가장 끝 부분에 배웁니다. 읽는 법을 알아야, 쓰고 나서라도 자신이 쓴 문장을 읽는 일이 가능합니다. 그런데 프로그래밍 언어를 가르치는 쪽의 경우에, "코드 읽기"라는 부분에 대해 관심도가 떨어진다는 느낌이 듭니다. "코드 읽기"는 다른 사람이 썼던 코드를 인수받아야 할 경우나, 아니면 자신이 몇 달 전에 작성했던 코드를 분석할 때와 같이 쓸 일이 있음에도 말이죠.

이 책에서는 각각의 사실 또는 오해에 대해 "토의-논쟁-출처-참고문헌"의 구조로 짜임새 있게 이루어져서 자신이 관심있는 사실 또는 오해를 더 탐구할 수 있도록 열어두고 있습니다. 특히 오해 부분에서는 이 오해들을 읽더라도 화를 내지 말 것을 주문하는 문장이 기억에 남았습니다. 소프트웨어 부문의 문제를 지적하고, 설명하며, 문제를 보는 새로운 관점을 건넨다는 점에서 유용한 책이라고 생각합니다.
  1. 10을 굳이 5+5로 풀어 쓴 이유는 Fifty Five, Five + Five 처럼 F의 반복을 통해 저자가 책을 멋지게 보이려고 한 노력입니다. 자세한 내용은 책의 서론을 참고하시기 바랍니다. [본문으로]
반응형
반응형
노란 표지에 큼지막한 글씨의 "Are your lights on?"의 번역서가 2006년에 나왔더군요. 번역서 제목은 "대체 뭐가 문제야?"입니다. 이 책의 저자는 컨설팅의 비밀를 쓰신 제랄드 와인버그 씨가 공동 저자로 참여한 책인데요. 간단히 말하면 "문제"에 대한 책입니다. 책은 가벼워서, 들고 다니며 읽기에 좋습니다.

우리는 일상에서 늘 문제와 접하고 있습니다. 그러나 우리가 문제 자체에 대해 깊게 생각하는 일은 쉽지 않습니다. 왜냐하면 우리는 문제를 풀기에도 바쁘기(또는 바쁜 것처럼) 느껴지기 때문입니다. 이 책은 우리에게 "무엇이 문제인가?"라는 질문을 던짐으로써, "문제"에 대해 넓은 시각을 획득하게 합니다.

책의 각 장이 모두 주옥같은 교훈을 담고 있지만, 가장 마음에 들었던 장은 폴란드에 있는 할머니를 만나려 하는 여자 분의 이야기가 담긴 장이었습니다. (몇 장인지는 정확히 기억이 나지 않네요.) 제일 감동적이었고, 도움이 많이 되는 장이었죠.

이 책 또한 컨설팅의 비밀처럼, 이야기를 통해 글의 전개를 풀어 나가는 방식을 취하고 있습니다. 그래서 책 내부에는 이야기와 관련된 익살스런 삽화들이 수록되어 있죠. 그래서 책을 읽는 내내 즐거운 이야기를 듣는다는 마음으로 읽을 수 있었죠. 문제와 마주치는 사람 누구든 한 번 읽어 보실 것을 권하고 싶은 책입니다.
대체 뭐가 문제야 상세보기
도널드 고즈 , 제랄드 와인버그 지음 | 인사이트 펴냄
문제 해결에 관한 창의적 사고를 길러주는 6가지 질문. 이 책은 복잡한 문제 해결과정일수록 해결보다 문제 정의가 중요함을 일깨워준다. 저자는무엇이 문제인지를 먼저 인식하고 그것을 분명하게 정의하는 것이 진정한 문제 해결능력이며 창의적 문제 해결의 기본임을 설명한다. 그리고 주인공들의 일화를 통해 이 책이 제시하는 6가지 질문에서 해결해야 할 문제가 무엇인지 알려주고, 문제해결 상황에서 맞닥뜨리는 수많은 난관

반응형
반응형

1.1-1 정렬 문제가 발생하는 현실 세계의 사례에는 사전 표제어 들이 멋대로 흩어진 데이터에서 국어같으면 ㄱ, ㄴ, ㄷ..  순으로 정렬해야 하고, ㄱ 내부에서는 ㅏ, ㅑ, ㅓ.. 순으로 정렬해야 하는 문제가 발생한다. 영어사전이라면 맨 처음 글자를 a, b, c .. 순으로 정렬하고 바로 다음 글자도 앞과 같은 순으로 정렬해야 하는 문제가 발생한다.

1.1-2 속도 외에 효율성을 평가할 만한 다른 척도에는 소모하는 메모리 공간, 알고리즘이 요구하는 통신 대역, 알고리즘이 요구하는 하드웨어 자원 등이다.

1.1-3 자료구조
연결리스트  장점은 자료의 추가와 삭제가 빠르다. 단점은 특정 데이터를 찾으려고 할 때 순차적으로 찾아야 하므로, 느리다.

1.1-4 최단 경로 문제와 순회 판매원 문제는 거리를 계산하고, 짧은 경로를 목적으로 한다는 점이 비슷하다. 다른 점은 최단 경로 문제는 출발지에서 목적지로 가는 경우이지만, 순회 판매원 문제는 물건을 여러 지점에서 판매하고 다시 원래 지점으로 돌아온다는 점이 있다. 최단 경로 문제는 효율적 해결 방법이 있으나, 순회 판매원 문제는 어느 정도 좋은(최적의 알고리즘은 아닌) 해결 방법이 있다.

1.1-5 최적의 해만이 의미 있는 문제: 전자 상거래에서 보호가 필요한 정보를 안전하게 관리하는 알고리즘
근접한 해를 구해도 충분한 문제: 인터넷에서 특정 정보가 있는 페이지를 검색하는 알고리즘

이 글은 스프링노트에서 작성되었습니다.

반응형

+ Recent posts