프로그래머들을 위한 통계학습 실습교재 Think Stats 리뷰

Think Stats 표지 프로그래머에 대한 정의가 사람마다 조금씩 틀리겠지만, 데이터 중심의 객체지향 프로그래밍이 흥왕하면서 아마도 데이터를 최전선에서 다루는 사람들로 이야기 할 수도 있지 않을까 싶네요. 이 포스팅에서 한빛리더스7기 미션도서로 리뷰할 Think Stats 역시 데이터를 수학적으로 다루는 통계에 관한 이야기 입니다.

Think Stats은 첫인상을 쓴 포스팅에서 말씀드린대로 한 마디로 프로그래머의 프로그래머에 의한 프로그래머를 위한 통계학 학습 책이라고 말씀드릴 수 있습니다. 따라서 내용은 주로 수학적인 공식과 이론설명보다는 실제 코드구현을 통해서 통계를 프로그래머에게 이해시키는 것이 목적입니다.

log_normal_distribution

이 책은 철저하게 이론 설명, 파이썬 예제, 그리고 용어정리의 구조로 반복됩니다. 그렇기 때문에 그냥 읽기만 해서는 내용을 제대로 소화하기 쉽지 않습니다. 예제코드를 리딩하고 위 그림처럼 코드를 돌려보고 결과를 확인하는 것이 상당히 중요합니다.

brfss_weight_log

혹시 파이썬이 처음이신 분들은 조금 어려울 수도 있습니다. 모든 코드가 파이썬으로 되어 있고 그래프 그릴 때 사용하는 matplotlib를 설치해야하기 때문입니다. 1 잘 설치되면 책의 예제를 따라 위와 같은 로그분포 그래프를 파이썬 코드로 그릴 수 있답니다. ^^

책이 실습위주라서 제 생각에는 최소한 고등학교 수학 선택과정인 확률과 통계 혹은 대학교양수업으로 통계학을 들어본 적이 있어야 읽기에 부담이 덜 할 것 같습니다.

마무리하면서, 이 책의 핵심은 예제의 코드를 돌려보고 결과를 눈으로 보는 것 입니다.  따라서 재미있게 따라해 볼 수 있는 반면에 통계이론에 대한 내용 생략이 많습니다. 주로 위키피디아 참조를 많이 하지요. (저처럼) 통계이론의 빠른 리뷰나 복습용으로는 적절치 않습니다. 오히려 기본 통계공부를 마친 뒤에 실제 활용측면에서 이 책이 빛을 발할 것 같습니다.

모든 프로그래머가 꼭 통계를 공부할 필요가 있는 것은 아니지만, 통계가 필요한 프로그래머에게는 기본적인 통계 공부 후 실습 교재로 Think Stats이 적절한 책이 아닌가 생각해 봅니다.

Notes:

  1. 책에서는 이런 부분에 대한 설명은 없어서 저는 구글링을 통해서 설치법을 찾아서 matplotlib를 설치 했습니다.

Think Stats, 한빛미디어 프로그래머를 위한 통계 학습

통계학이 학문세계에서 조미료처럼 안 쓰이는 곳이 없다보니 일부로 아껴두었다가 학부 4학년때 통계학을 수강했다. 하지만 시간이 꽤 지나고 난 지금 통계를 자주 활용하는 것은 아니다보니 기억속에 남아 있는 통계지식은 점점 사라져 간다.

Think Stats 표지

그런데 간간히 개발을 하다 보면 통계적 지식이 필요한 일이 있다. 그렇다고 학부 때 공부한 교재를 꺼내서 보자니 수식과 이론 중심의 내용은 귀찮고 시간이 많이 든다. 다행히 통계공부의 필요성을 늘 가지고 있던 찰나에 한빛리더스 7기의 리뷰 도서중 “Think Stats”이 보여 선택하게 되었다. 무엇보다 부제 “프로그래머를 위한 통계 및 데이터 분석 방법”이 딱 나한테 맞는 적절한 내용일 것 같았다.

Think Stats 실물 표지

이북을 다운 받아 아이패드에 넣어서 저자와 역자의 서문을 훑어보았다. 이 책은 대학에서 전산을 가르치는 Allen B. Downey가 쓴 “Think Stats” 를 번역한 것이다. 저자는 종래의 통계 도서를 전혀 보지 않고 전산 전공자 입장에서 어떻게 통계에 접근할 것인가를 고려하여 책을 썼다고 한다.

think_stats_comp저자는 누구나 자유롭게 공부할 수 있도록 내용을 공개하기를 원하여 홈페이지에서 영어 원문을 직접 다운받을 수 있도록 했다. 또한 페이스북 페이지도 운영하고 있어서 여기서 다른 정보도 얻을 수 있도록 한다.

구체적인 책의 내용은 전산전공자를 위해서 프로젝트 중심으로 파이썬을 통해서 진행하는 것 같다. 수식과 계산에 짓눌리지 않고 공부한 내용을 프로그래밍을 통해서 바로 확인할 수 있을 것 같아 재미있는 통계 공부가 될 것 같은 기분이다.

내용은 이북 사이즈로 전체 160 페이지라서 기억이 희미해지면 복습하기에도 부담없는 분량이다. 오늘부터 약 2주간 빠르게 읽어보면 좀 더 이 책의 매력을 알 수 있을 것 같다. 자 통계의 바다로 빠져보자!

Angular JS 기초편 eBook 리뷰

제목: Angular JS 기초편

한빛미디어에서 받은 Angular JS 기초편 eBook을 읽고 난 뒤에 느낌을 먼저 한 문장으로 요약해 보겠습니다.

요약: Angular JS 기초편은 마실 겸 뒷동산에 올랐다가 가파른 경사와 언덕을 만나 탈진할 수도 있는 책

AngularJS기초편 표지

책은 총 4장으로 구성되어 있습니다. 1장은  몇 가지 짧은 코드의 예제를 통해서 Angular JS만의 장점을 보여주는데 그다지 어렵지 않게 Angular JS의 기능들을 맛볼 수 있습니다. 짧은 1장의 내용에서 다음 장에 대한 기대를 주지요. 기존에 웹 프레임워크를 활용해서 개발해 본 적이 없는 분들도 1장은 쉽게 따라하실 수 있습니다.

2장에서 좀 더 깊게 Angular JS만의 기능들을 설명합니다. 데이터 바인딩, 지시어와 같이 Angular JS의 멋진 기능들을 설명하는데요. 이 부분은 다소 내용이 어렵습니다. 기능에 대한 설명보다 Angular JS의 장점을 설명하는데 포커스가 있다는 듯한 느낌이 강합니다. 저처럼 웹프레임워크를 이용한 개발이 익숙치 않은 분들에게는 조금 어려운 내용들이 많습니다. ajax나 자바스크립트에 대한 선이해도 필요합니다. 그래도 2장까지는 집중해서 여러 번 읽으면 Angular JS를 맛보는데는 좋은 역할을 합니다.

3장에서 본격적으로 anuglar를 활용해서 웹 어플리케이션을 개발하기 위한 도구와 방법을 안내합니다.  그러나 여기서부터 문제가 발생합니다. ㅠ 일단 이 책에서는 angular를 활용하기 위해서 yeoman이라는 툴을 사용합니다. 그런데 책이 쓰여진 시점 이후로 yeoman이 상당히 많이 바뀌었습니다. 따라서 책의 쉘명령어가 작동하지를 않습니다.

우선 yeoman을 설치하려면 107쪽에 나와있는 curl을 통한 설치는 더이상 제공되지 않고 npm이 필요하므로 Node.js를 먼저 설치해야 합니다. 자세한 설치 방법은 공식사이트를 참고해야 합니다. yeoman을 설치하고 나서 책과 달라진 명령어를 몇 개 소개하면 다음과 같습니다.

  • (angular 프로젝트 생성) yeoman init angular -> yo angular
  • (루트 추가) yeoman init angular:route home -> yo angular:route home
  • (테스트 실행) yeoman test -> grunt test
  • (프로젝트 빌드)yeoman build -> grunt build

마지막으로 4장에서는 하나의 예제를 통해서 angular JS를 활용한 앱의 숲을 볼 수 있도록 해줍니다. 하지만 역시 아쉽게도 1~3장에서 angular에 대해서 수박 겉핡기 식으로 훑고 나서 갑자기 4장에서 앱 하나를 통쨰로 설명하는 내용이 나타나니 이 역시 조금 버거운 느낌입니다.

본래 이 책은 Angular JS 원서를 두 번에 나누어 1~4장은 기초편으로 5~8장은 활용편으로 분리되어 국내에 출판된 것으로 압니다. 기초편에서는 angular JS에 대한 이해를 돕는데 초점을 두고 자세한 설명은 활용편으로  넘기고 있습니다. 따라서 기초편만 가지고는 angular JS를 온전하게 이해하는 데는 어려움이 다소 따릅니다. 따라서 이 책 하나로 angular JS를 이해하려는 기대는 조금 접어두시기를 부탁드립니다. 대신 angular에 대해서 잘 설명해 준 블로그 하나를 안내합니다.(클릭!)

개인적으로 웹에 관심이 없다가 최근에 웹 프레임워크가 다양해지고 발전하게 된 것을 보면서 조금씩 다시 배우고 있는데, angular는 최근 웹 프레임워크의 경향을 이해하는데 도움을 주었습니다. 물론 제가 위에서 평한대로 이 책 하나로는 angular를 온전하게 이해할 수 없습니다. 제안드리는 것은 한글로 먼저 이 책을 빠르게 훑어보고 angular의 공식 사이트의 튜토리얼을 차근히 따라가는 것을 제안해 봅니다. 마지막으로 대우정보통신 블로그에서 정리한 angular JS를 활용한 대규모 웹 개발 관련 블로그도 함께 링크를 남깁니다.(클릭!)

[한빛리더스 7기 활동] Angular JS 기초편 Ebook 받다!

한빛미디어에서 수행하는 한빛리더스 7기 활동을 이번 가을에 하게 되었습니다.
oakley protective eyewear
이전에도 한빛미디어에서 이북을 두권 구매해서 읽은 경험이 있어서 그런지, 이번에 “스마트 미디어 그룹”에 소속되어 한빛미디어에서 출판되는 이북을 읽고 리뷰를 남길 수 있는 기회를 얻었네요 ^^
air max 90s
AngularJS기초편 표지
prescription oakley sunglasses
첫 번째 미션도서로 받은 이북은 바로 “Angular JS 기초편“입니다. 이 책을 선택한 이유는 첫째는 웹프레임워크에 대한 관심 때문이었고, 둘째는 어떻게 하면 생산성 높은 개발을 할 수 있을지에 대한 고민 때문입니다.
air max 95
이전에도 한빛미디어의 Realtime 시리즈 이북을 구매했을 때와 같이 이북으로 보기 적절한 분량과 시원시원한 폰트 구성 등 이북에 최적화된 출판이 맘에 듭니다. 오라일리 출판사하면 떠오르는 특유의 온갖 생물체(?) 표지 디자인처럼  Realtime 시리즈가 표지디자인이 통일성을 갖추고 있어서 소유욕도 불러 일으키네요.
oakley script sunglasses
자 이제 앞으로 AngularJS 기초편을 차근 차근히 읽어보면서 학습 겸 리뷰를 진행해 보고자 합니다.