job***
2026-03-30

개발의 무게를 덜어내고 본질만 남기다. 실용주의 프로그래머 데이비드 토머스가 제안하는 지속 가능한 코딩을 위한 미니멀리즘
"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."
나는 임베디드 프로그래머로 30년 이상 지내오고 있다. 그런데, 최근 프로젝트에는 revision 변경을 수행하고 있는데, 이전 코드상에 사용한 Middleware를 모두 걷어내고 새로운 Middleware로 변경하는 작업을 하고 있다.
7년전쯤 부터 진행해온 내가 작성한 코드이지만, 정말이지 상호 연관된 부분들이 꼬여 있어서 조금만 변경해도 어려움이 크게 작용하고 있다. 바로 의존성에 문제점이 많이 발생하고 있기 때문이다.
자료형, 상수, enum형 변수 등을 Middleware에서 지원한 것을 사용했는데, 변경되는 Middleware에는 없는 것들이다.
이 과정에서 너무나도 막막하고 내가 왜 이렇게 프로그래밍을 했지? 어떻게 하면 좋은 프로그래밍을 할 수 있을까? 이런 고민을 하고 있는데, 이 서적을 보게 되었다.
바로 찜하였는데, 다행이도 이번 한빛에서 제공하는 리뷰 도서에 포함되어서 바로 신청했다.
이 책에서 이야기하는 첫번째는 의존성으로 생각이 된다. 나보다는 웹기반 프로그래밍을하는 분들이 대부분 프레임워크 기반 or 제공되는 라이브러리 기반으로 프로그램을 작성하다보니, 난중에 유지 보수 및 기타 다양한 문제로 어려움을 겪을 수 있다는 것을 이야기하면서, 어떻게 하면 복잡함을 걷어낼 수 있는 방법을 제시하고 있다.
표지에서 언급한 29가지 개발 원칙이란, 각 실천 항목을 Practice 라고 표현하였으며 이게 목차에서 볼 수 있는 Practice 1 ~ 29 이다.
그리고 책에서 언급한 내용에 대해서 이해를 돕기 위해서 다양한 사이트 링크를 제공하고 있어서, 시청각 교육을 통해서 좀 더 이해도를 높여주는 계기를 제공하고 있다.
개발환경에서도 단순하게 작업하는 것 보다는 다양한 지원 툴들을 활용해서 개발 환경을 단순하면서도 활용도를 극대화 할 수 있는 솔루션들을 소개하는데, 이 부분에서도 단순한 언급 보다는 조금 더 구체적인 방법의 제시 or 참고할 영상 정보등을 제공해 주었으면 좀 더 도움이 되었을 듯 하다.
아쉬운 점
1) 전체적인 프로그래머 입장에서 개념 정리를 하고 생각을하게 하지만, 좀 구체적인 방법을 제시하고 있지는 않는 듯 하다.
2) 번역본에서 조금 오류라고 해야 할지?
예를 들어서 '6번 프랙티스에서 소개할 회의 지침' 이런 문장이 지속적으로 반복되는데, 뜬금없이 6번 프랙티스 가 뭐지? 이런 상황이 발생하고 했습니다.
뒤고 가서 보니, CHAPTER 03에 PRACTICE 06 을 의미하는 문장이었습니다.
(PRACTICE 06 : 굳이 회의를 해야 한다면 생산적으로 하자)

이 부분을 좀 더 매끄럽게 그냥 PRACTICE 06 참조
뭐, 이런 단순화 했으면 좀 더 좋았을 듯 합니다.
3) 용어에 대한 설명 부족
회의가 '애자일'하다는 착각
과 같은 문장에서 애자일이라는 용어를 사용하면서 이후 반복적으로 표현하는데, 애자일에 대한 명확한 의미가 좀 아쉬웠다고 해야 할지?
(민첨성 or 반복적인 개발 방법론 or 경량방법론 ... )
마지막으로 이책은 한마디로 개발자 / 프로그래머에게 있어서 명언집 같은 느낌을 많이 주는데, 조금은 설명이 난해해서 별도로 자료를 찾아보거나 용어를 이해하기 위해 부가 설명을 찾아보게 되는 부분이 많았다.