세상에서 제일 친절한 엑셀 - 지금 당장 시작하는 엑셀 업무 활용, 읽기만 해도 단숨에 실력이 쌓인다!, 개정판 세상에서 제일 친절한 엑셀
박재영 지음 / 한빛미디어 / 2021년 6월
평점 :
장바구니담기




잘하고 못하고를 떠나 다들 엑셀 한 번쯤은 접해봤을 것이다. 간단한 보고서 작성,  시장 분석, 매출 보고, 사업계획서, 등 업무 관련 각종 서류 작성에 아주 유용하다. 많은 데이터 통계처리에도 편리하고 그것을 각종 그래프로 표현할 때도 무척 편리하다 


일반 업무뿐만 아니라 더욱 다양한 프로그램 데이터 처리에도 쓰이고 있고 공장의 자동화 장비 측정 결과 또는 생산 데이터 저장에도 엑셀 파일이 쓰인다. 


그만큼 엑셀을 제대로 배워 두면 여기저기 쓸 곳이 참 많다 그래서 많은 사람이 엑셀을 배우고 자격증도 준비하는데 워드나 파워포인트와 형태도 다르고 수식이나 그래프 같은 것들 많이 나와서 그런지 많이들 어려워하는 거 같다.


내 경우엔 프로그램 짤 때 복잡한 계산식이 들어가 있는 경우, 미리 계산해보고 구체적인 알고리즘을 만들 때 쓰기도 하고, 결과 교차 검증 같은 것이 필요할 때도 자주 활용하고 있다. 그러면 무척 엑셀을 잘 할 거 같지만, 제대로 공부하지 않고, 그때그때 필요한 것만, help 또는 인터넷 검색으로 땜방하듯이 익혔다. 그러다 보니, 뭐 하나 작성하려면 여러 시행착오로 인해, 많은 시간이 걸리고 있다.


그래서 최근 시간적 여유도 있고, 엑셀을 좀 제대로 배울 필요도 있어, 엑셀 공부에 도움 될만한 책 찾다가 '세상에서 제일 친절한'이라는 말에 끌려, 뭔가 설명도 자세할 거 같고, 내용도 쉬울 거 같아서, '세상에서 제일 친절한 엑셀'을 보게 된 것이다. 실제 읽어 보면 알겠지만, 책 제목처럼 진짜 설명이 친절한 책이다. 엑셀 사용에 꼭 필요한 내용을 하나씩 조곤조곤 설명하고 있다. 참고로 이 책의 내용은 2010, 2013, 2016, 2019, 355버전 모두 적용된다.




이 책의 첫 챕터만 보고도 내 엑셀 실력이 확실히 엉망이라는 것을 알 수 있었다. 완전 기초도 안되어 있었다. 엑셀 문서 작성 시, 시간 절약에 큰 도움이 되는 단축키를 이제서야 명확히 알게 되었다. 연속된 수나 요일 같은 거를 그동안 어쩌다 되면 그 기능  쓰고 안 되면 무식하게 일일이 입력했었다. 컴퓨터 프로그램을 쓰는 이유가 시간 단축, 업무 효율인데 이 실력으로 지금까지 버틴 게 용하다는 생각마저 든다. 이 책 챕터 1만 제대로 익혀도 얻을 게 많고, 엑셀 사용이 무척 편리해질 것이다.




책 구성을 살펴보면, '시작하기' 코너를 통해 현재 챕터에서 뭘 배울지 개념을 잡고 '원리이해' 파트에서 필요한 기능을 살펴본다. 그리고 이걸 기반으로 여러 개로 나눠진 '본격실습'에서 실제 화면과 설명을 위한 말풍선을 통해 한 단계 한 단계 구체적인 엑셀 기능을 배워 나간다. 이때 관련 예제 샘플은 한빛에서 다운로드하면 된다. 보충 설명 또는 비슷한 기능 설명은 '친절한 Point Note에서 다룬다. 




배운 내용은 '학습점검'에서 간결한 문제 형식의 예제로 확인하고 잘 모를 때 바로 확인하기 좋게 관련 페이지가 적혀 있다. 각 챕터 마지막 구성인 '실무해법'에서는 Q & A 형식으로 배운 걸 좀 더 응용할 수 있게 원포인트 조언을 하고 있다 


내용이 엑셀에 꼭 필요한 개념과 원리를 먼저 이해하게 되어 있어 오랫동안 기억에 남는 편이다. 기본 원리 위에 한층 한층 쌓아 올리는 학습 구조라, 학습 부담도 없다. 학습 진도도 술술 나간다. 


내가 워낙 엑셀 기본기가 없어서 그런지 모르겠으나, 많은 것을 새롭게 알게 되었다. 각종 단축키는 기본이고, 어렵게 작성했던 차트에 대해 더 완벽히 알 수 있었고 편집도 다양하게 할 수 있게 되었다. 엑셀 작성시간, 업무시간 단축도 당연한 결과다. 챕터 하나씩 정복해갈수록 점점 성능 좋은 엔진을 다는 느낌이다. 그만큼 엑셀 실력 업그레이드에 도움이 되는 책이라는 거다.


실무에 엑셀을 자주 다루는 분은 책상 가까운데 놓고 그때그때 참고하면 좋을 것이다. 엑셀 관련 자격증을 따려고 하는데 이해가 잘 안 되는 수험생은 이 책을 보고 나면 이해가 수월해질 것이다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
파이토치로 배우는 자연어 처리 - 딥러닝을 이용한 자연어 처리 애플리케이션 구축
델립 라오.브라이언 맥머핸 지음, 박해선 옮김 / 한빛미디어 / 2021년 6월
평점 :
장바구니담기



음성인식하면 'Her'이라는 영화가 떠오른다. 국내에서는 2014년에 개봉한 영화인데, 시리나 알렉사와 같은 음성인식 서비스와 사랑에 빠진 남자 이야기다. 2019년 코미디 영화 '하이 젝시'도 상황은 다르지만 인공지능을 다룬 비슷한 영화다. 처음 'Her'를 봤을 때는 가능은 하겠지만, 그래도 설마 그런 마음이 있었지만, 지금은 그 '설마'라는 단어가 사라졌다. 그만큼 지금의 음성인식은 빠른 속도로 발전하고 있는 것이다.


우리는 이미 많은 인공지능 서비스를 사용하고 있다. 음성인식을 통해 각종 정보 검색도 하고, 어학도 배우고, 아이들 교육에도 쓴다. 스마트폰에 음성비서 기능은 이제 기본이며, 콜센터를 통한 제품 문의나 예약, A/S 관련한 부분도 음성인식과 문자인식을 통해 서비스가 진행되고 있다. 이와 함께 대표적인 서비스가 번역 일 것이다. 번역 부분은 오래전부터 계속 시도되어 왔는데, 최근엔 확실히 과거에 비해 좀 더 자연스러워졌고, 사진 찍어 바로 번역도 할 수 있고, 유튜브 동영상에 바로 자막으로 볼 수도 있다.


이처럼 언어를 다루는 인공지능 쪽은 사람과 가장 가깝게 만나는 분야이며, 정서적으로도 무척 민감한 분야인 것이다. 그만큼 활용할 곳도 아주 무궁무진한 분야이다. 인공지능에서 이걸 주로 하는 분야가 자연어 처리인데, 내 기준에 있어서 이게 다른 인공지능 분야에 비해 익히기가 쉽지 않다. 일반적인 기계학습이나 이미지 인식과 처리, 문자 인식까지는 그래도 쉬운 편이다. 언어 영역은 여기에 몇 곱절 어려운 거 같다. 그러다 보니 계속 미루고 있던 파트이기도 하다.




사실 자연어 처리 쪽은 어려운 것도 있지만, 다른 분야에 비해 접할 수 있는 책도 무척 적다. 그런데 최신 이론과 논문 등을 잘 정리해서 담은 책이 하나 있어서 이번에 시간을 들여서 집중적으로 봤다. 바로 델립 라오, 브라이언 맥머핸의 '파이토치로 배우는 자연어 처리'라는 한빛미디어 책이다. 




이 책이 자연어 처리 입문 가이드북을 표명하는 책이지만, 어디까지나 자연어 처리 쪽 입문을 말한다고 생각한다. 인공지능이나 프로그래밍 입문을 대상을 하는 책이 아니다. 어느 정도 난이도가 있는 책이다. 최소 파이썬 프로그래밍은 알고 있어야 하고, 인공지능 관련한 지식도 좀 있어야 한다. 그리고 수학이 많이 나오는 것은 아니지만, 그래도 제대로 이해하려면 관련 수학 지식이 약간 필요하기도 하다. 


입문 가이드북이라는 말에 가벼운 마음으로 봤는데, 솔직히 이 분야는 아직 내가 많이 준비가 안 되어 있다는 것을 새삼 느끼게 했다. 차라리 입문 가이드북이라는 생각을 버리고 자연어 처리 개론 정도로 생각하며 읽으면 오히려 보기 편할 수 있을 것이다. 


아울러 인공지능 관련 책을 볼 때마다 느끼는 것이지만, 익숙하지 않은 전문용어들이 많이 등장하는 만큼, 노트 하나 마련해서 용어를 하나씩 적어가며, 정리하는 것이 이 책을 보다 쉽게 이해할 수 있는 길이 될 것이다. 물론 나중에 AI 관련 다른 책을 볼 때에도 많은 도움이 될 것이다.




그리고 '파이토치로 배우는 자연어 처리'는 파이썬을 위한 오픈소스 머신 러닝 라이브러리  PyTorch를 사용하므로 자연어 처리와 함께 파이토치 활용법을 잘 배울 수 있다. 파이토치는 엔비디아 GUP CUDA를 사용해서 보다 빠르게 처리할 수 있다. 텐서플로만 쓰다 처음 파이토치를 써보다 보니, 여러 가지로 색다르게 느껴졌다. 그러나 예제 코드에 설명도 잘되어 있고, 코드 자체가 간단하고 직관적으로 되어 있어 별다르게 어렵게 느껴지진 않는다.


책에서는 전체 9장에 걸쳐 자연어 처리 NLP 소개와 함께 파이토치도 나오고, 신경망 기본 요소, NLP에 쓰이는 MLP, CNN, 시퀀스 모델, 어텐션 기반 모델 등의 딥러닝 구조를 소개하고 있다. 특히 시퀸스 모델링은 초급, 중급, 고급으로 나눠 단계적으로 심화 학습을 한다. 각 장 끝에는 참고문헌들이 나오는데, 비교적 최신의 서적과 논문을 참고한 것을 알 수 있다. 




자연어 처리 예제로 성씨 분류가 많이 나오는데, 이게 이렇게 복잡한 문제였다는 것을 처음 알았다. 이것도 그렇고 책을 다 보고 나서 예제 데이터인 말뭉치가 영어권 언어다 보니, 확실히 한글과는 처리가 많이 다를 수 밖에 없겠구나 크게 느껴졌다. 아울러 한글 자연어 처리에 대한 내용의 아쉬움이 좀 있었는데, 부록에 떡하니 pororo 뽀로로에 대한 내용이 들어 있었다.  번역자가 추가한 것이라 생각되는데, 이 책에서 돋보이는 부분이 옮긴이가 곳곳에 담은 각종 주석과 추가 설명이다. 책 내용 중에 팍팍 넘어가는 부분들이 있는데, 그것을 박해선 역자가 일일이 NOTE나 주석에 설명을 하고 있다. 수식을 어떻게 풀고, 어떤 책을 참고하라고 친절하게 담고 있다. 원래 책에 없는 설명까지도 담아 이해를 돕고 있다. 옮긴이가 인공지능, 특히 자연어 처리에 대한 이해가 없었다면 완전 불가능한 부분일 것이다. 워낙 곳곳에서 이런 노력이 보이다 보니, 고마움에 옮긴이 칭찬을 하지 않을 수 없다.




NPL 초보인 나에게 '파이토치로 배우는 자연어 처리'는 처음엔 만만한 책이 아니었다. 하지만, 포기하지 않고 읽다 보니, 자연어 처리라고 해서, 완전히 다른 것은 아니다. 그전에 알고 있던 것들과 함께 자연어 처리 부분이 결합되어 조금씩 이해되기 시작했다. 저자가 욕심이 많아서 그런지 참 많은 것을 담았다는 느낌인데, 덕분에 NLP에 관해, 전반적으로 많은 것을 얻고 이해하는데 큰 도움이 되었다. 특히 파이토치는 전혀 몰랐는데, 비교적 쉽게 활용법을 익힐 수 있었다.


자연어 처리 분야가 어렵긴 하지만, 음성인식, 번역뿐만 아니라, 인공지능 기사 작성, 보도, 아바타 등 쓰일 수 있는 곳이 워낙 많다 보니, 인공지능 딥러닝에 관심 있는 분들에겐 비즈니스적으로 좋은 블루오션 영역이라 생각한다. 자신의 IT 기술을 스킬업하거나 사업화하려는 분에게 이론적으로 도움이 될 것이다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
홈 레코딩 마스터 교과서 - 프로처럼 녹음하고 실수를 줄이는 레코딩·믹싱·마스터링 노하우의 비밀 지적생활자를 위한 교과서 시리즈
김현부 지음, 윤여문 감수 / 보누스 / 2021년 6월
평점 :
장바구니담기



홈 레코딩은 이름 그대로 전문 스튜디오가 아닌, 집과 같은 개인 공간에서 노래나 연주 같은 것을 직접 녹음해서 음반을 만드는 것을 말한다. 컴퓨터와 지원 소프트웨어, 주변 기기들의 성능이 좋아지고 저렴해지면서, 가능하게 된 개인 스튜디오인 것이다.

과거에는 전문 음악인들이 주로 관심을 가졌지만, 지금은 유튜브와 같이 개인 방송이 가능한 SNS 채널이 많아지면서, 일반인들도 많이 하고 있는 상황이다. 홈 레코딩을 통해 자신이 창작한 곡을 홍보하기도 하고, 노래나 연주 실력을 뽐내기도 한다.


나도 전부터 홈 레코딩을 배워 보고 싶다는 생각을 해왔다. 이는 내가 놀라운 음악적 재능을 가지고 있어서 그런 것은 아니다. 가장 큰 이유는 음향적으로 좀 더 품질 좋은 동영상을 만들어 보고 싶다는 바람 때문이고, 그다음은 가끔씩 블로그에 올리고 있는 이어폰, 헤드폰 같은 오디오 기기 리뷰 때마다 느끼는 부족한 전문지식을 높여 보고 싶어서다. 


그러나 절실한 마음이 없어서 그랬는지, 여태 홈 레코딩을 배울 기회를 가지지 못했었다. 그러다 이번에 이해하기도 쉽고, 여러 가지로 큰 도움이 된 책을 만나게 되었다. 현직 사운드 엔지니어이자, 대학교수로 재직 중인 김현부 저자의 '홈 레코딩 마스터 교과서'가 바로 그것이다. 솔직히 처음에는 그저 홈 레코딩이라는 단어만 보고, 별다른 기대 없이, '이거라도 봐두자'하는 생각으로 본 책이다. '책도 두툼해서 뭐라도 얻는 게 있겠지' 했다.


그런데, 읽다 보니, 친절하고 쉬운 설명은 기본이고, 책 내용이 의외로 너무 좋았다. '홈 레코딩 마스터 교과서'는 기존에 많이 봐왔던, 단순히 홈 레코딩 기술을 나열하거나, 프로그램 매뉴얼과 같은 책이 아니었다. 잘 짜인 과정에 맞춰 진행되는 유명 학원 강의를 듣는 거 같았다. 




우선 홈 레코딩에 필요한 기본 장비 설명부터 다양한 사진과 자료 그림으로 이해하기 쉽게 설명하고 있고, 내용들이 부드럽게 연결되었다. 책에서 다루는 주제들도 드럼, 일렉 기타, 베이스 기타, 색소폰, 키혼, 키보드, 보컬과 같이 활용도 높은 것을 위주로 되어 있어, 독자의 필요에 맞게 중점 학습할 수 있다. 구성만 놓고 보면, 평범하다 생각되는데, 내용면에서 무척 디테일함을 느낄 수 있었다. 기타를 예로 들면, 바로 녹음 방법을 알려주는 것이 아니라, 기타의 구조, 구조에 따른 사운드 특성, 나무 재질에 따른 소리 차이, 오래된 기타 줄과 새 기타 줄의 차이 같이 전혀 생각지도 못한 이야기가 있었다. 대부분 몰랐던 것들이다 보니, 흥미롭고 재미도 있었다. 무엇보다 녹음을 하는데, 이런 것들까지 세심하게 생각해야 한다는 점이 놀라웠다. 이런 세세한 것을 알게 되니 그게 오히려 내용을 이해하는 데 크게 도움이 되었다.


그리고 저자는 책을 통해 일방적 주입식 설명을 피하고 있다는 느낌을 받았다. 드럼 녹음을 보면, 우선 마이크 하나로 이 방향, 저 방향, 높이도 바꿔가며, 어떤 차이가 있는지도 알아보고, 마이크를 두 개, 세 개로도 늘려 본다. 그러면서 마이크 테크닉을 조금씩 배워 나간다. 최종적으로는 괜찮은 드럼 소리를 녹음하기 위해선 몇 개의 마이크가 최소 필요한지 알아보고, 그 밖에 추가로 해볼 만한 방법이 무엇인지도 제시한다. 받아먹기만 하는 것이 아니라, 생각을 해보고 응용을 해보게 유도를 한다. 




'홈 레코딩 마스터 교과서'에서는 DAW 프로그램으로 로직, 큐베이스, 프로툴스 같은 것들이 나오는데, 녹음 세팅 설명은 로직을 기준으로 하고 있다. 보컬 튜닝에는 오토튠과 멜로다인 사용법도 다루고 있다. 각각의 차이점도 알아보고, 주용 사용법도 다룬다. 그런데 여기서도 소프트웨어 사용법보다는 프로그램에 종속되지 않고, 전반적으로 다룰 수 있는 기본 기를 닦는데 주력한다. 그러기 위해 설정값에 따른 차이 같은 것도 저자의 경험을 담아 구체적으로 설명하고 있는 것을 볼 수 있다. 이런 설명 또는 조언은 아주 중요하다. 설정값이 무엇을 의미하는 것인지 모르면, 편집 방향을 잡을 수 없기 때문이며, 나 같은 초보자에게는 나중에 기준으로 삼게 되는 아주 중요한 포인트인 것이다.


아울러 각종 노이즈 줄이는 법, 팝핑 대비법, 마이크에 고무줄로 연필을 묶어 과도한 치찰음 해결법과 같이 저자가 곳곳에서 알려주고 있는 초보 입장에서 전혀 들어보지 못한 각종 유용한 팁과 노하우는 무척 고마운 존재이기도 하다. 개인적으로 활자 크기가 큼직한 점도 마음에 드는 부분이다. 책을 보며, 실습해보기 편했다.




책 구성을 좀 더 살펴보면, 곳곳에 '용어 설명'과 '원포인트 레슨' 코너가 있어서 보강 설명을 하고 있고, 각 단원이 끝나면, '키 포인트'가 있어서, 단원의 중요 내용을 한눈에 볼 수 있게 정리하고 있다는 것도 알 수 있다.


참고로 '홈 레코딩 마스터 교과서'에서 강조하는 한 가지가 바로 귀 훈련이다. 레코딩 작업은 전적으로 자신의 귀에 달려 있기에 세밀한 부분까지 듣고 판단할 수 있는 능력이 필요하다. 이건 기술로 해결할 수 없는 시간과 공을 들여야 하는 지극히 개인적인 역량 부분일 것이다. 


이번 '홈 레코딩 마스터 교과서'를 통해 홈 레코딩 트레이닝을 제대로 받은 기분이다. 몰랐던 많은 것을 배울 수 있었고, 헷갈렸던 부분을 명확히 할 수 있었다. 무엇보다 나에게 이 책은 장비 선택부터 작업 방향 등 초보라서 방향을 못 잡고 갈팡질팡할 수밖에 없는 많은 것들에 길라잡이가 되어 주었다. 홈 레코딩의 첫걸음을 제대로 잘 뗀 거 같다. 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
미적분의 쓸모 - 미래를 예측하는 새로운 언어 쓸모 시리즈 2
한화택 지음 / 더퀘스트 / 2021년 5월
평점 :
구판절판



학창시절 수학 공부하면서, 미적분 이거 배워서 어디다 써먹냐 많이들 투덜거려 봤을 것이다. 적어도 통계 같은 것은 평균 같은 거 구하고, 도형과 기하학은 부피나 면적 구하는 데라도 쓴다지만, 미적분은 그 쓰임새가 도통 떠오르지 않는다. 중요하다고는 들었지만, 이걸 제대로 설명해주는 사람은 드물다. 물론 공대 들어가면, 그 존재감을 뼈저리게 느끼겠지만, 일반적으로는 그저 쓰잘데기 없고 머리만 아플 뿐인 게 미적분이다. 


그러나 '미적분의 쓸모'를 보고 나면, 그런 생각을 완전히 바뀌게 될 것이다. 이 책은 책 제목 그대로 미적분의 쓸모를 수학과 과학적 측면뿐만 아니라, 공학, 의학, 영화, 경제 등 다양한 분야 속에서 알아보고 있다. 책 내용 전체가 오로지 미적분의 쓸모를 말하고 있어서, 책 제목과 주제가 찰떡같이 딱 들어맞는 이름 그대로인 책인 것이다.




아무리 미적분이 싫었다고 해도, 뉴턴과 라이프니츠가 미적분을 만들었다는 정도는 많이들 알고 있을 것이다. 책에서는 누가 만들고를 떠나 미분이 탄생하게 된 배경과 함께,  미분의 기본 개념부터 다시 살펴보고 있다. 학교에서 배우는 변화량 개념에 상태와 과정이란 개념도 추가하여 미분을 단순히 수학 공식으로 보는 것이 아니라, 주변에 발생할 수 있는 다양한 문제를 어떻게 미분 형태의 공식으로 만들어 나갈 수 있는지를 말하고 있다. 




나는 이점이 무척 중요하다고 생각한다. 그저 공식만 외워 문제를 푸는 것은 입시에나 필요한 것이다. 그보다 어떤 문제나 현상을 보고, 거기에 미적분을 응용해서, 답을 찾고, 더 나아가 새로운 공식을 만들어 낼 수 있어야 한다. 책에서 삽화로도 나왔지만, 소위 과학의 천재들이 보는 세상과 일반인이 보는 세상은 완전히 다른 것이다. 과학자들은 무지개며, 개울의 물 흐름, 번개 원리 등 다양한 자연 속 모습을 수학 공식으로 만들 수 있는 능력이 있는 것이다. 내가 전부터 참 궁금했던 것이 바로 이런 수학을 활용하는 능력이었는데, '미적분의 쓸모'가 그 접근 방법을 잘 보여주고 있었다. 


첫 장과 세 번째 장에서는 미분과 적분의 원리를 중점적으로 얘기하고 있다. 거리를 미분하면, 속도가 되고, 속도를 미분하면 가속도가 되는 것과 함께 미분을 했을 때, 기울기의 의미, 한번 더 미분했을 때는 0값이 가지는 것이 무엇인지 알아 보면서, 이런 미분을 통해, 과속방지 카메라가 어떤 원리로 속도 측정하는지 알려준다. 




아르키메데스의 원의 면적, 구의 부피 이야기와 함께, 코로나 확진자 발생률을 살펴보며, 적분의 의미와 활용을 함께 생각해보고 있다. 적분이 CT 촬영을 가능하게 했고, 푸리에 변환을 통해, 데이터 압축에도 활용되고 있다니 신기하고 재미있었다.


미적분은 드론에서도 쓰이고 있고, 일론 머스크의 스페이스 X 우주선에도 쓰이고 있다. 현재 IT에서 각광을 받고 있는 인공지능 분야에서도 경사하강법, 모멘텀법, 내그법 같은 최적화 알고리즘을 구현하는데도 큰 역할을 하고 있음을 알 수 있다. 저축과 투자, 미래예측 분야에서도 미적분은 활발하게 활용되고 있다.


만일 미적분이 없었다면, 세상은 지금과 많이 달라졌을 것이다. 특히 애니메이션 경우, 실제 같은 효과가 담긴 토이스토리나 겨울왕국 같은 것은 볼 수 없었을 것이다. 그만큼 애니나 영화의 각종 특수 효과에도 미적분이 포함된 각종 역학 공식이 들어가는 것이다. 


'미적분의 쓸모'에는 복잡한 계산은 없지만, 중간중간에 이상한 부호를 가진 복잡한 미분방정식과 공식들이 나온다. 전공자가 아니면 모를 수 있는 것들이긴 하지만, 이것들이 전체 내용을 이해하는데 크게 방해되지는 않는다. 잘 모르는 부분은 가볍게 살펴보고, 넘어가도 좋을 것이다. 


'미적분의 쓸모'는 분명 미적분을 잘하게 해주는 수학 학습서가 아니다. 그러나 책 속에 나오는 다양한 미적분의 활용을 통해 미적분의 개념을 확실히 다지게 해주고, 과학적, 수학적 사고를 하는 데, 많은 도움을 준다고 생각한다. 공학이나 과학 외, 사회, 문화, 심리 분야 등에서도 각종 공식들을 보곤 하는데, 이런 곳에 미적분 개념을 써서 활용할 수 있는 능력을 길러주는 것이다.



본 서평은 출판사에서 도서를 지원 받아 작성했습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
파이썬 비동기 라이브러리 Asyncio - 대규모 병행성 작업을 위한 비동기 프로그래밍
케일럽 해팅 지음, 동동구 옮김 / 한빛미디어 / 2021년 5월
평점 :
장바구니담기



프로그래머로 본격적으로 일을 하기 위해서는 꼭 알아둬야 할 지식 중에 하나가 스레드 활용법이다. 센서를 실시간으로 모니터링한다든가, 전자기기의 각종 버튼 반응 처리,  연산 병렬 처리, 게임 등 곳곳에서 쓰이는 기능이며, 비동기 처리에 있어, 스레드는 필수 사항이기도 하다. 인터프리터 언어인 파이썬에도 스레드 기능이 당연히 들어 있다. 




그런데 이렇게 곳곳에서 쓰이는 요긴한 스레드에도 여러 문제를 가지고 있다. 대부분의 프로그래밍 언어에서 스레드 수를 가급적 많이 쓰지 말라고 권고하고 있다. 컴퓨터의 CPU 또는 메모리 자원을 많이 사용하는 비효율적 문제도 있고, 문법 자체는 어렵지 않으나, 프로그램 구조가 복잡해져, 타인이 수정하기 어렵고, 꼼꼼히 처리하지 않으면, 생각지도 않은 돌발 상황이 발생해, 개발자들을 골치 아프게 만드는 문제도 있다.


파이썬은 이런 문제를 해결하기 위해, asyncore 같은 새로운 비동기 기능을 만들어 발전해 왔으며, 파이썬 3.4에 스레드나 멀티프로세싱 보다 가벼운 병행 프로그래밍 도구 Asyncio가 등장했다. 이 책 '파이썬 비동기 라이브러리 Asyncio'는 바로 라이브러리 모듈 Asyncio를 정확히 이해하여 좀 더 쉽게 쓸 수 있는 방법을 알려주는 파이썬 프로그램 개발 실용서인 것이다. 집중적으로 Asyncio 라이브러리에 관한 필요한 것들만 다루고 있어서 책 부피마저도 군더더기 없이 두껍지 않다.


저자가 말하길 '파이썬 비동기 라이브러리 Asyncio'은 최종 사용자 개발자 즉 응용프로그램 개발자와 프레임워크 개발자 혹은 설계자를 대상으로 하고 있다고 말한다. 중급 이상 수준의 책으로 적어도 파이썬 기본, 특히 스레드, 코루틴 정도는 마스터한 사람을 위한 수준의 책으로 서버와 소켓 통신 같은 것도 알고 있다면, 좀 더 이해가 쉬울 것이다.  그렇다고 아주 난해한 정도까지는 아니다. 




Hello! Good bye!처럼 아주 간단한 코딩부터 단계적으로 수준을 높여가며, asyncio에 관해 학습하고, 예제 코드마다 자세한 설명도 잘 되어 있어, 비록 딱딱한 주제와 용어 때문에 살짝 지루함은 다소 느끼지만, 전반적인 내용을 이해하는데 많이 어렵지 않았다. 


책 구성은 제일 먼저 Asyncio를 간단히 소개하고, 스레드의 문제점과 차이를 알아 본 뒤, asyncio에 관해 구체적으로 살펴보면서, 관련된 다른 라이브러리에 대해서도 알아본다.


간혹 라이브러리 관련 책을 보면, 레퍼런스 매뉴얼 또는 공식 문서를 살짝 편집만 해서 내용 대부분 그대로 옮긴 것을 접하기도 하는데, '파이썬 비동기 라이브러리 Asyncio'는 완전히 격이 다르다. '한 땀, 한 땀 장인의 손길' 어쩌고 하는 그런 느낌이 드는 핸드메이드스러운 책이다.




케일럽 해팅 저자가 Asyncio를 완전 해부 분석하며, 하나하나 직접 테스트 코딩한 내용을 담고 있다. 옛날 방식의 코딩과 현대식 코딩의 차이, 추천과 비추천 함수, 주의할 점, 논란 부분, 어떤 때 써야 하는지 등등 무척 깊은 부분까지 잘 담고 있다.


경험 많은 개발자라면, 이것들이 얼마나 직접적으로 도움 되는지, 잘 알 것이다. 일일이 이 방법이 맞나, 저 방법이 맞나 테스트해보는 시간도 절약해주고, 잘못 적용해서 코드를 다시 뒤엎는 일도 막아 줄 수 있기 때문이다. 항상 일정에 쫓겨서 제대로 테스트할 여유 없는 대부분의 개발자 입장에서는 참 고마운 부분인 것이다.


그리고 asyncio뿐만 아니라, 스레드, 서버, 기타 라이브러리, API 등 본문과 관련된 다양한 것들의 참고 동영상, 관련 문서, 사이트도 책 곳곳에 본문과 주석 형태로 잘 정리해 놓아서 필요에 따라서는 독자가 더욱 깊게 파고들며 공부할 수 있는 여지도 남겨 두고 있다. 비록 책 두께는 얇지만, 담고 있는 내용은 그 몇 배를 넘는다.




책 4장의 '여러분이 사용하지 않는 Asyncio 라이브러리 20개'라는 주제도 같은 맥락이라 할 수 있다. 어떤 건지 잘 몰라서 안 썼거나, 아예 몰라서 못 써온, Asyncio, 비동기 기능에 적합한 라이브러리들을 소개하고 나름 중요 엑기스만 담은 코드도 함께 넣었다. 여기서는 메시지 대기열 서비스에는 ActiveMQ와 함께, HTTP, XMPP, FTP 등 인터넷 프로토콜에 다양한 기능을 제공하는 트위스티드, 스레드와 코루틴 간 통신 솔루션 Janus, 스마트 소켓도 제공하는 네트워킹 라이브러리 0MQ 등을 핵심 기능 위주로 가볍게 다루고 있다.


내 경우, 파이썬이 프로그램 개발 주력 언어가 아니라, 간단한 테스트 프로그램 정도로만 쓰다 보니, 파이썬의 깊은 곳을 잘 몰랐는데, '파이썬 비동기 라이브러리 Asyncio'를 통해 스레드, 멀티프로세싱, 병렬처리 등에 대해 지식을 다시 점검할 수 있었고, 미처 모르고 넘어갔던 부분을 제대로 파볼 수 있었다. 비동기 프로그래밍 관련해서 이만한 책은 없을 듯하다.


'파이썬 비동기 라이브러리 Asyncio'가 실제 개발에 유용한 주제를 담고 있고, 내용에도 깊이가 있는 만큼, 프로그램 실력을 확실히 한 단계 업그레이드하고 개발자의 시야를 넓혀 주는데 큰 도움을 줄 것이다. 비동기 쪽에서 더욱 효율적이고, 오류 적은 프로그램을 짜기 위해 이 책을 자주 참고할 생각이다.


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


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