Hello Coding 그림으로 개념을 이해하는 알고리즘 Hello Coding
아디트야 바르가바 지음, 김도형 옮김 / 한빛미디어 / 2017년 4월
평점 :
장바구니담기


책을 덮고 나니, 전공으로 알고리즘을 배우던 시절에 이 책이 있었다면 얼마나 좋았을까 하는 생각부터 들었다. 그만큼 알고리즘이란 개념을 쉽게 알려 주는 입문서다. 컴퓨터공학을 전공하게 된 대학생이라면 알고리즘 강좌를 꼭 들어야 할 텐데, 학기 전 방학이면 넉넉히 읽겠고, 수강신청한 다음에 읽기 시작했다 해도 중간고사 전에 실습까지 하며 완독할 만하다.

 


입문서의 입문서라고 해도 좋겠다. 다만 이 책이 다루는 범위가 작다기보다는 전공서적으로 쓰이는 책들의 수준이 학부생을 잡던 수준이다. 교수님들도 대개 스스로 잘 아는 사람들이지 멘붕에 빠진 학생들을 잘 가르치는 사람들이 아닌 때가 많기에 이 책은 소중하다.

 

전공교재의 연습문제와는 확연히 다르게 이 책의 연습문제는 해설이 친절하다. 가족여행을 하며 짬짬이 읽으면서도 코딩을 해야 하는 문제 외에는 책 내용을 되새기면서 풀 수 있는 수준이다. 아예 연습문제 해답에도 책갈피를 두고 빠짐 없이 재미있게 풀었다.

 


Python으로 코딩해야 하는 연습문제가 있지만 파이썬을 모른다고 해도 큰 지장은 없다. 대개의 로직은 pseudo code 정도로서 복잡하지 않게 보이려고 저자가 고심한 흔적이 보인다. 앞서도 입문서의 입문서라고 얘기했듯이 보통 전공서적의 예제 소스는 개인적으로 참 이해하기가 힘들었는데, 이 책의 예제 소스는 보기가 편하다. 길게 쓰지도 않았는데 각 알고리즘을 구현해 낸다. 정렬 같은 거야 그렇다 치지만 다익스트라 알고리즘 같은 것도 소스가 길지 않은 게 신기했다. Python의 특징인지 저자의 내공인지는 잘 모르겠다.

 

이 책은 코딩에 대한 감이 떨어진 IT 종사자들에게도 좋다고 본다. 빅데이터나 인공지능 같이 유행하는 IT 주제에 대해 고객이 물었을 때, 개념 설명은 친절하게 해주다가 더 자세히 알려면 이런 저런 알고리즘에 대한 기반지식을 알아야 한다고 으쓱해 하며 얘기할 수 있달까?

 

입문자에게도 마찬가지다. 알고리즘 강좌를 들을 때, 대체 어디에 쓰이는 건지에 대해서는 잘 이해하지 못했는데, 이건 게임에 쓰이고 저건 빅데이터 기술이고 상품 추천에는 저런 게 쓰인다는 배경설명을 보고 나면 머리 골치 아플 알고리즘을 배우는 데에 보람이 생길 것이다.

 

이 책의 마지막 장은 IT 업계에서 길게는 수십 년 이상 사용한 알고리즘부터 빅데이터 플랫폼에 주로 쓰이는 Hadoop에 쓰이는 알고리즘, 대형 웹 사이트에서 성능 향상을 위해 쓰는 알고리즘 등을 거쳐 산업현장의 최적화에 쓰는 알고리즘까지 흥미로운 도전과제를 던지며 끝난다. 심심할 일은 없는 세계에 온 걸 환영한다는 의미로도 보였다.


책에 대한 상세 정보는 한빛미디어 홈페이지 http://www.hanbit.co.kr/store/books/look.php?p_code=B5896248244에서 확인하길 바란다.


댓글(0) 먼댓글(0) 좋아요(2)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
코드로 인프라 관리하기 - 효율적인 인프라 관리를 위한 자동화 방법
키프 모리스 지음, 강재준 옮김 / 한빛미디어 / 2017년 3월
평점 :
구판절판


산전수전 겪은 전문가의 친절한 설명이라 초보가 1번 읽고 소화하지는 못하겠지만 두고 두고 참고할 만합니다.

댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
코드로 인프라 관리하기 - 효율적인 인프라 관리를 위한 자동화 방법
키프 모리스 지음, 강재준 옮김 / 한빛미디어 / 2017년 3월
평점 :
구판절판


서버가 가상까지 합쳐 백 대가 좀 넘는 규모의 전산실에 있었을 때, 인프라 부문의 동료들은 VB Script로 윈도 서버들을 잘 다루었다. 회사 규모가 커지면서 물리, 가상 할 것 없이 서버들이 그침 없이 많아지자 너무 힘들어 했던 모습이 기억난다.


인스타그램이 페이스북에 인수될 때 전 직원이 12명이었다는데, 사용자가 3천만 명이나 되었던 서비스의 인프라 담당직원은 다섯 명 안짝이었을까? 다들 수퍼맨이었을 리는 없으니 인프라 자동화 수준이 꽤나 높았던 모양이다. 전산실 시절 인프라 담당 동료나 사내 클라우드팀원과 센터 팀원의 노고를 옆에서 보아온 경험을 토대로 가늠하자면, 인프라 자동화 기술 보유자는 한국에서도 억대 연봉을 쉽게 받을 수 있지 않을까 싶다.

 

한빛미디어에서 내놓은 <코드로 인프라 관리하기>는 인프라 자동화 기술의 A부터 Z까지 다룬 입문서다. 내가 아는 한 2017년 기준으로 인프라 자동화의 모든 것을 다뤘지만, 바이블보다는 입문서에 가깝다. 초보자가 이 책에 있는 내용만 가지고 인프라 자동화로 당장 뭔가 시도해 보기는 어렵다.

 

이 책의 뒤표지를 보면, 관련도서로 <클라우드 시스템을 관리하는 기술>, <오픈스택 인 액션>, <웹 엔지니어가 알아야 할 인프라의 기본>이라는 책들을 소개한다. <코드로 인프라 관리하기>를 다 읽고 나니 저 책들을 왜 소개했는지 알 만했다.

 

그렇다고 객체지향 프로그래밍에서 객체를 논하듯 추상적인 내용을 다루는 건 아니다. 인프라 운영에 있어 산전수전을 다 겪은 선배가 '이제부터 여기에서 네가 할 일이 뭔지 전부 알려주마'하며 한두 달 OJT를 해주는 느낌이랄까? 솔직한 실수담까지 곁들인 OJT를 다 받으면 비로소 업무를 시작하게 되니, 이 책은 출발점이자 이정표이자 로드맵이 되주는 셈이다. 이 책에 나온 각종 기술과 절차에 다 익숙해진다면 앞서 말했던 억대 연봉 엔지니어도 빠른 시간 내에 될 수 있을 거라 감히 강조하는 바이다.

 

<코드로 인프라 관리하기>는 세 파트로 나뉘었다.  파트 1 '기초'는 인프라 자동화의 당위성과 함께 인프라 자동화를 가능하게 한 기술과 도구를 설명한다. 파트 2 '패턴'은 인프라 자동화의 전술을 설명한다. 상대적으로 다른 파트에 비해 짧으면서도 꽤 공격적인 혹은 이상적인 목표를 다룬다. 과연 한국에서는 저 정도로 하는 곳이 있을까, 실리콘밸리는 정말 저 정도까지 하는 건가 싶었다. 파트 3 '관례'는 서비스 지속, 백업, 재해복구, 보안의 비기능적 요소 외에도 인프라 바깥의 주제를 많이 다룬다. 특히 개발 배포에 대해 비중을 많이 두어 살짝 놀랍기까지 했다. 생각해 보니 인프라를 구축하고 운영하는 이유는 사용자(1)에게 서비스를 제공하기 위해서이다. 서비스를 구현하는 개발에 인프라가 밀착 지원하는 게 데브옵스 운운하지 않더라도 마땅하고 옳은 일이다. 심지어 인프라 운영자도 고객 페르소나를 알아야 인프라를 최적화할 수 있다는 대목에서는 깨달음을 얻은 듯했다.

 

인스타그램 첫 버전을 만드는 데에 고작 8주가 걸렸다고 한다. 필터 기능 추가나 사용자 폭증 등 갖가지 사안에 인프라는 지체 없이 대응해야 했을 것이다. 2017년은 빨리 구현하고 최종사용자의 냉혹한 검증을 받아 빨리 방향을 수정해야 하는 속도 우선의 시대다. 비즈니스의 요구에 적시 대응하기 위해서는 부지런함만으로 부족하다. 가상화, 퍼블릭/프라이빗/하이브리드 클라우드, 마이크로 서비스, 도커 등을 제때에 엮어내고 무탈하게 운영할 줄 알아야 한다. <코드로 인프라 관리하기>를 계기로 이 시대가 요구하는(2) 시스템 엔지니어가 되는 길에 한 걸음 나아가 보는 것도 의미가 있겠다.

 

(1) 내외부 고객
(2) (한국이라면) 요구할?


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
이것이 우분투 리눅스다 - 설치부터 서버 & 네트워크 관리까지
우재남 지음 / 한빛미디어 / 2017년 2월
평점 :
구판절판


주로 Windows Server 환경에서 일하며 리눅스에서는 ftp(1) 정도만 써오다가 빅데이터 일을 하게 되면서 리눅스를 자주 접하게 되었다. 이런 저런 기능이 당연히 리눅스에 있을 텐데 하며 구글 검색을 하다 보니 vi 쓰는 것부터 작업효율이 나지 않을 때가 잦았다. Linux 문서야 인터넷에 많지만 모르는 내용이 나올 때마다 가지 치듯 구글 검색을 이어 하기는 녹록치가 않았기 때문이었다. 전문교육을 받기 힘든 상황에서 어찌 할까 싶던 차에 우연히 한빛미디어의 <이것이 우분투 리눅스다>를 만났다.


출판사 홍보문구는 '개인 사용자에게 최적화된 우분투 리눅스로 리눅스 초보 탈출'이면서, 표지에는 '설치부터 서버와 네트워크 관리까지'를 내세워서 이게 뭔가 싶었는데, 표지 쪽 얘기가 책 내용에 부합했다. root 계정이 뭔지 모르는 생초보가 읽을 때에는 장벽이 좀 있고, 나처럼 윈도 같은 다른 OS에 익숙하거나 제로보드를 다뤘다든가 하는 약간의 경험이 있는 사람이 마음 먹고 리눅스를 제대로 익히기에는 적당하다.



목차를 처음 봤을 때에는 내용이 이렇게 방대해도 되나 싶었다. SSH, FTP 설치 정도는 어려울 게 없지만 메일 서버, 방화벽, PXE 류는 초보 입장에서는 머리가 아플 게 뻔하다. 특히 6장에는 RAID 구성이 나오는데 초보자들은 좌절 좀 하지 않을까 한다. 생초보 독자는 6장이 이해가지 않으면 대충 넘어가길 권한다.(2) 뒷내용들이 리눅스 익히기에 당장은 더 중요하다. 다른 게 잘 이해가기 시작했을 때에 다시 꺼내 보면 좋겠다.


1장부터 부록까지 허투루 작성한 장은 없다. 나 또한 사용자 교재, 운영자 설명서, 인수인계서를 썼던 터라 한 단계 한 단계 설명을 풀어나간 이 책이 꽤 놀라웠다. 책에서 다루는 주제들이 절대 쉽지 않아도, 독자가 기본지식이라는 걸 알고 있거나 말거나 그대로 따라 할 수 있도록 만들었기에, 집중력 있거나 인내력 있는 독자(3)는 완독하기가 어렵지 않다.(4)

완독에 이르는 길을 막는 장벽이 하나 더 있긴 하다. VM(가상 머신) 여러 대를 한번에 쓰는 실습이 꽤 있는데, VM을 써봤던 사람들도 대개는 여러 대를 한번에 쓰는 구성에는 생소한 편이다. 설정항목 한두 개를 놓치면 어디가 빠졌는지 알기 힘들어 처음으로 돌아가야 하는 때가 좀 있을 것이다. 내가 그랬다. 책 초반에 나오는 VM 구성 때에 IP 주소 등을 (VM 정도는 전에 많이 써봤답시고) 자기 마음 대로 설정해 버리면 나중에 고생한다. 초반에 만든 VM을 몇 번이고 초기화 해서 쓰게 되니 처음 만들 때에 잘 만들어야 정신건강에 좋다.

다행히 네이버 카페유투브 동영상이 있어서 독학하는 독자를 내버려 두지 않는 점이 이 책의 큰 미덕이다. 좌절하거나 헤매는 리눅스 초보 독자는 꼭 카페 커뮤니티와 영상을 활용하길 바란다. 이 책에 나오는 내용을 '대략' 다 할 줄 알는 사원급 직원은 사랑 받을 만하다. 이 책은 그 정도로 넓은 영역을 다룬다.

다 읽고 보니 7장 '셸 스크립트 프로그래밍'의 분량이 좀 짧지 않나 싶기도 했다. 시스템 운영자에게 어지간한 설치작업 이상으로 셸 스크립트 프로그래밍은 중요하다. 단순화 하자면 중고급의 갈림길이기 때문이다. 저자 역시 이 부분은 중요하므로 다른 책을 더 찾아보고 수준을 높이길 권장한다.(5) 7장 뿐만 아니라 여러 장이 출발점에 속한다. <이것이 우분투 리눅스다>는 출발점 역할을 해주기에 충분하다.


  1. 제로보드나 상용 솔루션 빼고.
  2. Hadoop/NoSQL 일을 한다면 RAID와 LVM의 역할까지는 숙지하면서, OS 영역은 RAID 구성, 데이터 저장소 영역은 LVM으로 구성하면 좋다는 정도로만 알고 넘어가도록 하자.
  3. 둘 중 하나만 있어도. ^^
  4. 각 장마다 책 대로 결과가 나왔지만 자기가 뭘 한 건지 모를 수는 있겠다.
  5. 이 책이 더 두꺼워져서는 쓰는 사람, 읽는 사람, 파는 사람에게 다 곤란할 만하다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
우등생 해법 시리즈 세트 4-2 - 전4권 (2015년) - 국어.수학.사회.과학 초등 우등생 해법 시리즈 2015년
천재교육(참고서) 편집부 엮음 / 천재교육 / 2015년 6월
평점 :
구판절판


아이가 좋아하여 매번 구매하는 문제집이예요~ 굿~

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