처음 처음 | 이전 이전 | 1 | 2 | 3 | 4 | 5 |다음 다음 | 마지막 마지막
더 나은 프로그래머 되는 법 - 지금 바로 실천할 수 있는 선배 개발자의 39가지 노하우 / 국내 개발자 8인 인터뷰 수록
피트 구들리프 지음, 최원재 외 옮김 / 한빛미디어 / 2024년 4월
평점 :
장바구니담기



  프로그램을 작성하는 일을 하는 사람들이 아주 많은 요즘이다. 대학에서 다양한 내용을 배우고 회사에 취직해서 선배들로부터 업무를 배우고, 그에 맞춰 업무가 진행되는 방식대로 프로그램을 작성해 나간다. 영업과 제품 기획 부서에서 고객의 요구에 맞는 기획을 하고 새로운 프로젝트가 시작되면, 설계 부서에서 그에 맞는 구조 설계를 진행하고 등등.. 많은 부분은 회사에 짜여진 틀에 맞춰 진행이 된다. 이러한 과정 속에 프로그래머는 목표에 맞는 기능을 작성하기 위해, 기능에 맞는 목표, 그에 따른 기능 협의, 기능 설계, 상세 설계, testcast 설계, 코딩, UT, BT 등의 테스트 과정을 처리해 나가며 주어진 업무가 완료될 때까지 진행해 나간다. 이와 같은 업무 과정들이 숙달이 되고, 밀려드는 업무를 처리하는 것을 해치우고, QA에서 몰려드는 문제점, 완성 제품이 고객사에서 동작 중 이상 동작을 하여 이를 대응하는 비상 상황을 해결해 나가다보면 정신없이 시간이 흘러가게 된다. 이럴 때, 누군가의 조언이 필요하고 능력있는 선배에게 조언을 구하면 무언가 이러한 상황을 헤쳐나가는 데 도움이 될 것 같지만 실상 주변에 보면 선배들도 나와 상황이 다르지 않은 것을 느끼는 경우도 많고, 또 내가 만족할 만한 실천적인 조언을 들을 수 없는 경우도 많다.


  프로그램을 작성하면서 누구나 겪는 일들을 나열하면서 본 리뷰를  시작하였다. 이런 경우, 보통 다른 사람은 어떻게 프로그램을 작성할까? 큰 프로젝트를 성공적으로 진행할 때 어떤 기술이 필요할까? 와 같은 여러 고민들을 하게되고 여러 서적도 읽어보고 주위 동료, 선배들과 이야기하며 여러 현실적인 조언을 얻을 수 있다. 그러한 조언 중 나에게 도움이 되는 것을 얻을 수 있다면 좋지만 그렇지 않은 경우도 많다. 이 책도 그러한 조언들을 모아놓은 책이다. 책의 저자가 오랜 시간 프로그래머로서 일을 하면서 경험하고 느낀 것 생각한 것들을 5 가지 주제로 나누고 각 주제에 맞춰 여러가지 조언들을 이야기 형식으로 읽기 쉽게 설명해주고 있다.


  처음부터 차근 차근 책을 읽어나가다보면, 읽는 사람에 따라 조금씩은 다를 수 있지만, 많은 부분을 공감할 수 있을 것이다. 물론 아직 프로그래머가 되기 위한 과정에 있는 분들이라면, 피상적인 도덕책처럼 느낄 수 있을 수도 있겠지만, 수년간 개발을 해 보신 분들에게는 지금 하고 있는 일, 과거 진행해온 일들에 비추어 생각해 볼 수 있는 부분이 많을 것으로 생각된다. 


  이 책은 전체 다섯개의 주제에 맞게, 여러 가지 경우들을 하나 하나 챕터들로 나누어 설명을 하며 각 챕터들의 마지막에는 챕터의 요약하는 특이하지 않은 방식으로 구성되어 있다. 읽기 쉬운 산문 형식으로 진행된다. 엉클밥의 책과는 달리 상황 설명 및 코드를 이용하여 하나씩 짚어주며 이럴 때는 이렇게 와 같은 방식으로 설명을 하지는 않는다. 초반부에는 이해를 돕기 위해 이런 경우는 코드가 있었으면 더 좋지 않았을까? 라는 생각도 있었지만, 만약 그랬다면 오히려 책 전체의 흐름과 맞지 않았을 것이라 생각된다. 각 챕터의 의미를 관통하는 재미있는 그림을 제시하여, 이야기에 대해 다시한번 생각해 볼 수 있도록 하여, 굳이 코드와 같은 도구 없이도 해당 챕터의 내용을 이해할 수 있도록 해 두었다. 



  한 권의 책을 여러 역자들이 번역을 하면 생기는, 일관성없는 번역에 대한 우려도 전혀 없었다. 역자 분들 각자의 스타일이 있게 마련인데, 이 책을 읽는 동안 그러한 부분을 느끼지 못한 것 역시 이 책의 장점이 아닌가 싶다.  책의 마지막에 국내 현업 개발자들의 이야기가 실려있는데, 이 부분도 책의 내용과 더불어 많은 도움이 되는 부분이라 생각한다.


  책을 다 읽고나서 이 책의 조언들을 이를 어떻게 활용하는 것이 좋을까? 생각할 수 있다. 너무 당연한 내용이지만 이 책의 가장 중요한 내용이라 생각이 되는, 책의 서문에 필자가 작성한 다음 내용을 언급하며 본 리뷰를 마친다.


      “읽는 순서보다 더. 중요한 것은 내용을 받아들이는 방식이다. 실제로 더. 나아지기 위해서는 읽은 내용을 직접 적용해봐야 한다”


한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
도시를 만드는 기술 이야기 - 다리, 터널, 도로, 통신망, 전력망, 철도, 댐, 상하수도, 건설 장비까지 우리 주변을 둘러싼 인프라의 모든 것
그레이디 힐하우스 지음, 윤신영 옮김 / 한빛미디어 / 2024년 3월
평점 :
장바구니담기


우리가 살고 있는 곳은 과거 여러 사람의 노력과 기술이 축적되어 이루어진 결과라 할 수 있다. 하지만 이러한 곳들을 항상 보면서 살고 있기 때문에 너무 당연하다고 느끼며 전혀 이상하다고 느끼지 못하고 살고 있다.


이 책은 그러한 당연한 것들을, 굳이 알 필요가 있을까? 라고 생각할 수 있는 우리 주변의 다양한 시설들에 대해 설명을 하고 있다. 이 책에서 다루는 주제는 굳이 이러한 것들을 알아야 하나? 라고 생각한다면… 꼭 알 필요는 없을 수도 있다. 하지만 이 책에서 다루는 내용 중 일부라도 기억하고 있다면, 길을 가다 그 부분을 마주쳤을 때 좀 더 자세히 들여다 볼 수 있을 것이라 생각한다.

책의 목차를 보면 우리가 살아가는데 반드시 필요한 전기와 관련된 시설부터 시작해 통신, 도로, 철도, 댐과 같은 다양한 분야에 대해 다루는 것을 있다



책의 내용을 보면, 일견 백과 사전을 생각할 있다. 백과 사전식으로 주욱 나열했다고 하면 사실 지루하고 재미없을 밖에 없었을 것이다. 하지만 책에서는 먼저 다루고자 하는 내용을 왼쪽 페이지에는 그림으로 전체를 쉽게 파악할 있도록 두었으며 반대쪽 페이지에는 해당 내용을 설명해 나가고 있다. 그림에 나온 내용에 대해 그리고 어떻게 만들어졌는지, 주변과 연결이 어떤 식으로 이루어지고 어떻게 활용이 되는지에 대해 설명을 하고 있다. 자칫 지루해질 있는 설명인데 하나의 문장을 짧게하여 문장이 쉽게 눈에 들어오도록 했고, 설명을 여러 예를 함께 들어 흥미를 잃지 않도록 하였다. 중요한 용어들은 볼드체로 모두 표시를 두어 볼드체만 보아도 어떤 내용에 대한 이야기인지 눈에 들어오도록 하였다.


소챕터 말미에 있는못다한 이야기' 코너에는 해당 소챕터에서 다룬 주제와 연관되어 독자에게 알려주고 싶은 재미난 내용들을   한번 짚어준다. 책을 읽어가다보면, 부분에는 어떤 내용이 '못다한 이야기' 나올지 궁금할 만큼 흥미롭게 구성해 두어 집중해서 책을 있었다.


끝으로 이 책은 주변에 대한 호기심을 가진 분들이면 누구나 재미있게 읽을 수 있을 것으로 생각한다. 주변 사람들에게 이런 것까지 알고 있다고 자랑을 하려는 사람들에게도 좋은 자료일 수 있을 것이다. 하지만 이 책이 주변에 호기심을 가진 사람들에게 쉽게 그리고 너무 깊고 어려운 내용을 배제하여 설명을 한 것인 만큼, 관련 분야의 전문 지식을 가지신 분들에게는 맞지 않을 수 있을 것으로 생각된다.



해당 포스팅은 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
헤드 퍼스트 C# - 모던한 객체지향 C# 가이드! .NET과 유니티로 배우는 실전 프로그래밍 지침서, 4판 Head First 시리즈
앤드류 스텔만.제니퍼 그린 지음, 이수겸 옮김, 이재윤 외 감수 / 한빛미디어 / 2023년 11월
평점 :
장바구니담기


  C# 은 .NET 환경이 발표될 즈음 기존 Visual J++이 사라지고. 처음 발표된 것이 오래지 않은 것 같은데, 벌써 20살이 넘은 언어가 되어버렸다. 처음에는 C# 이 Java에 비해 성능이 떨어지고 어짜피 Visual J++ 처럼 크게 인기를 못 끌 것이라 생각했었지만, 점점 버전이 높아지면서 새로운 기능과 편리성이 개선되었고, 점차 Linux 와 Mac 환경도 지원하면서 점점 더 매력적인 언어가 되고 있다고 생각된다.

이번에 리뷰하게 된 헤드 퍼스트 C# 은 버전 9.0과 Visual Studio 2022를 대상으로 설명이 되어 있어, C# 을 처음 배우는 분들도 별다른 어려움 없이 책의 내용을 바로 연습해 볼 수 있다. 

  처음 책을 받아서 책의 목차를 살펴 보았을 , 눈에 띄는 부분은 Appendix 부분이었다.



 Visual Studio for Mac 이 나왔을 때, 처음 기대한 것과 달리 C++ 개발 미지원 및 C# UI 개발환경의 차이 등으로 인해, 굳이 windows 환경이 있는데 뭐하러 Mac에서 개발을 해야할까 라고 생각하며 Windows 환경에서만 툴을 사용했었다. 이번 버전에는 각 챕터별로 제공하는 UI 프로그램에 대해 Mac에서도 따라해 볼 수 있도록, 개발 방법을 별도로 설명해주는 점이 이 책의 장점 중 하나라는 생각이 들었다. Windows에서 이 책의 예제를 따라해보고, Mac에서 다시 한번 동일 예제를 따라해 보니 큰 어려움 없이 따라 할 수 있었고 두 플랫폼간 툴이 가진 약간의 차이도 이해할 수 있어 책에 대한 만족감이 더 커졌다.

   다른 눈에 띄는 점은, 툴을 돌려 결과를 보지 않고, 머리로 생각해보고 손으로 그려보거나 직접 종이를 잘라 만들어보는 부분이 존재하는 것이다. 물론 게임과 관련된 부분이나 UI 관련된 부분이어서 굳이 안하고 넘어가도 되지만, 먼저 코딩을 하기 전에이런 부분도 함께 고려를 해야했었네라고 깨닫는 기회를 제공한다는 생각이 들었다.



  또 다른 이 책의 장점은, Console 버전의 응용을 간단히 만들어보고, 동일한 기능을 하거나 좀 더 발전된 기능의 UI 버전 프로그램을 만들어보도록 예제를 만든 것이라 생각된다. 프로그램을 개발한다는 것은 새로운 것을 계속해서 배우고 익혀야하는 작업이라 할 수 있는데, 특히 새로운 프로젝트에 적용하기 위해 빠른 시간에 무언가를 익혀서 적용해야할 경우, 눈에 보이는 예시를 통해, 바로 이해할 수 있게 제공되는 튜토리얼이 있으면 정말 좋은 것 같다. 이 책이 모든 것을 다 제공하는 만능은 아니지만, 이러한 필요성을 가지고 접근하는 독자에게는 좋은 참고자료가 될 수 있다고 생각된다. 또 처음 이 언어를 배우는 분들에게도 Console 환경의 사용법 뿐만 아니라 UI를 쉽게 바로 작성할 수 있는 좋은 예는 더 흥미를 끄는 요소일 것이라 생각된다.


  계속해서 장점만을 이야기했지만… 이 책 뿐만 아니라 헤드 퍼스트 시리즈의 특성으로 인해 이 책은 호불호가 될 수 있는 부분이 있는데… 책에 설명이 너무 많다는 점이다. 설명이 많아서 너무 좋다 라고 생각하시는 분도 있을 수 있지만, 너무 글이 많아서 정신이 없다 라고 생각하시는 분들도 있을 수 있어, 이런 부분은 책 구매 시 고려해야할 수 있는 부분이다.

  그리고 이 책은 정말 친절하게 그리고 상세하게 많은 부분을 설명해주고 있지만, 다른 언어를 배운 적이 없는 분들에게는 조금 어렵게 다가올 수 있을 것이라 생각한다. 책의 구성이나 설명이 오히려 혼란을 가져올 수 있다. 특히 책 표지에 언급된 ‘초보자’ 라는 단어가 오해를 줄 수 있을 수 있는 표현일 수 있겠다는 생각이 들었다. 좀 더 쉽고 재밌게 책을 즐기기 위해서는 ALGOL계열 언어(C, C++, Java 등)에 대한 기초 학습 정도는 먼저 필요하지 않을까 하는 생각이 든다.


  요즘은 아무리 쉬운 프로그래밍 언어라도 책의 두께가 수백에서 천페이지가 넘어가는 책들이 많아, 이 책의 두께는 그리 무리가 없는 수준이라 생각된다. 특히 책의 예제가 게임을 기반으로 한 예제가 많아 생각보다 재밌게 따라할 수 있고 유니티에 관심있는 분들은 유니티와 C# 을 같이 맛볼 수 있는 자료라 더 재밌게 책을 읽어나갈 수 있었다. C# 언어를 좀 더 재밌게 배워보고 싶은 분들에게 일독을 추천한다.


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


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
관찰 가능성 엔지니어링 - 오픈 소스를 활용한 분산 애플리케이션 계측부터 오류 추적과 분석까지 / OpenTelemetry 사용법 수록
알렉스 보텐 지음, 노승헌 옮김 / 한빛미디어 / 2023년 7월
평점 :
장바구니담기


관찰가능 엔지니어링


간단한 프로그램을 작성하는 일에서부터, 여러 복잡한 프로그램들을 한데 묶어 시스템을 구성하는 것까지, 프로그램들이 어떻게 동작하는 지 아는 것은 가장 중요한 일이 아닐 수 없다 생각한다. 하나의 프로그램의 경우라면 문제점 발생 시, 그나마 로그 파일을 로컬에서 분석하는 것으로 어느정도 문제점의 실마리를 파악할 수 있겠지만, 요즘같은 복잡한 분산 시스템 환경에서 동작하는 규모가 아주 큰 시스템의 경우라면, 복잡성은 차원이 다른 문제일 것이다. 문제점의 트리거링 포인트가 어떠한 메시지나 이벤트인지 확인하는 것도 쉽지 않으며, 해당 이벤트가 바로 영향을 주는 것이 아니라 여러가지 메시지 전송 단계를 거쳐 최종적으로 현재 문제를 만든 것인지 확인하는 것은 더더욱 쉽지 않다. 그래서 이러한 문제점이 발생하는 것을 대비하여, 특히 규모가 큰 프로그램들의 경우, 각 구성 프로그램별로 로그 메시지를 저장하는 것은 물론, 이벤트나 메시지의 흐름을 구분가능한 정보(메시지 ID 또는 5 tuple정보 등)을 이용하여 기록하는 것은 물론, 상세한 통계 및 에러 시 알람, 폴트 등 많은 추적가능한 방법들을 고민해 시스템 설치 및 테스트 그리고 운용 중 언제라도 파악할 수 있도록 하려고 많은 노력을 하고 있다.

관찰 가능성 엔지니어링은 이러한 복잡한 문제점 파악을 위한 노력들에 대한 결과를 좀 더 쉽게 이용할 수 있도록 만들어 놓은 OpenTelemetry를 어떻게 기존 시스템에서 이용할 수 있을 지, 특히 CNF 환경에서 잘 이용할 수 있을 지에 대해 기본 개념부터 시작해, 어떻게 사용하는 지 하나하나 설명하고, 실제 k8s 현장 배포 및 분석 방법에 대해서 설명해 주는 책이다. 책의 표지에 그려진 그림이 사실 위에서 기술한 내용 모두를 설명하고 있다고 생각한다. 우리가 단순히 눈으로 보는(monitoring) 내용은 정말 일부분에 불과한 현상으로 그 아래에서 돌아가는 복잡하고 거대한 시스템의 흔적에 대한 확인(observability)는 가려져 있다. 


이 책은 총 3부에 걸쳐, OpenTelemetry가 무엇인지, 어떻게 사용하고 응용할 지에 대해 단계별로 설명을 하고 있다. 1부에서a는 기존 레거시 시스템들에서 사용했던 툴들 및 연동 시 문제 등에 대해 간략하게 설명하고 OpenTelemetry가 왜 나오게 되었는 지에 대해 간단히 설명한다. 또 관련 용어 및 개념에 대해 예시를 이용하여 설명한다. 2부에서는 1장에서 설명한 개념들에 대해, 실제 구현을 해 보면서 개념을 명확히 하고, OpenTelemetry를 이용해서 어떻게 사용할 수 있는지 설명한다. OpenTelemetry가 제공하는 기능 중 대표적인 기능인 추적, 메트릭, 로그에 대해 각 기능이 어떻게 동작하는 지에 대해 Python script를 이용하여 환경 구성 및 사용 방법에 대해 설명한다. 또 단순히 기본 제공 기능 뿐만 아니라, 응용 프로그램에서 추가적으로 원하는 데이터를 활용 시 어떻게 해야하는 지에 대한 예시를 제공하여, 단순한 tutorial이 아닌 언제든 개발시 참고가능한 레퍼런스 역할을 할 수 있도록 하였다.

  - 마지막으로 3부에서는, 2부에 설명한 기능들을 어떻게 활용하는 것이 좋은지에 대해 설명한다. 당연한 이야기겠지만, 잔뜩 설명을 해 두고 이를 실제 CNF 환경에 대해 어떻게 배포를 하고, 어떻게 백엔드 환경을 구성하여야 할지 알 수 없다면, 큰 의미가 없게 된다. K8s 환경에서 여러가지 시나리오 별로 배포 시 어떻게 설정 및 구성을 해야하는 지에 대한 방법을 설명한다. 그리고 수집한 데이터를 쉽게 분석할 수 있도록, 오픈 소스 툴들(집킨, 예거, 프로메테우스, 그라파나)을 백엔드로 활용하는 방법도 하나하나 상세히 설명한다.


보통 이러한 책들의 경우, 책의 내용이 늘어나는 부담도 있고, 저자가 모든 경우의 응용 환경에 대해 고려하기가 쉽지 않아, 설명하고자 하는 부분을 위주로 상세 설명을 하는 경우가 많다. 그래서 특정 챕터를 보려할 때, 해당 챕터를 보다가 다시 앞으로 돌아가 차근차근 책을 읽어 나가야 하는 경우가 많이 있다. 하지만 이 책은 그각 챕터별로 해당 챕터만 보고도 관련 내용을 쉽게 확인할 수 있도록 구성되어 있다. 테스트 환경 구성을 쉽게 하기 위해 처음부터 하나씩 툴 설정 방법을 설명하고, 설명하는 기능이 늘어감에 따라 하나씩 하나씩 코드가 추가되는 내용을 쉽게 확인할 수 있도록 해 두었다. 간단히 관련 내용을 설명하자면, 먼저 다음과 같이 챕터에서 설명할 내용의 구성에 대해 전체적으로 설명을 하며 필요 시, 이해하기 쉽도록 개발 환경 또는 스크립트 구성에 대해 도식화를 해 둔다.



그리고나서 기본 베이스가되는 script에 대해 설명을 하고 해당 스크립트 동작 결과를 보여준다. 설명이 진행되면서 기능을 추가되는 과정을 반복하는데, script가 어느 부분이 어떻게 추가되는 지 변경 내용을 다른 색으로 구분해 눈에 변경 사항이 쉽게 들어올 수 있게 하여, 코드 확인을 쉽게 해 준다.



script 실행 결과의 역시 마찬가지이다.




어찌보면 사소할 수 있지만, 책의 내용과는 별개로 이런 부분은 필요한 챕터만 선택적으로 읽어 가나가는 데 있어 시간도 절약되고 빠른 이해에도 도움이 되어, 다른 책과 차별적인 포인트라 생각한다.


끝으로 이 책의 대상독자를 짚으며 리뷰를 마치려 한다. 책의 제일 처음 부분에 있는 대상 독자에 기술되어 있는 것처럼 (중급이라 기술되어 있음), 내용을 무리없이 이해하는데는 어느 정도의 시스템 지식, CNF 환경에 대한 지식 그리고 Python script에 대한 지식이 필요할 것으로 생각한다. 개발을 해보지 않은 분이나, 이제 막 개발을 시작하는 분들의 경우, 이 책에서 언급하는 내용들을 충분히 이해하고 필요성을 느끼기 어려울 수도 있기 때문이다. 또 CNF 시스템 및 k8s 나 docker 환경에 대한 익숙함, 기본적인 Python 스크립트 지식이 역시 책에 제공된 코드를 테스트해보는데 중요할 것으로 생각한다. 하지만, 반대로 생각해보면 이 책을 천천히 읽으며, 필요한 내용들을 하나씩 공부하면서 책을 익혀나간다면, 책을 다 읽고났을 때, 또 다른 분야에 대한 접근을 하는데 많은 도움이 되는 지식들을 이미 지니고 있을 것이라 생각된다.



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


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
행동 데이터 분석 - R과 파이썬으로 시작하는 행동 데이터 분석 가이드
플로랑 뷔송 지음, 시진 옮김 / 한빛미디어 / 2023년 5월
평점 :
장바구니담기



온라인에서 어떤 제품을 구입하기 위해 여러 가지 상품들을 비교 분석하다보면, 언젠가부터 '이 상품을 구입한 분이 추가로 구입한 상품' 또는 'xxx님이 관심을 가질만한 상품을 추천해 드립니다' 와 같은, 사용자의 행동 패턴 또는 관련 데이터를 기준으로 추가적인 상품을 추천하는 것을 쉽게 볼 수 있다. 그럴 때면 이러한 방식의 시스템은 어떻게 데이터를 분석을 해서 이러한 결과를 가져올까 하고 늘 궁금해 했었다. 단순히 통계 데이터만 가지고 이런 내용을 추천하는 것일까? 그렇다면 특이한 결과가 반영되어 통계가 왜곡이 된다면 이런 것은 어떻게 보정을 하는 것일까? 이런 생각들을 가지고 데이터 사이언스 관련 책들을 보다보면, 알고리즘 측면에서는 이런 식으로 하는 것 같구나... 와 같이 너무 쉽게 생각하고 넘어가게 된다. 하지만 여기에는 왜 이런 식의 접근을 하는 지, 그리고 사람들의 행동이 이러한 판단에 어떠한 영향을 미치는지, 잘못된 영향을 줄 만한 요소가 많을텐데 이런 것들은 어떻게 접근을 해서 문제를 해결할 것인지에 대한 부분은 빠져있다. 어찌 보면 그게 당연할 수도 있겠지만, 좀 더 호기심을 가지고 바라볼 때, 관련 설명이 친절하게 나와 있는 자료가 있었으면 할 때가 있다.


이 책은 이러한 '무엇이 왜 어떠한 행동을 유발하는가? 이런 경우 어떤 결과가 도출될 것인가?'라는 인과 관계에 초점을 두고 '인과관계 다이어그램'과 '인과 행동 프레임워크'라는 툴을 이용해, 단순히 겉으로 보이는 현상이 아니라 사람의 '심리와 행동'과 여러 요인들 사이의 관계성을 분석하고 이를 실험하여 결론을 도출하는 일련의 과정을 다루고 있다. 이러한 방식의 접근에 익숙치 않은 독자를 위해 다음과 같은 순서로 차근 차근 설명을 해 나갑니다.

 - 1부 '행동의 이해'에서 이러한 접근법을 적용하는 이유를 설명

 - 2부 '인과관계 다이어그램과 교란 해소'에서는 책의 전반에 사용되는 툴인 '인과관계 다이어그램'을 작성하는 방법 및 잘못된 분석을 유도할 수 있는 교란 해소 방법을 간단히 연습

 - 3부 '견고한 데이터분석'에서는 결측 데이터를 핸들링하는 방식에 대해 설명하고, 부트스트랩에 대한 설명 및 사용방법을 소개

 - 4부 '실험 설계와 분석'에서는 전통적인 A/B 테스트 방식이 아닌, 부트스트랩과 신뢰구간을 이용하여 분석하는 방법을 연습하되, 실험 시 어떠한 순서로 어떠한 부분에 중점을 두어야 하는지 유의하면서 상세한 예제를 제공

 - 5부 '행동 데이터 분석을 위한 고급 도구'에서 실험 데이터 분석을 더 깊고 상세하게 할 수 있는 방법을 설명


아무래도 책 자체가 관련 분야에 대한 지식이 있지 않은 분들에게는 어렵게 다가올 수 있기 때문에, 책의 내용에는 수식을 활용한 설명은 찾기 힘들다. 또 예시를 위해 가상의 하지만 일상적으로 있음직한 상황을 예를 들어(상품 구매, 고객 만족도, 고객 예약 시스템 등) 독자가 이해를 쉽게 할 수 있도록 한 것은 이 책의 장점이라 생각한다. 


근래 출간되는 데이터 사이언스 관련한 기본 내용 및 툴 사용법을 친절히 작성해 놓은 책들과 달리, 행동 과학, 행동 경제학 과 같은 IT 관련 지식은 알고 있지만, 좀 더 근본적인 이론에 대해 설명을 하면서 이를 Python과 R 이라는 언어를 사용하여 설명을 하고 있기 때문에, 먼저 Python이나 R 언어 중 하나의 언어에는 어느 정도 지식이 필요하며, 통계학 관련 지식도 최소한의 지식이 필요하다고 생각한다. 그냥 이런 내용이 있구나 라는 정도가 아니라 책에서 설명하는 코드를 쫓아가면서 실습해보기 위해서는 Python 사용자의 경우 Jupyter-Notebook을 이용할 수 있으면 더욱 좋다(예제도 ipynb 파일로 배포가 된다). 또 예시에 따라 두 언어 중 하나의 예시만을 책에서 보여주는 경우도 있어, 가능한한 github 사이트에서 예제를 다운받아 책과 함께 체크해보는 것이 좋다. 언제나 그렇듯 이러한 부분들은 단점이자 장점이라 생각하는데, 시간은 많이 들겠지만 책에서 언급한 참고자료를 보거나 인터넷 자료 등을 참고하면서 공부해나간다면 많은 내용을 배울 수 있다.


이 책은 행동 데이터를 기반으로 인과 관계 분석하여 왜? 라고 하는 부분에 대한 근본적인 이해를 돕는데 도움을 줄 수 있는 책이라 생각한다. 반드시 책에서 제시하는 '인과 관계 분석'이 이러한 분야에 대한 정답 이라 말할 수는 없겠지만, 관련 분야에 대한 호기심을 가진 분들이나 더 많은 인사이트를 얻고 싶어하시는 분들에게 좋은 참고자료가 될 것으로 생각한다.


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


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
처음 처음 | 이전 이전 | 1 | 2 | 3 | 4 | 5 |다음 다음 | 마지막 마지막