반응형

책소개

“소프트웨어 개발이라는 긴 여로의 시작, 생각하는 프로그래머의 길은 어떻게 가야 하는가.”

『실용주의 프로그래머』가 숙련된 프로그래머에서 마스터로 가는 깊은 통찰을 전해줬다면 이 책은 견습 프로그래머가 숙련 프로그래머로 성장하는 길을 안내하는 지침서다.

흔히 프로그래밍을 공부하면서 진지한 고민 없이 인기 있는 언어를 선택하고, 개발에 몸담은 햇수를 기준으로 앞길을 결정하고는 한다. 

『프로그래머의 길, 멘토에게 묻다』는 당신이 소프트웨어 개발 분야에서 경력의 시작을 설계하고 이 분야에서 탁월한 개발자가 될 수 있도록 자기 자신을 세우는 일에 관한 책이다.

프로그래밍을 생업으로 삼으며 견습이라고 부를 만한 시기에 어떻게 행동해야 이상적인 길을 걸을 수 있을지, 정말로 제대로 배우려면 어떤 마음가짐이어야 하는지, 커뮤니티를 어떻게 활용해야 내게 도움이 되는지 등 구체적인 상황과 해결책을 멘토의 조언을 빌어 제시한다. 

//구매동기.
“소프트웨어 개발이라는 긴 여로의 시작, 생각하는 프로그래머의 길은 어떻게 가야 하는가.”

위에 문구가 마음에 들었다. 개발, 긴 여로, 시작, 생각, 프로그래머, 길 내가 좋아하는 단어들이다.
그 중에 가장 마음에 드는 단어는 프로그래머. 요즘에는 흔히 개발자라고 많이 부른다.
프로그래밍이 재미 있었고 프로그래머란 직업을 동경했다.
그러던 사이 나도 자연스럽게 프로그래밍을 생업으로 삼으며 살아가는 "개발자"가 되어버렸다.
그리고 애초 생각하고 꿈꾸었던 길과는 다른 길을 걷게 되고 고민도 하면서
그저 주저앉아 버렸는지 모르겠다. 이 책을 구매한 동기도 조언을 듣고 싶어서이다.
나에게도 멘토가 있었으면 한다. 소통을 나눌수 있는 멘토.꿈을 이야기 하는 멘토.
부족한 실력으로 꿈을 이야기 하기엔 한국엔 실력있는(?)분들의 질타가 많다.
한국에서 프로그래머의 길은 어떻게 가야하는가? 그 길을 엿볼수 있는 책 이였으면 좋겠다.

반응형

출판사 서평
프로그래밍을 할 때 기계적이거나 수동적인 태도를 가지고 있지는 않은가? 필요한 기능이 동작할 정도의 상태만 되면 할 일이 끝났다고 여겨오지는 않았는가? 드러난 버그만 수정한 후에 코드를 내버려 두지는 않았는가? 이는 프로그래머의 올바른 자세가 아니다. 적극적인 태도로 조금만 더 생각하면 여러분의 프로그램을 더 우아하게 만들 수 있다. 같은 일을 더 짧은 코드로 더 멋지게 처리할 수 있다. 그리고 이렇게 프로그램의 질이 향상되는 것에 그치는 것이 아니라, 다시금 프로그래밍의 재미를 느낄 수 있을 것이다.
그러나 단순히 API 사용법을 익히는 것을 넘어서 깊은 생각을 통해 프로그램을 향상시키는 것이 쉽지는 않다. 어떻게 접근해야 하는지 그 방법 자체가 어려울 수 있다. 이런 어려움을 겪는 사람에게 생각하는 프로그래밍(원제:Programming Pearls) 은 프로그래머로서 진일보하는 초석이 될 것이다. 물고기를 잡아 주기보다는, 낚시하는 방법을 가르친다 라는 진부한 표현처럼, 생각하는 프로그래밍 은 읽는 이에게 생각하는 방법을 알려준다. 보통의 알고리즘 책과는 달리, 여러 알고리즘과 데이터 구조를 장황하게 나열하기보다는, 몇 개의 간단한 알고리즘 및 데이터 구조를 통해 생각하는 방법의 전형을 보여준다.

전부터 목록에 넣어놓고 정작 구매하지 않았던 책이다. 서평도 좋고 다른 책을 구매하면서 같이 구매했다.

이 책 또한 출퇴근 길에 틈틈히 읽을 생각이다. 책을 읽고 난 후에 서평을 남기도록 하겠다. ^^

아직 제대로 된 서평하나 쓸줄 모른다는 ^^;  책을 읽을때 잘 생각하고 느낌을 기록해서 제대로 함 써봐야 겠다.

// 2009.06.02  1차서평..
프로그래밍을 하면서 어떠한 도움을 얻기를 바라며 많은 기대를 가지고 읽기 시작했던 책 입니다.
물론 어려운 책이라는 생각은 안하고 지하철에서 틈틈히 읽어가며 줄을 긋고 생각을 정리하며
나름대로의 방법을 동원하여 머리에 새겨가면서 읽은 책입니다.
초반의 계획과는 달리 한번 읽는데도 오래 걸린것 같습니다.
읽어보았다고 하기보다는 훑어 보았다는것이 맞을꺼 같습니다. 내용이 저에게는 어려웠습니다.
책에 나오는 알고리즘에 대한 부분은 학창시절 배웠던 것들이었지만 오랫만에 보니 생소한 느낌^^;;
그리고 기타 연습문제들 절때 쉽지 않습니다.(주관적으로 저한테는..) 챵피합니다. ㅡㅡ;
단순히 읽어서 끝날 책이 아니라 말 그대로 생각하면서 읽어야 됩니다.
두뇌 프로세서를 최대한 가동하여 시뮬레이션 돌리고 예측하고 결과를 내야합니다.
그리고 설명또한 쉽지 않습니다. 사용 어구들이 전문적인 느낌이 많아 어렵게 느껴졌습니다.
무슨 이론에 대해 언급이 나오는데 짧은 지식으로 무엇인지 모르는것이 많아 어렵게 느껴진듯..
그래도 책에 나오는 내용은 본질은 꽤 도움이 되었습니다. 어떠한 측면에서 생각해야 하는가에 대한
프로그래밍시에 퍼포먼스와 메모리 사이의 트레이드오프 관계라던가 그 프로그래밍이 구현 목적
구동환경등.. 어떠한 측면이 더욱 고려되어야 하는가에 따른 프로그래밍이 되겠지요...
프로그래밍은 각 상황에 따라 그 구현이라던가 성능에 대한 설계 자체가 틀려지게 될테니까요.
학창시절 임베디드 관련 프로젝트에 참가했던 적이 있습니다.
그 당시의 코딩스타일이랄까.. 리소스에 대한 관점에서 변수 선언위치나 비교 그리고 어셈단까지
생각해서 코딩을 하던 습관이 아주~~아주~~ 약간 베어있던적이 있었습니다.
그후 시스템쪽이 아닌 고급언어 쪽으로 코딩하면서도 그런 것들을 생각하면서 고뇌할때..
옆에서 보시던 선배가 고급언어 코딩을 하면서 저급언어 코딩할때 처럼 한다고 했던적이..
나름대로 최적의 코딩을 한다고 했는데 그 환경에 비해 아주아주 미세한 퍼포먼스때문에
별 상관없는 부분까지 신경을 쓰는것 같이 되었습니다.  좀 오버했던것인듯..^^
므튼 이런 이야기가 상관이 없을수도 있지만 상황에 맞는 효율성을 찾는게 중요하다는 요지.
기계적인 코드를 작성하지 말고 좀 더 생각하는 프로그래밍을 하자!! 요지는 이것인듯 합니다.
뭐 대충 이런 본질이라 생각하고 책을 덮었지만... 그 내용을 아직 제대로 이해하진 못했습니다.
이 책또한 다음을 기약하며 시간을 두고 생각하며 고뇌하며 읽어야 제대로 이해될듯 합니다.
아직 부족한 저에게는 어려운 책인것으로 일단락 지으려 합니다. ^^


+ Recent posts