조엘이 엄선한 소프트웨어 블로그 베스트 29선 (조엘 스폴스키, 2006) 독후감
조엘이 소프트웨어에 관한 좋은 글들을 묶어서 책으로 냈다. 내가 관심 있는 분야에 관한 글도 있고 소셜 네트워크와 같이 관심 없는 분야의 글도 실려 있다. 처음에는 관심 있는 분야만 쏙쏙 골라서 봤는데, 관심이 없는 분야라도 좋은 글이라고 하니 억지로라도 읽어봤다. 사실 이런 관심 없는 쪽은 내가 스스로 찾아볼 리는 절대 없고 지인의 추천이나 이렇게 책으로만 접할 것 같다. 그런 면에서 여러 분야를 다룬 게 이 책의 단점이 아니라 장점이다. 특히 소개하는 글마다 조엘의 짧은 소갯글이 들어가는데, 이게 참 볼만하다.
가장 흥미롭게 읽은 글은 제일 처음 소개된 ’스타일은 언어 요소다 - 켄 아놀드’라는 글이었다. Python을 예로 들면서 많은 언어가 무시하고 있는 공백문자를 언어의 요소로 넣자고 주장한다. 그렇게 함으로써 지긋지긋한 코딩 스타일 논쟁을 끝내자는 얘기다. 정말 동의한다. 탭으로 하자니 스페이스로 하자니 이런 논쟁부터 if( foo )와 if (foo) 중 어떤 스타일이 좋다는 논쟁까지 싹 다 없어져 버리고 좀 더 건설적인 일에 시간을 쓸 수 있을 것이다. 언어에서 정한 스타일이 마음에 안 들어도 쓰다 보면 다 적응된다. 코딩 컨벤션이 정해져 있는 팀에 들어갔을 때, 아무리 정해진 코딩 컨벤션이 마음에 안 들어도 시간이 지나면 익숙해지고 친근해지는 것처럼 말이다.
이외에도 왜 지나치게 관대하고 유연해서 모호하기까지 한 HTML이 살아남을 수밖에 없었는지를 설명하는 글, Windows 95의 하위 호환성을 유지하려고 비정상적으로 행동하는 애플리케이션을 막지 않고 호환성 코드를 넣어서 제대로 동작하도록 했다는 글, 왜 C++ 기존 커뮤니티를 효과적으로 장악했는지 설명하는 글 등 재미있는 글들이 많았다.
Update
표지 사진 교체