코딩 트레이닝: 새로운 언어를 배울 때 다시 풀어보는 57개 연습문제

 

입체_small

멀고 먼 수련의 길

연주회를 앞둔 피아니스트는 더욱 더 완벽한 연주를 위해 같은 곡을 수없이 다시 연습하고 기술을 연마합니다. 축구 선수는 날마다 체육관에서 체력을 단련하고 운동장을 달리고 과거 경기 영상을 돌려보면서 자신의 장단점을 분석합니다.

소프트웨어 개발자들도 이와 비슷한 방식으로 자신의 코딩 능력을 키웁니다. 거듭해서 코드를 짜고 좀 더 간단하게 만들기 위해 고민하고 다른 접근법은 없을까 생각해 보는 거죠. 고수가 되는 길은 이리도 멀고 험합니다~!

 

스스로 생각하는 프로그래밍

이 책은 초급 프로그래머에게 문제를 코드로 만드는 방법을 알려주고 문제를 제시합니다.

많은 초급 프로그래머가 비슷비슷한 책으로 프로그래밍을 배우기 시작합니다. 약간의 코드를 직접 타이핑해보면서 따라하는 방식이죠. 물론 좋은 학습법입니다. 하지만 이런 방식으로만 공부하면 실제 현장에서 맞닥뜨리는, 해결 방법이 나와 있지 않은 문제를 만나면 당황하게 됩니다. 『코딩 트레이닝: 새로운 언어를 배울 때 다시 풀어보는 57개 연습문제』는 실전 경험이 부족한 초보자의 문제 해결 능력을 키워줍니다. 저자인 브라이언 호건은 대학 강의에서 이 문제들을 활용하고 있다고 합니다. 스스로 생각해서 문제 해결 방법을 찾아가도록 훈련시켜주기 때문에 새로운 문제를 만났을 때 그 문제에 맞설 자신감을 심어줄 것입니다.

 

새로운 언어를 배울 때마다 다시 풀어보자

숙련된 프로그래머라면 이 책을 더 잘 활용할 수 있습니다.

하루가 다르게 기술이 발전하고 그와 함께 새로운 언어가 쏟아져 나오는 지금의 개발환경에서 새로운 언어들을 익히는 것은 선택이 아니라 필수가 되었습니다. 그뿐 아니라 새로운 언어를 익히면 문제에 접근하는 새로운 시각을 배울 수 있고 사고의 지평을 넓힐 수 있기 때문에 프로그래머에게 꼭 필요한 공부법이라고 할 수 있죠. 저자는 숙련된 프로그래머들이 새로운 언어를 공부할 때 이 책의 문제를 거듭해서 다시 풀어보기를 권하고 있습니다. 저자 자신도 Go와 Elixir를 공부할 때 이 책의 프로그램을 작성해보았다고 합니다. 또 자신이 이미 잘 안다고 생각한 자바스크립트와 루비로 이 책의 연습문제를 풀어보니 지금까지 제대로 이해하지 못한 부분이 어디인지 발견할 수 있었다고 하네요.

 

매년 새로운 언어를 최소 하나는 배워라.

다른 언어는 동일한 문제를 다르게 푼다. 몇 개의 서로 다른 접근법을 알면 사고를 확장하고 판에 박힌 사고에 갇히는 걸 예방하는 데에 도움이 된다.

실용주의 프로그래머중에서

앞으로 프로그래머는 어느 하나의 언어에 안주할 수 없다. 패러다임을 달리 하는 여러 언어를 자유롭게 구사하지 않으면 살아남을 수 없는 폴리글랏 프로그래밍의 시대가 되었기 때문이다. 자신의 포트폴리오를 어떤 언어로 구성하는지는 각자의 몫이다. 하지만 앞으로는 프로그래머가 어떤 언어에 대해서 얼마나 많이 알고 있는가 하는 것이 아니라 어떤 언어를 얼마나 빠르게 학습할 수 있는가 하는 것이 더 중요하다는 점을 기억하기 바란다.

임백준의 대살개문중에서

 

아는 만큼 보이는 문제! 초급자도 숙련된 프로그래머도 도전해보자!

이 책의 연습문제는 프로그램 작성 시 따라야 하는 몇 가지 제약 조건과 프로그램을 작성한 다음 추가로 진행할 수 있는 도전 과제를 포함하고 있습니다. 초보 프로그래머라면 우선 도전 과제는 건너뛰고 진행해도 되고, “이정도의 문제는 너무 쉽지~”라고 생각하는, 경험이 많은 프로그래머라면 도전 과제와 제약 조건들을 적용해서 문제를 풀어보시면 됩니다. 어떤 언어를 선택하느냐에 따라 연습문제 중 일부는 굉장히 어려울 수도 있으니 너무 만만하게 보지는 마세요!

이 책에서 만들어보는 연습문제에는 다음과 같은 것들이 있습니다.

  • 단어 빈도 탐색
  • 카드 대금 상환 기간 계산
  • 웹 서비스를 이용한 날씨 안내
  • Todo List
  • 혈중 알코올 농도 계산
  • 천장에 바를 페인트 양 계산

 

연습, 연습, 또 연습

반복된 훈련은 코딩 기술을 높이는 가장 효율적인 방법입니다. 실생활의 문제 해결을 위해 어떤 언어로 어떻게 코딩할 것인가를 고민하고, 여러 프로그래밍 언어로 같은 문제를 거듭 풀어보면 지금까지의 생각의 틀에서 벗어나 더 넓게, 더 멀리 볼 수 있는 고수 프로그래머가 될 수 있을 거예요!

또 한 가지! 주변 동료나 친구들과 서로 문제 풀이를 공유해 보세요. 프로그래밍의 가장 큰 매력은 사람마다 문제 해결 방법이 다르고 개발자마다 각자의 스타일이 있다는 점이니까요!

『코딩 트레이닝: 새로운 언어를 배울 때 다시 풀어보는 57개 연습문제』는 다음 서점에서 구입하실 수 있습니다.

[ Yes24 ] [ 교보문고 ] [ 알라딘 ] [ 인터파크 ]

데이터 과학에 필요한 기초 이론과 프로그래밍, 두 마리 토끼를 모두 잡는 기본서

표지입체

데이터 과학이나 머신러닝 같은 용어가 더이상 낯설게 느껴지지 않는 요즘! 알파고 이후 더 뜨거워진 관심 속에서 데이터 과학을 배울 수 있는 책이나 각종 자료가 쏟아지고 있는데요. 그중엔 엑셀처럼 익숙한 소프트웨어로 비교적 쉽게 데이터 과학의 맛을 볼 수 있는 콘텐츠도 있는가 하면, 수학과 통계 수식이 가~득한, 학문적으로 깊이 다루는 책들도  있습니다. 인사이트에서 새로 소개하는 데이터 과학 신간은 후자에 가깝습니다. 하지만… 잠깐! 혹시 벌써 지루할 것 같단 생각에 ‘뒤로가기’를 누른다면 넘나 성급하신 것!

추천사1

데이터 과학은 프로그래밍, 수학 및 통계에 대한 지식, 도메인 전문성의 교집합이라고 합니다. 프로그래밍 언어 하나도 제대로 하기 어려운데, 확률, 통계, 선형대수 등에 대한 이해까지-! 아마 데이터 과학에 막 관심을 갖고 배워보려는 분이라면, 뚜껑 한번 열어보고 막막함을 느끼지 않을까 싶습니다. 여러 학문이 어우러진 분야인 만큼, 데이터 과학에 바탕이 되는 이론이나 정의를 하나하나 살펴보는 것은 결코 만만치 않습니다. 전공자나 실무에 있는 데이터 과학자 중에서도 데이터 과학의 핵심 방법론을 다시 한번 살펴보긴 해야할텐데…하고 마음의 짐으로 남겨 두고 있는 분이 계실 것 같습니다.

모르는 척 넘어가고 싶었지만 때마다 발목을 잡는 기초. 배우는 김에 제대로 해보고 싶지만 도무지 어디서부터 해나가야 할지 감 잡기 어려운 데이터 과학의 기본! 이번엔 좀 제대로 파악해 보고 싶단 생각이 불쑥불쑥 떠오른다면! 새로운 데이터 과학 기본서, ‘밑바닥부터 시작하는 데이터 과학’을 추천합니다.

  • 이 책의 대상 독자
    – 데이터 과학에 필요한 기초와 프로그래밍 두 마리 토끼를 모두 잡고 싶은 전공자
    – 수학·통계학 이론이 녹아 든 데이터 과학 관련 알고리즘을 살펴보려는 데이터 과학자
    – 데이터 분석에 필요한 수학·통계학 이론을 살펴보려는 프로그래머

‘밑바닥부터 시작하는 데이터 과학’은 파이썬 프로그래밍으로 데이터 과학을 어떻게 하는지 알려주는 기본서입니다. 이 책은 데이터 과학을 시작하는 데 필요한 프로그래밍 실력을 키워 주고, 데이터 과학의 핵심 방법론에 익숙해지도록 도와 주는 데 목표를 두고 있습니다. 파이썬은 데이터 과학에서 대단한 위용을 자랑하는 프로그래밍 언어입니다. 수많은 사용자에게 사랑을 받고 있는 만큼 데이터 분석과 처리를 더 효율적으로 할 수 있게 도와주는 Numpy, pandas 등 전문화된 도구가 아주 많습니다. 실무에서는 이런 도구를 사용하지 않고 데이터 과학을 한다는 것은 상상하기도 어려울텐데요. 하지만 기초를 배우고 싶어 책을 집어 든 분이라면! 이미 잘 만들어진 도구를 어떻게 쓰는지에 대한 것보다는, 직접 코딩을 해보면서 ‘바닥부터’ 데이터 과학을 배워나가는 것만큼 데이터 과학을 잘 들여다 볼 수 있는 방법이 또 있을까요? 🙂

하지만.. 코드 작성법부터 하나하나 배우고, 각종 통계 이론이나 수식을 들여다보는 과정은 생각만으로도 꽤 지루합니다. 하지만 너무 걱정 마세요! 이 책은 자칫 지겹게 들리기 쉬운 바닥부터의 구현 과정을, 미션 수행하듯 흥미로운 예제를 통해 녹여냈습니다. 여러분은 이 책의 첫 장을 펼침과 동시에, ‘데이텀 주식회사’의 책임 데이터 과학자로 임무를 다하게 될 것입니다. 동기부여를 위한 상상이 깔린 예제로 인해 부담 없이 파이썬 프로그래밍과 데이터 과학 기초를 배울 수 있고, 통계학이 데이터를 분서하는 코드에 어떻게 녹아있는지, 어떤 방법론으로 데이터를 분석해야 할지 등을 좀 더 재미있게 배워 나갈 수 있습니다.

추천사21. 데이터 과학을 위한 파이썬 속성 강좌!

다양한 형태로 수집되는 데이터는 엑셀과 같은 툴을 사용해서 표현하기에는 한계가 있습니다. 따라서 이 책에서는 파이썬을 사용해 데이터를 분석하고 처리하는 법을 배웁니다. 파이썬을 잘 몰라도 괜찮습니다. ‘데이텀 주식회사’에 출근한 첫 날, 회사에서 어색하게 주변을 살피고 있을 여러분을 위해~ 파이썬 속성 강좌가 준비되어 있습니다. 파이썬 속성 강좌는 파이썬 프로그래밍에 익숙하지 않은 독자를 위해 기본적인 사용법을 정리했습니다. 이 강좌는 언어의 모든 개념을 종합적으로 소개하기보다는, 파이썬으로 데이터를 다룰 때 꼭 알아야 할 중요한 내용 위주로 담겨 있습니다. 다만 이 책은 파이썬 입문서가 아니기 때문에 프로그래밍 자체에 익숙치 않은 분이라면, 기초를 차근차근 짚어 주는 책을 함께 보시면 더 좋을 것 같습니다. 🙂

표지앞
#인사이트에_밑바닥부터_배우는_파이썬_책도_있습니다 #틈새광고

2. 수식을 겁내지 마세요!

모르는 척 하고 싶고, 책을 덮어버리고 싶게 만드는 각종 수식. ‘밑바닥부터 시작하는 데이터 과학’에는 수식과 여러 통계 이론이 담겨 있지만, 이 책은 수학 책이 아닙니다. 데이터 과학에 필수적인 기본 수학/확률 지식은 다루지만 이론과 공식 자체를 들여다 보기보다는, 수학적 아이디어를 프로그래밍으로 어떻게 풀어 내는지에 더 중점을 두고 있습니다. 이를 통해 여러분은 핵심 아이디어와 구현 방법을 이해할 수 있습니다.

추천사3

데이터 과학에 대한 호기심과 의지만 있다면, 이 책을 따라 데이터 과학자로서의 한걸음을 내딛어 보세요. 도전하는 분들께 좋은 길잡이가 되어 줄 책이 되길 바랍니다. 😀  신간은 아래 인터넷 서점에서 구입하실 수 있습니다.

>> 『밑바닥부터 시작하는 데이터 과학』 미리보기

[ Yes24 ] [ 교보문고 ] [ 알라딘 ] [ 인터파크 ]