[전자책] 미니멀리즘 프로그래머 - AI 시대, 복잡함을 줄이고 가치를 올리는 개발 원칙
데이비드 토머스 지음, 이민석 옮김 / 한빛미디어 / 2026년 2월
평점 :
장바구니담기


"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."


나는 임베디드 프로그래머로 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 경량방법론 ... )

이책을 한마디로 개발자 / 프로그래머에게 있어서 명언집 같은 느낌을 많이 주는데, 조금은 설명이 난해해서 별도로 자료를 찾아보거나 용어를 이해하기 위해 부가 설명을 찾아보게 되는 부분이 많았다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
[전자책] 러스트로 갈아타기 - 레거시 코드는 살리고 성능은 높이는 단계별 리팩터링 전략
릴리 마라.조엘 홈즈 지음, 전봉규 옮김 / 한빛미디어 / 2026년 1월
평점 :
장바구니담기


"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."


C언어를 위주로 개발하는 임베디드 개발자 입장에서 20년 이상 진행해 오면서 느끼는 점을 개선할 방안으로 러스트 ( rust ) 언어로 보고 있었다. 그래서 조금씩 러스트 에 대해서 궁금함을 해결하고자 했다.


이번 한빛미디어에서 제공하는 전자책 (WEB 브라우저 기반) 을 토대로 내용을 검토하였다.




C언어의 단점 을 완벽하게 보안하면서 성능 유지가 가능하다는 것이 가장 큰 장점일 듯 하다.

여기서 이야기하는 갈아타기 ( Refactoring ) 는 단순하게 구현하는 프로그래밍 언어를 변경한다는 의미보다는 성능 향상을 시키고 유지관리를 용이하게 하는 등 다양한 관점에서 코드를 개선하는 작업을 의미한다.

이는 재작성 ( Rewriting ) 과 엄연히 다르다는 것을 먼저 상기 시켜야 할 듯 합니다. (저는 처음에 이 용어로 생각을 하고 해당 도서를 선택했습니다.)


단순하게 재작성을 하자는 게 아니라 코드의 일부를 조금씩 rust로 변경하면서 오류를 유발하는 코드를 신속히 감지하고 수정하면서 점진적으로 프로젝트 전체를 개선해 나가는 취지로 받아들여진다.

책에 앞부분에서 rust의 장점을 극단적으로 보여주는 내용이 있습니다.

csv 문자열에서 값의 합계를 구하는 내용 (파이썬 / 러스트 코드 를 제공)


단순하게 코드를 보아서는 큰 변화를 못 느끼지만, 취급하는 데이터양이 많아질 경우에 동작 시간과 메모리 사용량을 비교한 내용을 보여줍니다. (당연한 결과이겠지만)

100만 개의 줄과 100개의 열로 구성된 동일한 파일을 이용한 결과

나는 임베디드 시스템 개발자로 거의 대부분의 코드를 C언어를 이용하고 있는데, 대량의 코드를 작성하는 경우, 우연히 발생한 오류에 대한 문제점 파악 및 모호한 상황에서 해결책을 찾지 못하는 경우가 많다. 이 때는 프로그래밍언어의 결함(?) 특히 메모리에 무결성을 보장하지 못한다는 단점 때문에 항상 고민을 하게 된다.

러스트가 이런 메모리 안전성을 러스트 컴파일러에 맡기기 때문에 개발자에게는 해당 문제에 대한 부담을 덜어줄 수 있다고 한다.

나는 그래서 유지 보수성이 용이하다는 장점도 있지만 메모리 안전성에 대해서 큰 관심을 가지고 있다.

Rust 문법이 약했던 나에게는 2장에서 소개한 러스트 개요 부분이 Rust 문법을 이애하는 장이 되었으며, 중요 시 하는 부분이 코드의 수명을 파악하면서 어떤 코드가 좀 더 안전한 코드가 되는지를 소개하고 있다. 다만, Rust 를 처음 접하는 저에게는 해당 코드를 따라할 수 있는 환경 구축 내용이 없어서 많은 아쉬움이 남습니다.

(Rust 기초를 위한 별도 도서가 필요한 수준!)

후반으로 가면 HTTP 응용 예제에 대해서 python / javascript 등으로 구현한 코드를 러스트로 갈아타기 하는 내용을 다루고 있으며, 이는 WEB 개발자라는 좀 더 전문 분야에 해당하는 것으로 조금은 실습에 참여하기가 어려웠다.


책에 소스 코드

저자 github : GitHub - lily-mara/refactoring-to-rust: Code to accompany Refactoring to Rust


역자 github : GitHub - legend59/refactoring-to-rust: Code to accompany Refactoring to Rust(러스트로 갈아타기 소스 코드)



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
50 이후 시작하는 러닝의 모든 것
나카노 제임스 슈이치.이토 다케히코 지음, 김소희 옮김 / 길벗 / 2025년 10월
평점 :
장바구니담기


서평 쓰기를 할 도서가 도착하였다.

사실 이 책에 대한 서평단 신청 전부터 막내 딸과 달리기 + 걷기 를 시작하였다.



하지만, 무작정 달리기를 하는 나에게 조금씩 부담감이 엄습해 왔다.

옆구리 통증 , 정강이 근육(전경골근) 통증

그래서 유투브 영상들을 통해서 바른 자세 / 준비 운동 등 다양한 내용들을 보고 있지만, 조금씩 상이하게 설명하는 부분들이 많아서 어떤 설명을 따라가야 할지 고민이 되었다.

그래서 해당 서적을 통해 전체적인 이해를 해 보려고 했다.

해당 도서는 소설 같지 않고, 기자와 스포츠 코치간에 질문 응답 형태로 이루어져 있어서 부담감은 없었다.

전체적으로 1장 ~ 9장으로 구성되어 있으며, 기초를 시작으로 조금씩 조금씩 몸에 균형이 이루지면, 사람 욕심에 따라 점점 더 성장하는 모습을 지켜볼 수 있다.


다시 말해서 마라톤에 참가하는 수준으로 풀마라톤에 도전할 수 있는 날을 기대할 수 있다.

준비기간 - 습관화 기간 - 일상화 기간 - 중급 - 상급 에 이루기 까지 대략 1년은 꾸준히 해 주어야 한다.

나도 도전을 해 보려고 한다.

1년이 아닌 2년 이상을 목표로 내 건강을 위해서

아직은 5분 ~ 10분 정도의 연속 달리기가 가능하지만, 최소 30분 이상을 연속 달릴 수 있도록 조금씩 조금씩 달리기를 해 보고자 한다.

책에서는 워밍업 및 준비 운동에 대한 언급은 있지만, 이 부분에 대한 상세 설명이 조금 부족해 보인다.

현재 내가 겪고 있는 통증이 준비 운동 or 자세등에 문제가 아닌지? 이런 생각을 하고 있는데 ...

마지막으로 9장에서 오래도록 계속하기 위한 스트레칭 이라는 내용으로 도식화된 스트레칭 방법에 대해서 언급하고 있다.


이와 같은 도식화된 내용으로 준비 운동 / 워밍업 에 대한 소개도 있었으면 좋았을 듯 하다.





댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
50 이후 시작하는 러닝의 모든 것
나카노 제임스 슈이치.이토 다케히코 지음, 김소희 옮김 / 길벗 / 2025년 10월
평점 :
장바구니담기


40대 후반인 나에게 몸이 많이 무거워졌다는 걸 새삼 느끼고 있다.
턱걸이도 힘들고 가벼운 러닝도 힘들고
제대로 된 러닝을 시작하기 위해서 한 번 읽어보고 싶네요.

댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
C# 교과서 개정 2판 - C#, 기초부터 제대로 배우자!
박용준 지음 / 길벗 / 2025년 6월
평점 :
장바구니담기


안녕하십니까?


C# 프로그램을 공부하기 위해서 기본 개념에 대한 이해를 위해서 필독서!


이미 저는 임베디드 개발자로 프로그래밍 언어에 대한 기본 개념을 알고 있어서, 책에서 소개하는 기본 개념에 대한 이해가 어렵지는 않았습니다. 하지만, 정말이지 교과서라는 수준으로 책을 잘 준비하시는 듯 합니다.


제가 이런 개념을 설명한다면, 특정 챕터 전체 내용을 모두 설명하고, 관련 예제 소스 코드를 하나 제공해서 책 분량을 확보할 듯 한데, 이 책은은 해당 챕터의 각 부분별로 하나 설명하고 예제 하나 소개하고, 이런 형식으로 많은 예제를 제공하면서 이해하는 데 많은 도움을 제공하고 있습니다.

(* 물반 고기반 하는 표현 처럼, 글반 예제 반 수준)


추가적으로 각 설명에서 부연 설명이 필요한 경우, Note 항목을 함께 편성해서 상세한 설명을 통해서 독자가 의문 시 할 수 있는 부분에 대한 해소를 해 주고 있다.



정말이지 프로그래밍에 대한 기초가 없는 독자에게도 충분히 추천을 할 수 있는 도서라고 생각을 한다.

책에 뒷 부분으로 가면, 좀 더 고급 기술을 다루는 내용이기 때문에 접근성이 떨어질 수 있는데, 해당 부분을 실제 프로그램 화면 캡쳐를 통해서 이해력을 도와주고 있다.


부록 부분에 별도로 도움을 제공할 수 있는 부분을 편성해 두었으며, 특히 부록 B를 보면, 프로그램 디버깅을 하는 방법을 상세히 제시해서 초보자에게 프로그램 개발 과정에서 진행할 수 있는 DEBUG 방법을 소개하고 있다.



지속적으로 독자에게 실시간 도움을 제공할 수 있도록 블로그 및 유투브 채널 정보를 공유하고 있습니다.


저자 블로그 : https://www.dotnetkorea.com/

저자 깃허브 : https://github.com/VisualAcademy/DotNet

저자 강의 영상 :

https://www.youtube.com/playlist?list=PLO56HZSjrPTB4NxAsEP8HRk6YKBDLbp7m


* 길벗IT, 길벗 28차 개발자 리뷰어를 통해서 해당 도서를 지원받아 리뷰하였음



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo