규도자 개발 블로그

프로그래머의 뇌 - 펠리너 헤르만스 (2021) 본문

Review/Book

프로그래머의 뇌 - 펠리너 헤르만스 (2021)

규도자 (gyudoza) 2022. 7. 18. 23:13

작년에 출판한 아주 따끈따끈한 책이다. 요즘 내가 포스팅에서 자주 언급하고 있는 인지과학적인 측면에서 프로그래밍 분야를 향해 제대로 발을 뻗어보는 책이라고 할 수 있겠다. 내가 그간 포스팅을 하면서 자주 인지과학적인 측면을 언급했는데

 

- 하나는 Elixir의 pipe 연산자( |> )가 사람이 글을 읽는 듯한 논리의 흐름을 프로그램에 그대로 녹여낼 수 있어서 가독성 좋은 코드를 작성하는 데 큰 이점이 있다는 점이었고,

- 또 하나는 폴 그레이엄의 해커와 화가에서 나온 "해커와 화가"라는 챕터에서 화가가 세상을 보고 해체하는 법과 해커가 세상이나 코드를 보고 해체하는 법이 일맥상통한다는 점이었다.

 

그동안 읽고 써왔던 것들이 이런 내용이었기 때문일까, 뭔가 자연스럽게 이 책에 관심이 생긴 것 같다.

 

 

이 감상문을 읽고 있는 사람이라면 무엇보다 이것이 궁금할 것이다. 과연 이 책은 귀중한 시간을 내어 볼만할 것인가. 나는 그렇다고 대답하겠다. 아주 단순히 말해서 책의 내용이 유익하고 재미있다. 특히 좋은 점은 저자의 경험에 의거한 일기 비스무리한 책이 아닌 철저하게 실험되고 검증된 통계를 기반으로 책의 내용들이 작성됐다는 것이다. 이렇게 실험하고 검증된 내용들 중에서는 초보 프로그래머와 숙련된 프로그래머의 인지에 대한 비교대조군 실험내용도 있다.

 이게 무슨 의미를 갖느냐, 마치 오랜시간동안 사람들이 최적의 경로로 다녀서 숲이나 들판에 걷기 좋은 길이 생기듯이, 숙련된 프로그래머들이 수많은 시행착오를 걸쳐서 얻게 된 코드를 읽고 파악하는 방법에 대한 사고의 편린을 볼 수 있다는 의미이다. 물론 이 책을 한 번 읽는다고 숙련된 프로그래머들의 뉴런 결합을 얻을 수 있을 거라고는 기대 말자. 하지만, but, nevertheless, 그럼에도 불구하고 최적의 경로를 어렴풋이 떠올릴 수 있는 것과 아예 백지부터 시작하는 것은 완성하는 그 속도가 다르다. 그리고 무엇보다 내가 코드를 읽고 파악하고 프로그램을 작성하는 과정이 검증된 고급 프로그래머들의 방향성과 일치하는지 확인해볼 수 있는 기회가 된다. 일치하지 않는다면 그것을 고칠 수 있는 기회로 살릴 수도 있다. 여러모로 도움이 된다는 얘기다.

 

 

다른 흥미로운 주제에 대한 글들이 많은데 예를 들면 수리능력과 프로그램 작성 능력은 여러 다른 능력들에 비해 연관성이 제일 떨어진다는 점. 오히려 언어와 논리에 대한 능력이 프로그래밍 수행능력과 보다 큰 연관관계를 지니고 있었다. 내 글쓰는 습관이 알게모르게 프로그래밍 실력에 긍정적인 영향을 주고 있었던 것이다. 더 열심히 해야겠다.

 뭐 아무튼 그밖에도 변수의 분류법이나 코드를 읽을 때 뇌의 작용, 장기기억과 단기기억 그리고 작업기억이라는 세가지 뇌의 공간에 대한 활용에 대한 글부터 최대한 지양해야할 언어적 안티패턴, 디자인패턴이 중요한 이유(장기기억과 관련있는) 등등 어렴풋이 알고있었던 개념들에 대한 것들이 꽉꽉 들어차있다.

 

좋은 책은 읽으면서 누가 보지 않아도 자동으로 고개가 끄덕여진다. 내가 이 책을 읽을 때 그랬고 이 글을 쓰기 위해 다시금 책의 포스트잇들을 들여다볼 때도 고개가 끄덕여졌다. 이 글을 보고 있는 당신, 같이 고개를 끄덕이고 싶다면 이 책을 추천한다.

 

끄덕끄덕

 

특히 팀을 꾸리는 관리자라면 개발자가 좋아하면서도 효율적인 환경을 구성하는 데 책이 크게 일조할 것이라 장담한다. 끗!

 

 

 

Comments