초소형 머신러닝 TinyML - 모델 최적화부터 에지 컴퓨팅까지 작고 빠른 딥러닝을 위한 텐서플로 라이트
피트 워든.대니얼 시투나야케 지음, 맹윤호 외 옮김 / 한빛미디어 / 2020년 8월
평점 :
장바구니담기


AI 음성비서 서비스를 하면 "OK 구글" 구글 어시스턴트를 먼저 생각할 것입니다. 빠르게 발전하는 인공지능은 일상생활을 같이 할 정도로 많은 영역에서 사용되고 있습니다. 구글 어시스턴트 팀은 14KB짜리 모델을 사용해 “OK 구글”이란 말을 인식하게 했는데요. 이는 마이크로컨트롤러에도 탑재 가능한 용량입니다. 이처럼 초소형 머신러닝에 관련된 내용을 담고 있는 초소형 머신러닝 TinyML 저서를 소개합니다. 


우선 사람들이 인공지능(AI), 기계학습(ML)에 대해 생각할 때 우리는 일반적으로 음성서비스 비서, 자율 로봇, 자율 주행차에 대해 구체적으로 생각합니다. 그러나 기계학습의 세계는 그 이상을 포괄하고 있는데요. 컴퓨터가 명시적으로 지시하지 않고 예측, 결정, 또는 분류를 수행할 수 있도록 수학적 모델을 학습할 때마다 기계학습(ML)을 사용합니다. 


저서 초소형 머신러닝 TinyML은 딥러닝과 임베디드 시스템의 결합으로 작은 기기에 음성 인식, 제스처 감지 등 놀라운 능력을 부여하는데요. 어떠한 환경에도 적용할 수 있는 작은 모델을 훈련하는 방법론을 담고 있습니다. 머신러닝이나 마이크로컨트롤러를 다룬 경험이 없어도 다양한 프로젝트를 단계별로 따라 하다 보면 실무 활용 능력을 키울 수 있게 많은 예시가 있습니다. 


처음에는 TinyML에 필요한 모든 머신러닝을 배웁니다. 기본 개념을 다루고  몇 가지 도구를 살펴본 후 간단한 머신러닝 모델을 훈련해보는데요. 소형 하드웨어에 중점을 둘 것이기에 딥러닝의 이론이나 그 배경이 되는 수학에는 지면을 그리면서 할애하지 않을 것 아닌 도구와 임베디드 장치에 대한 모델을 최적화하는 방법을 자세한 개념들을 설명해줍니다. 특히 주요 용어에 익숙해지도록 도와주며, 일반적인 워크플로우를 이해하게 되어 무엇을 모르는지 더 명확히 알게 될 것입니다.


기본적으로 머신러닝은 컴퓨터를 사용하여 과거 관측치에 따라 사물을 예측하는 기술입니다. 또한, 이 저서에서는 텐서플로 팀의 고민을 반영해 모델의 정확도를 최대한 유지하면서 어떻게 모델을 경량화할 것인지, 저전력 상황 속에서 어떻게 전력을 최적화하여 모델을 실행할 것인지, 물리적 크기가 아주 작아 모델을 실행하기 어려운 컴퓨팅 환경에서는 어떻게 모델을 동작시킬지 등 상세한 설명과 예제 코드로 설명합니다.


이뿐만 아니라 예제 코드는 소스 코드를 별도로 관리하기 위한 노력의 일환으로 텐서플로 라이트 프로젝트를 포크하여 깃허브( https://github.com/yunho0130/tensorflow-lite ) 공개해 국내 많은 개발자가 손쉽게 텐서플로 라이트에 접근하고 각종 이슈를 공유하며, 해결할 수 있는 공간으로 만들어 일종의 오픈소스 커뮤니티로 가능하고 많은 정보가 있습니다. 그리고 저서 별로도 추가 내용은 추후 유튜브 채널( https://www.youtube.com/myh0130 )에서 영상을 다룰 예정인 점도 있습니다.


대부분의 경우 유용한 기계 학습 알고리즘에는 많은 양의 컴퓨팅 리소스(CPU주기 및 RAM)가 필요하는데요. TensorFlow Lite는 여러 마이크로 컨트롤러에서 실행되는 실험 버전을 출시함으로써 제한된 리소스가 있는 장치에 맞는 모델을 만들 수 있다고 가정하면 임베디드 시스템을 작은 기계 학습 (TinyML) 장치로 전환할 수 있는 점도 있습니다. 


이 저서는 Pete Warden과 Daniel Situnayake 가 모든 환경에 맞도록 충분히 작은 모델을 훈련시킬 수 있는 방법, 기계 학습을 사용해 임베디드 시스템을 구축하려는 소프트웨어 및 하드웨어 개발자에게 이상적으로 활용할 수 있는 TinyML 프로젝트를 단계별로 만드는 과정을 안내하는데요. 이 저서를 통해 기계 학습이나 마이크로 컨트롤러 경험이 없어도 음성 인식기, 사람을 감지하는 카메라, 제스처에 반응하는 경험하시기를 권유 드립니다. 소스 코드 내용을 상세하게 설명해서 딥러닝 지식이 부족하더라도 소스 코드를 이해했는데 무리 없습니다. 


가장 먼저 TinyML을 이해하려면 임베디드 장치의 세계를 이해해야 합니다. 보통 임베디드 장치는 8bit 프로세서를 사용하고 잘 알려지지 않은 독점적인 툴 체인을 사용했기 때문에 이를 시작하는 것은 꽤 막막한 일인데 하지만 아두이노가 표준화된 하드웨어와 함께 사용자 친화적인 통합 개발 환경(IDE)을 도입하면서 크게 진전되는 점 등 개발에 필요한 하드웨어, 소프트웨어, 기본적인 개념이론들을 자세한 설명과 그림, 사진 도형 등으로 독자들에게 쉽게 다가갈 수 있게 보여줍니다. 


Arduino 및 초 저전력 마이크로 컨트롤러로 작업

ML의 필수 사항과 자신의 모델을 훈련하는 방법

오디오, 이미지 및 가속도계 데이터를 이해하도록 모델 학습

TinyML 용 Google 도구 키트 인 마이크로 컨트롤러 용 TensorFlow Lite 살펴보기

애플리케이션을 디버그하고 개인 정보 및 보안을위한 보호 장치를 제공

대기 시간, 에너지 사용량, 모델 및 바이너리 크기 최적화


어떠한 환경에도 적용할 수 있을 정도로 작은 모델을 훈련하는 방법을 알려줍니다. TinyML이라는 새로운 영역에서 더 많은 애플리케이션이 등장하도록 돕는 것이며, TinyML에는 아직 킬러 앱이 없으며 앞으로도 없을 수도 있습니다. 하지만 우리는 TinyML이 해결할 수 있는 문제가 세상에 많이 있다는 사실을 경험으로 알고 있는 점을 생각하면 저서는 독자분들이 문제의 해결책에 익숙해지도록 돕습니다. 농업, 우주 탐사,  의약품, 소비재 등 각 분야의 도메인 전문가에게 문제를 스스로 해결하는 방법에 대해 이해하고 최소한 이러한 기술로 해결할 수 있는 문제가 무엇인지 인식하게 만들어 줍니다. 이처럼 리소스가 제한된 기기에서 기계 학습에 관심 있는 사람이라면 반드시 읽어야 할 책이라고 생각합니다.


댓글(0) 먼댓글(0) 좋아요(1)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
비즈니스 아이디어의 탄생 - 혁신적 아이디어 설계와 테스트, 팀 디자인, 마인드셋까지 44가지 아이디어 실험법
데이비드 블랜드.알렉산더 오스터왈더 지음, 유정식 옮김 / 비즈니스북스 / 2020년 8월
평점 :
장바구니담기


이 글에는 스포일러가 포함되어 있습니다.




각자가 1인 기업자가 되는 것처럼 일하다 보면 아이디어를 창출해야 하는 업무는 꼭 있습니다. 아이디어를 탄생시키기 위해서 어떤 시작을 하고 구상해야 하는지 연구를 하게 되는데요. 자신이 작성한 수많은 기획서 중에서 정답이 있다고 생각되는 기획서는 적습니다. 0원짜리 아이디어로 돈이 되는 사업을 만들 수 있을까? 반드시 성공하는 비즈니스로 탈바꿈할 방법이 있을까? 생각한 던 중 비즈니스 아이디어의 탄생 저서를 만났습니다. 


비즈니스 아이디어의 탄생 저서는 비즈니스 모델 캔버스 창시자이자 세계적 경영 혁신가 알렉산더 오스터왈더의 리스크 줄이고 사업의 성공 가능성을 폭발시키는 아이디어 검증법에 대한 내용을 담고 있습니다.  저서를 받아보면 다른 저서와 다른 점들이 눈에 띕니다. 첫 번째는 저서의 판형부터 다릅니다.  전체적으로 개념을 쉽게 이해할 수 있도록 그림 위주의 설명들이 많이 있어서 선택한 판형 같습니다. 편하게 저서를 읽을 수 있어서 좋습니다. 두 번째는 이 저서는 개념서, 이론서가 아닌 실천서입니다. 즉, 실제로 무엇을 어떻게 실험해야 할지 명확한 가이드를 제시해줍니다.  모든 개념을 실험하고 테스트하기를 권장하고 있습니다. 


저서의 구성은 크게 4가지로 디자인, 테스트, 실험, 마인드 셋 으로 이루어졌습니다.


디자인 - 팀 디자인, 아이디어 형성

테스트 - 가설, 실험, 학습, 결정, 관리

실험 - 실험 선택, 발견, 검증

마인드셋 - 실험의 함정 피하기, 실험을 통한 조직 이끌기, 실험하는 조직 만들기




비즈니스 디자인의 시작은 아이디어 도출, 비즈니스 프로토타입, 평가  3단계의 루프가 적용됩니다.  그 중에서 비즈니스 프로토타입에서는 가치 제안 캔버스, 비즈니스 모델 캔버스를 사용해 아이디어를 명확하고 구체적으로 표현하는 방법들을 제시합니다. 저자는 비즈니스 모델 캔버스에 달인이 될 필요는 없지만, 아이디어를 비즈니스 모델로 전환하기 위해 비즈니스 모델 캔버스를 사용한다면 리스크를 정의하고 테스트하고 관리하기에 쉬울 수 있는 점을 제시합니다. 그리고 가치 제안 캔버스의 목적은 비즈니스 모델 캔버스와 매우 유사한 점도 설명합니다. 여러 가지 실험법 자료들을 제시합니다. 


다양한 자료들은 https://www.strategyzer.com/books/business-model-generation 온라인 사이트에서도 얻을 수 있습니다. 특히, 고객을 이해하고 제품과 서비스가 어떻게 가치를 창출하는지 이해하는데  가치 제안 캔버스를 유용한 방법으로 제시함으로써  https://www.strategyzer.com/books/value-proposition-design 사이트에서 더 많은 정보는 밸류 프로포지션 디자인에서 얻을 수 있다고 알려줍니다. 


저서의 큰 매력이라고 생각되는 부분은 알렉산더 오스터왈더가 고안한 ‘테스트 카드’와 ‘학습 카드’는 매우 유용한 도구입니다. 그건 테스트를 하기 위해서 좋은 도구를 발견한 것 같습니다. 테스트의 시작은 가설을 세웁니다. 그 가설에 따라 아이디어의 기저에 깔린 가설들을 규명하고 가장 중요한 가설이 무엇인지 우선순위 정하고 가설을 매핑하고 더 나아가 실험을 합니다. 실험은 비즈니스 아이디어의 리스크와 불확실성을 줄이기 위한 수단이라고 설명합니다. 좋은 실험을 하기 위한 도구는 테스트 카드입니다. 




저서에는 고객 인터뷰, 검색 트렌드 분석과 같은 흔히 들어봤음직 한 익숙한 실험법부터 컨시어지, 종이/화면 프로토타입, 매시업, 오즈의 마법사, 익스트림 프로그래밍 스파이크 등 보다 전문적이고 규모가 큰 실험법까지 비용과 준비 시간, 진행 시간, 필요 역량에 관한 기본 정보와 실제로 얻을 수 있는 증거와 검증 가능한 가설 등 심화 정보들을 담고 있습니다. 또한, 실험의 함정에 대한 조언과 함께 팀 구성원, 투자자 등 이해관계자들에게 실험 과정을 어떻게 공유하고 함께 개선해나갈 것인가에 대한 실질적인 조언이 담겨 있습니다.




또한, 간단명료한 설명과 그림으로 이루어진 저서라서 내용을 쉽게 습득할 수 있는 점이 좋았습니다. 그리고 저서의 쉬운 이해를 돕고 활용도를 높이기 위해서 저자 데이비드 블랜드가 직접 설명한 도서 가이드 영상도 있습니다. https://youtu.be/3loLsHZtvBM 영상을 참고해보시면 큰 도움을 받을 수 있습니다..


가장 많이 보이는 그림은 바로 반복적 프로세스입니다. 이 프로세스를 보면 많은 검증에 대한 방법론을 담고 있습니다.

첫째 고객이 당신의 비즈니스 아이디어에 관심이 없을 가능성

둘째 당신이 비즈니스 아이디어를 실제로 추진하거나 실행하지 못할 가능성

셋째 당신이 아이디어로 충분히 돈을 벌지 못할 가능성까지 이 가설들을 수립한 후 검증할 테스트를 선택해야 하는 것




마지막으로 첫 페이지에  '비즈니스 모델의 가정들을 먼저 실험하지 않으며 당신의 비즈니스 계획은 그저 창의적인 생각에 불과하다 - 스티브 블랭크' 의 인용돼 말이 있습니다. 저서의 끝 페이지까지 보고 나서 첫 페이지 인용 말을 다시 보면 가장 중요한 것 실험하는 것입니다. 계획에서 끝내는 아이디어가 아닌 꾸준히 테스트하는 것이 성공하는 아이디어를 탄생하는 방법 같습니다. 


이번 비즈니스 아이디어의 탄생 저서는 시간, 비용, 기술 등  44가지 실험법에 관한 A to Z, 아이디어를 비즈니스로 바꿔낸 실제 테스트 사례수록, 혁신과 투자, 두 마리 토끼를 잡는 노하우까지 알찬 내용으로 구성된 가이드와 같은 실천서입니다. 


* 비즈니스북스 출판사로터 해당 도서를 지원 받아 작성한 서평입니다. 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
유닉스의 탄생 - 세상을 바꾼 운영체제를 만든 천재들의 숨은 이야기
브라이언 커니핸 지음, 하성창 옮김 / 한빛미디어 / 2020년 8월
평점 :
절판


이 글에는 스포일러가 포함되어 있습니다.

시스템을 사용할 수 있고 어떻게 사용할 수 있는지 관리하므로 즉 운영체제는 컴퓨터 시스템을 관리하는 보스의 역할이 운영체제인데요. 많은 종류의 운영체제 중에서 다수의 사람이 공부하고 알고 있는 유닉스의 탄생에 대한 이야기를 담고 있는 저서가 있습니다.


'유닉스의 탄생' 저서는 UNIX의 탄생과 발전 과정들을 브라이언 커니핸이 들려주는 이야기 형식과 비슷합니다. 처음에는 유닉스가 탄생한 장소 벨 연구소에 대한 내용을 들려줍니다. 저자인 브라이언 커니핸이 30년 동안 벨 연구소의 컴퓨팅 과학 연구 센터에서 일을 하면서 있던 일들을 소설책을 읽듯이 담아내고 있습니다. 그들만의 공간에서 그들만이 알고 있는 과거 이야기들을 제3자인 독자들에게 공개함으로써 역사적 순간들을 볼 수 있는 기회입니다.


전체적으로 유닉스에 대한 내용을 연대적으로 나열된 느낌도 있습니다. 또한, 컴퓨터, 하드웨어, 소프트웨어, 운영체제, 프로그래밍, 프로그래밍 언어에 대한 입문 수준에서 간략한 설명들이 있어서 IT업계에서 일하고 준비하는 비전공자들에게도 알찬 정보들을 제공합니다.


유닉스의 역사를 기록한 저서이자 유닉스 개발 현장에 있던 이들의 회고록인 만큼 유닉스가 무엇인지? 어떤 이유로 개발되었는지? 어떤 과정으로 거쳐 발전했는지 꼼꼼하게 기록되어 있습니다. 그리고 유닉스의 내용뿐만 아니라 널리 알고 있는 프로그래밍 언어 중 하나인 C언어에 대한 이야기로 같이 다루고 있습니다. 


유닉스 이름의 유래에 관해서 이야기하면 초창기엔 PDP-7 운영체제에 이름 생겼는데요. 바로는 켄, 데니스, 피터 노이만을 포함한 무리와 내가 사무실 입구에 서서 이야기하던 것으로 시작합니다. 저자는 시스템에 이름이 없었기에 라틴어 어근에 기반을 두고 멀틱스가 '모든 기능을 많이' 제공한 반면, 새로운 시스템은 어떤 기능을 기껏해야 하나 제공하므로 ‘UNICS’라고 불러야 한다고 했는데, 이는 ‘multi’를 ‘uni’로 바꾼 말장난이었습니다. UNICS는 어떤 이유에서인지 Unix로 변형되었습니다. 소문상의 유닉스로 바뀐 내용은 저서에 담겨 있습니다.


그들만의 알고 있는 이야기들을 들려줍니다. 그 과거를 회상하게 한 상황마다 유닉스의 탄생 배경을 알아가고 사용하는 기술의 진화 과정을 이해할 수 있습니다. 그리고 기술을 어떻게 개발하고 어떤 방향으로 발전시킬지 결정한 것은 모두 실존 인물들이 있습니다. 이 저서에서 가장 큰 매력은 기술을 개발한 사람들에 대한 이야기들을 인물탐방 주제로 곳곳에서 만나 볼 수 있습니다. 


그중에서 2019년 5월 켄 톰프슨와 뉴저지 월 타운십에서 열린 미 동부 빈티지 컴퓨터 축제에서 허물없이 나눈 대화 내용을 유튜브(https://www.youtube.com/watch?v=EY6q5dv_B-o)에서 볼 수 있습니다. 저서에 켄 톰프슨, 데니스 리치, 더글러스 매클로이 등 다양한 사람들을 만나볼 수 있습니다.


파일 시스템, 시스템 호출, 셸, 파이프, 정규 표현식 등 개발하게 된 이야기들이 나와서 흥미롭습니다. 과거와 현재의 간극을 좁히는 데 도움이 될 것입니다. 이 저서는 개발 과정의 일기장을 보는 것처럼 새로운 기술을 창조하고 수많은 가능성에 대해서 도전한 개발자들의 이야기와 연구 환경, 상황 등 이야기들을 볼 수 있습니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
BPF로 리눅스 관측 가능성 향상하기 - 성능 분석과 네트워킹을 위한 고급 프로그래밍
데이비드 칼라베라.로렌초 폰타나 지음, 류광 옮김 / 한빛미디어 / 2020년 5월
평점 :
장바구니담기


컴퓨터 기술이 발전하면서 관측의 중요성이 올라가는데요. 중요 정보가 있는 사이트의 경우 보안 부분에 민감한 경우들이 많이 있습니다. 일반 사이트 경우 보안이 취약할 경우 회원가입을 했는지 확인하기 위해 아이디를 쳐보고 확인합니다. 비밀번호만 틀렸다고 알려주는 창이 나오면 회원 가입한 아이디이기 때문에 아이디 정보를 얻을 수 있는 문제가 발생합니다. 그래서 보안을 유지하기 위해서는 아이디, 비밀번호 둘 중 하나라도 틀릴 경우 동일한 응답이 나오게 해야 됩니다.

 

응답은 아이디와 비밀번호가 틀렸다는 것을 응답하므로 추측을 못 하게 보완됐습니다. 이번에 알아볼 저서는 BPF로 리눅스 관측 가능성 향상하기입니다. BPF는 버클리 패킷 필터로 네트워크 트래픽을 분석하기 위해 사용되는 기술입니다. 이 저서에 가장 먼저 만나게 되는 문장은 비야네 스트롭스트룹의 우리의 문명은 소프트웨어를 바탕으로 돌아간다.” 인용글을 볼 수 있는데요. 소프트웨어의 기반으로 현대 문명을 지탱하는 컴퓨팅 기반구조에서 큰 자리를 차지하고 있는 것이 바로 리눅스 커널입니다.

 

우리 사람에 직·간접적으로 영향을 미치는 수많은 소프트웨어가 리눅스 커널에 의존하며, 어떤 운영체제이든 커널은 극도의 성능과 보안이 요구되는 영역입니다. 리눅스 커널은 아무나 건드릴 수 없는 소수의 전문가에게만 허용되는 영역으로 간주하는데요. 그 점을 생각하면, 평범한 개발자도 스크립팅과 vm을 통해 편하고 안전하게 리눅스 커널 안에서 원하는 코드를 실행하게 하는 BPF의 기술은 흥미롭다고 생각합니다.

 

먼저 관측 가능성 접근 방식은 주어진 임의의 시스템에 대해 임의의 복잡한 질문을 던지고 그 응답을 얻을 수 있는 능력을 정의하는데요. 관측 가능성과 로그, 측정치 취합의 차이점은 각각이 수집하는 자료에 있습니다. 관측 가능성을 활용한다는 것이 임의의 시점에서 임의의 질문에 대한 답을 얻을 필요가 있다는 뜻이라고 할 때, 자료로부터 응용 프로그램의 행동을 추론하려면 시스템이 생성하는 모든 자료를 수집해야 하며, 그러면서도 질문에 대한 답을 얻어야 할 필요가 있을 때만 그 자료를 취합해야 합니다.

 

이 저서는 컴퓨팅 시스템의 관측 가능성을 높이는 데 도움이 되는 BPF의 여러 강력한 기능들을 제시합니다.

 

BPF 패킷 필터는 시스템 네트워크를 감시하는 데 사용하는데요. 커널과 사용자 공간 사이의 주된 자료를 교환할 때는 BPF 맵을 사용하며, BPF 확장되면서 커널 시스템의 변화 된 것도 볼 수 있습니다. eBPF는 기존 BPF 구현보다 최대 4배 빠르게 작동합니다. 예전 32bit 레지스터 2개에서 64bit 레지스터 열개로 확장됐습니다. BPF로 표기를 하지만 업그레이 된 부분으로 이해하고 개념을 배울 수 있습니다.

 

직접 자료를 취합하거나 분류할 수 있다는 점이다. 이는 수집한 자료를 손실 가능성 있는 대기열을 거쳐 사용자 공간에 보낸 후 거기서 취합, 처리해야 하는 기존 도구들에 비해 BPF의 확실한 장점을 볼 수 있습니다. 다양한 프로그래밍 언어로 BPF 프로그램을 작성하는 방법도 설명하고 있습니다. 또한 예제 코드를 https://oreil.ly/lbpf-repo에서 확인 할 수 있습니다.

 

BPF는 리눅스 4.18부터 도입된 기능으로 리눅스 기능을 확장해줍니다. 기능 확장을 통해 관측 가능성도 향상할 수 있으며, 관측하게 되면 시스템을 안정적으로 운영 가능합니다. BPF 학습을 통해 보안능력이 향상되시길 바랍니다. 이 저서의 주 독자층은 시스템 엔지니어와 네트워크 성능 분석 전문가, 리눅스 커널 개발자 등이 많을 거로 생각합니다. 이번 기회에 BPF를 이용해서 자신을 업글할 수 있는 추적 프로그램을 작성하는 방법을 추천합니다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
Do it! 클론 코딩 영화 평점 웹서비스 - 노마드 코더 니꼴라스와 만드는 진짜 리액트 앱 Do it! 시리즈
니꼴라스.김형태 지음 / 이지스퍼블리싱 / 2020년 5월
평점 :
장바구니담기


이 글에는 스포일러가 포함되어 있습니다.


개발 공부를 개념 위주로 하다 보면 지칠  때가 있습니다. 배운 개념들을 어떻게 사용하고 어떤 결과값이 나올지 궁금하실 학생분들이 많을 거로 생각하는데요. 그러다 보면 유튜브에 검색도 하게 되고 개발 관련 보게 되는 유튜버 노마드 코더(Nomad Coders)를 영상도 시청한 독자분들이 많을 거라고 생각합니다.


이번에 소개하는 Do it! 클론 코딩 영화 평점 웹서비스 저서는 노마드 코더의 니꼴라스와 만드는 진짜 리액트에 대한 내용인데요. 니꼴라스 저자는 니꼬샘으로 부르길 원하시고 한국말이 조금 서툴러서 반말 모드로 내용을 설명해줍니다. 반말 모드가 불편하지 않고 더 쉽고 빠르게 내용을 이해할 수 있는데요. 아마 컴퓨터로 관련 내용으로 반말을 사용하면서 독자들에게 친근하게 다가오는 하나밖에 없는 저서일 것 같습니다.


니꼬샘은 개발 공부 방식 중에서 가장 유용하고 빠른 방법은 클론 코딩이라고 합니다. 클론 코딩(Clone Coding)은 문자 그대로 기존의 코드를 그대로 따라 배우는 코딩 학습 방법입니다. 즉 클론 코딩은 페이스북, 인스타그램, 넷플릭스 등 실제 서비스를 복제해 프로그래밍 학습 방법인데요. 클론 코딩으로 학습할 땐 눈앞에서 결과물이 나타나기 때문에 프로그래밍을 빠르고 재미있게 배울 수 있는 점이 큰 장점입니다. 


이 저서는 클론 코딩방식으로 영화 평점 순으로 영화 포스터, 제목, 장르, 시놉시스 등을 보여줄 수 있는 영화 평점 서비스에 대해 코딩합니다. 그야말로 개념적으로 알고 있는 내용을 들을 직접 실습을 해 따라 하다 보면 최종적으로 하나의 서비스를 만드는 자신을 볼 수 있습니다.


처음부터 끝까지 액션을 차근차근 따라 할 수 있게 설계되어 있는데요. 액션은 어떤 명령어를 입력해야 하는지, 어디에 파일을 만들어야 하는지, 어디를 수정해야 하는지 정확하게 지시해주는 문장입니다. 초반엔 액션을 무작정 따라 하게 되지만, 복잡한 이론을 공부하는 과정보다 어떤 식으로 적용이 되는지 자연스럽게 몸으로 손으로 익힐 기회입니다. 단 눈으로 읽지 말고 꼭 액션을 따라 하면 그 개념에 대해서 자신의 것으로 만들 수 있습니다.


중간마다 어딜 고쳐야 할지 헤매지 않게 별색, 말풍선으로 팁을 짚어 주면서 진행하는 점과 니꼬샘의 조교로 등장하시는 킴조교의 보충 수업 등 깨알 같은 설명으로 개념에 대해 이해하면서 액션을 진행할 수 있습니다.


전반적으로 영화 평점 웹서비스를 만드는 과정은 프런트엔드 개발 분야에서 대세로 알려진 리액트로 진행되는데요. 혹여나 웹 개발이 처음이신 분들은 자바스크립트와 웹 기초를 알아야 리액트를 공부할 수 있다고 생각해 리액트 공부를 도전 안 하신 분들에게 이 저서를 강력히 추천합니다. 클론 코딩은 따라 하면서 학습하는 방식으로 진행되기 때문에 리액트를 자신이 생각하는 것보다 더 쉽게 사용할 수 있습니다. 그렇게 따라 하고 완성된 결과물을 본 순간 뿌듯하고 더 나아가 리액트에 대해서 더 알고 싶고 공부하고 싶은 거라고 생각이 듭니다. 이 저서에선 리액트 모든 개념을 담고 있는 건 아닙니다. 서비스를 만들 때 필요한 개념으로 리액트 입문 단계에서 반드시 알아야 하는 기능들을 담고 있어서 추후 더 공부하고 싶은 분들은 다른 개념서도 참고하는 걸 추천해 드립니다.


독자분들을 위해 장마다 앞쪽에 QR코드로 해당 내용에 대한 직강 동영상을 제공해주는데요. 이뿐만 아니라 클론 스타터 키트 제공으로 완성한 파일을 볼 수 있습니다. 또한 자주 묻는 질문, 자바스크립트 문법, 참고 사이트 등 소소한 팁도 제공합니다.


아래 주소를 통해 각종 정보 및 다양한 커뮤니케이션을 할 수 있습니다.


바로 실습할 수 있도록 ‘클론 스타터 키트’ 제공

- 클론 스타터 키트 깃허브: github.com/easysIT/do_it_clonecoding_movieapp


노마드 코더 니꼴라스 직강 동영상 25편 무료 제공(무료 회원 가입)

- 동영상 강의: academy.nomadcoders.co/courses/enrolled/216871


영화 평점 웹서비스 미리 구경하기

- 영화 평점 웹서비스: nomadcoders.github.io/movie_app_2019


독자들과 함께 공부하고 책 선물도 받아 가세요!

- 두잇 스터디룸(책 질문 환영): cafe.naver.com/doitstudyroom


기술 관련 질문은 니꼬샘에게 직접해 보세요!

- 저자 1:1 질문(기술 질문): nomad-coders.channel.io


그동안 리액트를 공부하고 싶었는데 이론 공부만 하고 있거나 단순히 리액트가 어렵게 느껴져서 망설이고 있는 독자분들과 프로그래머 전직하고 싶은 일반인 등 이 저서를 통해 진짜 영화 웹서비스를 만들어 코딩에 재미를 붙일 수 있는 결과에 대한 맛을 느껴보시길 바랍니다.


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