육각형 개발자라는 최범균 저자가 집필하였으며, 본인의 이야기를 시작으로 내용이 시작된다. 이 책은 좋은 시니어 개발자가 되길 원하는 주니어 또는 중니어 개발자를 대상으로 하고 있으며, 아래 6가지를 두루 다 갖춘 개발자를 칭하는데 이러한 개발자가 되기 위해서 필요한 덕목 10가지를 소개하고 있다. 에세이와 자기계발서에 가까운 책이다. 1. 구현 기술 2. 업무 관리, 공유, 리드 & 팔로우 3. 리펙토링, 테스트 4. 응집도, 결합도 5. 아키텍처, 패턴 6. 품질, 코드 이해 이 책에서 다루고 있는 내용은 효율적으로 구현 기술을 적용하고 학습하는 방법, 소프트웨어 가치를 이해하고 유지보수 비용을 낮추는 방법, 이해하기 좋은 코드를 작성하는 법, 높은 응집도 + 낮은 결합도 원칙으로 설계하는 방법, 변경..
인공지능을 개발하는 입장에서 요즘 느끼는 것은 인공지능이 예전보다 훨씬 대중화 되었고, 인공지능을 개발하거나 서비스를 만드는데 있어서 진입장벽이 훨씬 낮아졌다는 생각이 많이 든다. 그 이유는 바로 ChatGPT, Diffusion 기술 때문이다. ChatGPT 또는 Diffusion 기술들을 이용하여 서비스를 만들거나 창작물을 만들어 낼 때 전문가만큼의 지식이나 기술, 배경, 원리를 알지 못하더라도 서비스를 사용하거나 직접 만들어낼 수 있는 세상이 왔다. 어쩌면 앞으로는 이러한 기술의 원리를 알지 못하더라도 서비스를 사용하는데 상관없어지지 않을까 싶다. 개인적인 생각으로는 물론 엔지니어 입장에서 기술의 배경을 아는 것과 모르는 것의 차이는 크다고 생각하고, 아는 것이 필요하다고 생각하지만, 결국 이런 기..
한빛미디어에서 출간된 개발자를 넘어 기술 리더로 가는 길은 내가 감명 깊게 읽은 책 "개발 7년차, 매니저 1일차"의 저자가 쓴 책이다. 또한 한 원서를 김그레이스라는 분이 번역했는데, 이 분은 커리어리에서 킴코더 이름으로 코딩, 개발과 관련된 노하우를 많이 공유해주면서 활동하시는 분이다. 평소에 이 분의 글을 자주 보곤 했는데, 이렇게 책으로 나오게 되니 더 읽고 싶어졌다. 개발자라면 앞으로 매니저 트랙을 탈 것인지, 기술 리더의 트랙을 탈 것인지를 결정해야 하는데, 이 책은 그 결정을 함에 있어서 길잡이를 해주는 책이다. 개발자라면 언젠가 한번은 꼭 결정해야하는 일이고, 이 두 가지 길의 성격은 매우 다르다. 매니저의 길은 명확하게 의사소통하고, 동료들이 더 나은 일을 할 수 있도록 돕는 역할을 한다..
개발자를 위한 문서는 개발자 경험을 향상시키고 제품의 채택률을 높이며 고객 지원 비용을 낮춰준다고 한다. 또한 장기적으로는 제품의 평판을 높이고 경쟁 우위를 제공하여 사업의 성공에 중요한 역할을 한다고 한다. 개발자 문서를 잘 만들고 관리하는 방법은 무엇일까? 이 책에서는 문서화 하기 전 독자 이해하기, 문서화 계획하기, 초안 만들기, 편집 하기, 샘플 코드 통합하기, 시각적 콘텐츠 추가하기, 문서 배포하기, 피드백 수집하고 통합하기, 문서 품질 측정하기, 문서 구조화 하기, 문서 유지 관리 및 지원 중단하기 까지 개발자 문서를 완벽하게 만들기 위한 가이드를 End-to-End로 제공한다. 코드 자체가 잘 작성된다면 그 자체로 문서화가 된다는데, 복잡성과 규모가 일정 수준 이상인 프로젝트에서는 코드 레벨..
유니티를 이제 막 시작하려는 분들에게 추천하고 싶은 이 책은 한빛미디어에서 출간된 "초보자를 위한 유니티 입문"으로, 유니티 엔진을 이용하여 2D, 3D, 스마트폰용 게임을 만드는 과정을 담은 책이다. 1장에서는 유니티에 관련된 기본 지식과 설치 방법, 유니티 허브를 설명하고, 2장에서는 유니티 에디터 화면을 살펴보면서 각 기능을 사용하는 방법에 대해 설명한다. 3장 부터는 공 굴리기 3D 게임을 만들어보면서 유니티를 익히고, 4장에서 7장까지 게임의 기능을 추가해보면서 여러 리소스를 사용하는 방법에 대해 다루게 된다. 유니티의 장점 중 하나는 멀티 플랫폼 대응이 가능하다는 것이라 여러 게임 제작을 위한 회사에서 다양하게 활용되고 있다. 주요 대응 플랫폼으로는 윈도우, macOS, iOS, 안드로이드, ..
한빛미디어에서 출간된 온디바이스 AI (AI and Machine Learning for On-Device Development) 책은 모바일용 ML 개발을 위한 내용들을 담고있다. ML 모델을 직접 만들지 않더라도 ML Kit를 사용하여 모델을 만들수 있으며, 모바일 환경에서 최적화 까지 하여 사용할 수 있도록 폭 넓은 분야를 다루고 있다. 뿐만 아니라 TFLite, Core ML 분야는 한글 자료가 별로 없다는 것이 단점인데, 이 책에서 한글로 모바일 환경에서 모델을 이용하여 추론하는 방법들을 아주 자세히 다뤄주고 있어서 꽤 유용했다. 특히 8장 TFLite 더 깊게 이해하기 챕터에서는 TFLite 개념부터 시작하여 모델 저장하기, 모델 변환하기, 독립 실행형 인터프리터로 모델 테스트하는 방법을 다루..
혼자 공부하는 데이터 분석 책은 한빛미디어에서 출간되었는데, 혼자서도 실무에 써먹을 수 있을 만한 수준까지 할 수 있도록 로드맵을 제시하고 있기 때문에 입문용으로 딱 좋은 책 같다. 데이터 분석은 데이터를 수집, 처리, 정제, 분석, 모델링하여 의사 결정을 내리는데 도움을 주는 작업이다. 보통 R이나 파이썬을 사용해서 하게 되는데, 이 책은 파이썬 기준으로 작성되어있다. 데이터 분석의 기본은 데이터를 다루는 것 부터 시작하는데, 이 책에서는 파이썬에서 JSON 및 XML 데이터를 다루는 것을 포함하여 기본부터 탄탄히 설명해두었다. 또한 데이터를 수정하고 삭제하는 등의 데이터 정제하는 방법과 데이터의 분산을 구하고, 표준편차를 구하는 등 데이터를 요약하는 기능에 대해서도 수록해두었다. 데이터 분석에 대한 ..
구글 앱스 스크립트(GAS, Google Apps Script)는 구글이 제공하는 스프레드시트, 지메일, 드라이브, 캘린더, 문서, 프레젠테이션 등의 구글 서비스들을 자동화하고 연동할 수 있는 스크립트이다. 스프레드시트에서 테이블을 만들고, 지메일에서 알림 메일을 보내고, 드라이브의 폴더나 파일을 정리하고, 캘린더에 이벤트를 등록하고, 문서로 회의록 템플릿을 만들어 번역하는 등의 작업을 프로그래밍으로 할 수 있다. 무엇보다 중요한건 이러한 GAS를 사용하는데 서버나 환경 등을 구글이 모두 제공하며, 누구나 무료로 이용할 수 있다고 한다. 🙂 제 1장에서는 구글 앱스 스크립트 기본지식을 제공하고, 2장에서는 스크립트 편집기와 대시보드 기능들을 설명한다. 3장에서는 기본 문법에 대해 다루며, 4장에서는 제어..
Developer Relations 이란? 기업과 개발자의 관계를 만들고 유지하며, 장기적으로 기술적 우위를 점할 수 있도록 기반과 생태계를 만드는 분야 한빛미디어에서 출간된 "기업의 성공을 이끄는 Developer Relations" 책에서는 한국에서는 아직 낯선 디벨로퍼 릴레이션 또는 데브렐(DevRel)이라는 낯선 개념을 소개한다. 디벨로퍼 릴레이션의 목적은 '개발자 커뮤니티와 관계를 만드는 것'이라고 한다. 데브렐 전문가들은 회사와 엔드 유저인 개발자 사이의 연결고리 역할을 한다. 다른 분야의 전문가들은 일상적인 업무에서 의사결정을 내릴 때 비즈니스 측면의 최대 이익에 초점을 맞추는 반면, 데브렐 전문가들은 커뮤니티의 최대 이익에 중점을 둔다. 이 책에 실린 내용은 비록 외국 기업의 사례가 주를 ..
한빛미디어에서 출간된 “전문가를 위한 C”라는 책은 현업에서 C / C++ 언어를 사용하는 사람들이라면 심도있는 주제를 다양하게 설명해놓았기 때문에 참고해보면 좋을 것 같은 책이다. 또한 최신 C언어에 대한 내용도 담고있고, 프로세스 간 통신 하는 내용과 다른 언어와 통합하는 방법, 테스트와 유지보수 등에 대한 세세히 담겨있어서 실무에 도움 될 수 있는 책이다. 주니어 및 시니어 둘 다 볼 수 있는 책이다. 마지막 장에서는 빌드 시스템에서 바젤 빌드와 CMAKE에 대해서도 다루고 있어서 꽤 쏠쏠했다. 책이 약간 두껍긴 하지만 그래도 실무에 도움 될 만한 내용들이 많기 때문에 C언어를 주로 사용하는 개발자라면 한 권쯤 가지고 있어도 좋을 듯 하다. “한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다."
한빛미디어에서 출간된 김기현의 딥러닝 부트캠프라는 책은 딥러닝 패스트 캠퍼스에서 자연어 처리 및 파이토치 강의를 하시는 김기현 강사님이 쓰신 책이다. 딥러닝을 처음 접하는 사람들이나, 처음부터 다시 천천히 딥러닝 개념을 훑어보고 싶은 사람들을 위해 쓰여진 책이다. 책은 개발 환경 구축하는 법 부터 시작하여 딥러닝에 대한 전반적인 개념을 소개한다. 그 다음 파이토치 기반으로 텐서의 개념부터 시작해서 텐서를 자르는 방법, 텐서의 형태를 변환하는 방법 등을 자세히 다루고 있다. 그 다음에는 딥러닝 책에서 필수적으로 등장하는 개념인 선형 계층, 손실 함수, 경사하강법, 선형 회귀, 로지스틱 회귀, 심층신경망, 확률적 경사하강법, 최적화 등 기본 개념을 다룬다. 그리고 오버피팅을 방지하는 방법에 대해서도 기술해 ..
한빛미디어에서 출간한 이것이 자료구조 알고리즘이다 라는 책은 독자가 마지막 페이지까지 읽는 것을 목표로 기초부터 이해하기 쉽도록 집필해놓은 책이다. 수식은 최소화 하고 한 눈에 들어오는 그림을 많이 넣었다는 글귀는 혹하게 만든다. 개발자들에게 자료구조와 알고리즘이 필수라는 것은 실무를 하면서 매번 느끼고, 간헐적으로 계속 공부를 하게되느 분야인 듯 하다. 먼저, 자료구조란 데이터 보관 방법과 데이터에 관한 연산의 총체를 뜻한다. 흔히들 아는 단순 자료구조로는 int, long, double 등이 있으며, 복합적인 자료구조로는 선형, 비선형 방식에 따라 나뉘어 선형 자료 구조는 배열, 링크드리스터, 스택, 큐, 힙이 있고, 비선형 자료 구조로는 트리 및 그래프가 있다. 자료구조를 공부해야하는 이유는 자료구..
한빛미디어에서 레트로의 유니티 게임 프로그래밍 에센스라는 책의 개정판이 출간되었다. 참고로 레트로는 유명한 게임 개발자이시다. 이 책은 일단 2권으로 이루어져있으며 1권은 1부에서 5부까지, 2권은 6부에서 7부까지로 이루어져있다. 책이 꽤 두꺼운 편인데, 책이 쪼개질 수 있게 만들어져서 좋다. 이전 판과 달라진 점은 유니티 2021에 맞춰 내용이 갱신되었다는 점, 스크립터블 에셋에 관한 내용을 추가했다는 점, 어드레서블 시스템을 별도의 부록으로 다룬다는 점이 다르다. 특히 이 책은 유니티 입문서로 많이들 사용한다고 한다. 책에서도 "단기간에 실무 능력을 갖추게 도와줍니다"라고 써있다. 책에서는 입문자와 비전공자를 배려한 진행순서를 고려하고 있으며, 어려운 개념은 비유와 예시로, 복잡한 서술은 그림으로..
한빛미디어에서 출간된 "똑똑한 코드 작성을 위한 실전 알고리즘" 책은 해결하고자 하는 문제를 다양한 시각으로 풀어내는 능력을 키워내고, 효율적으로 소프트웨어를 개발할 수 있도록 하는 알고리즘을 꼼꼼히 기초부터 설명하여 실전에 잘 적용할 수 있도록 설명해냈다. 그렇기 때문에 프로그래밍을 어느정도 아는 사람을 독자로 삼았고, 파이썬 기반으로 알고리즘 개념들과 실전 문제들을 설명한다. 알고리즘은 예측 가능한 시간에 정확한 결과를 반환하는 컴퓨터 프로그램으로 구현된 단계별 문제 해결 방법이라고 한다. 알고리즘 연구는 정확성(해당 알고리즘이 모든 입력에 대해 동작하는가?)과 성능(해당 알고리즘이 주어진 문제를 해결하는 데 가장 효율적인 방법인가?)를 고려해야한다고 한다. 책에서는 총 8가지 챕터로 나눠 1장 부터..
한빛미디어에서 출간된 “MLOps 도입 가이드”라는 책은 기업이 MLOps를 도입하기 위한 머신러닝 모델 배포 프로세스, 시스템 구축, 확장, 효율화 및 관리에 대한 방법들을 소개한다. 참고로 MLOps는 Mahchine Learning Operations(머신러닝 운영)을 뜻한다. 이러한 내용들은 데이터 사이언티스트, 머신러닝 엔지니어 등 AI 엔지니어링 업무를 다루는 여러 사람들에 의해 작성되었기 때문에 MLOps를 도입하는데 있어서 발생하는 “조직적 이슈”와 “기술적 이슈”를 모두 다룰 수 있다. 책은 크게 3부로 구성되며, MLOps 개념과 필요성 / MLOps 적용 방법 / MLOps 실제 사례로 구성되어있다. 이 책의 1장에서 설명된 MLOps 개념과 필요성 그리고 이를 구축하는데 필요한 역할..
한빛미디어에서 출간된 머신러닝 실무 프로젝트(2판) 책은 기존 내용에 MLOps 및 슬롯머신 알고리즘을 활용한 강화학습 등의 내용을 추가하여 2판을 출간했다고 한다. 1장에서는 머신러닝을 어떻게 프로젝트에 적용하는지에 대해 배우며, 머신러닝 프로젝트 진행과정을 다음과 같이 명료하게 나누어 두었다. 1. 비즈니스 문제를 머신러닝 문제로 정의 2. 논문을 중심으로 유사한 문제들을 조사 3. 머신러닝을 사용하지 않는 방법은 없는지 검토 4. 시스템 설계를 고려 5. 특징량, 훈련 데이터와 로그를 설계 6. 실제 데이터를 수집하고 전처리 7. 탐색적 데이터 분석과 알고리즘을 설정 8. 실제 데이터를 수집하고 전처리 9. 시스템 통합 10. 예측 정확도, 비즈니스 지표 모니터링 머신러닝 엔지니어들은 이미 머신러닝..
한빛미디어에서 "fastai와 파이토치가 만나 꽃피운 딥러닝" 이라는 책이 출간되어 읽어보았다. 먼저 fastai가 무엇인지 알아보았다. fastai는 제레미 하워드라는 사람이 만든 PyTorch의 상위 Wrapper 같은 개념이며, PyTorch를 이용하여 다양한 기능들을 자동화시켜주고, 딥러닝 모델 구현을 용이하게 한다고 한다. 이 책에서는 fastai를 이용하여 최고의 결과를 달성하는 모델을 학습 시키는 방법, AI 모델을 웹 어플리케이션으로 바꾸는 방법, 딥러닝 모델이 작동하는 이유와 방법 등을 다룬다. 또한 딥러닝을 처음 접하는 사람들을 대상 독자로 다루고 있으며, 코딩 경험이 없더라도 내용을 이해하는데에는 무리가 없다. 다만 책이 총 720 페이지에 달하기 때문에 들고다니기에는 약간 무리가 있..
한빛미디어에서 "비전 시스템을 위한 딥러닝" 이라는 책이 출간되었다. 개인적으로 딥러닝 책은 영상, 음성, 자연어 등의 분야들이 모두 포함되어 있는 책이 많았어서 오로지 "컴퓨터 비전"만을 위한 책이 발간됬다는 소식이 무척이나 반가웠다! 🥰 컴퓨터비전이란 이 책에서도 말하고 있듯 "생물의 시각을 모사한다"라는 목표를 지향하는 기술 분야이다. 즉 인간의 눈으로 인지하는 모든 것들을 위한 기술이라고 말할 수 있다. 컴퓨터 비전이라는 연구분야는 결과물이 정적인 이미지나 동적인 영상으로 눈에 가시적으로 보이니까 더 흥미로운 분야인 것 같다. 한빛미디어에서 출간된 비전 시스템을 위한 딥러닝이라는 책의 목차는 다음과 같이 알짜배기만 쏙 담긴 구성으로 이루어져있다. 초보자를 위한 신경망과 딥러닝의 기초 사물 분류 및..
영진닷컴에서 2022년 1월에 출간된 “딥러닝을 위한 파이토치 입문” 책은 딥러닝을 배울 목적으로 파이토치를 배우고자 하는 입문자들을 위해 파이썬 자료형 개념부터 친절하게 설명하고있는 책이다. 파이토치를 능숙하게 다루기 위해서는 파이썬에서 리스트, 튜플, 딕셔너리를 자유자재로 다룰 수 있어야 한다. 이러한 개념을 포함하여 파이썬의 전반적인 개념을 2장에서 다루고 있다. 파이썬에서 필수적인 개념들만 쏙쏙 뽑아 다양한 예시를 통해 설명하고 있으며, 입문자들을 위해 쉽게 풀어쓰고 있기 때문에 이해가 훨씬 수월했다. 4장에서 다루는 파이토치 기본에서는 텐서의 개념부터 시작해서 커스텀 데이터와 커스텀 전처리를 사용하는 방법을 설명하고 있었다. 현업에서 데이터 엔지니어링을 하다보면 데이터를 전처리 할 때 딥러닝을 ..
이 책은 한빛미디어에서 출간되었으며, 데이터 과학 분야에 진출하고 싶은 사람이나 아직 데이터 과학 분야에서 일한지 몇 년 안된 사람들을 위해 만들어진 책이다. 책 제목에서 그렇듯 “데이터 과학자 되는 법”에 대해서 설명하고 있다. 자세히는 데이터 과학자의 역할과 직함에 따른 여러 직무를 소개하고, 데이터 과학자가 되기 위해 필요한 기술을 습득하는 다양한 방법에 대해 구체적으로 담았으며, 포트폴리오를 만드는 방법까지 설명하고 있다. 또한 데이터 과학 직무의 구직과정에 대해서도 아주 자세히 담았다. 커버레터 작성하는 법에서 직무별로 이력서를 다듬는 방법, 그리고 처우를 협상하는 방법까지! 데이터 과학에 발 담군지 몇 년 안된 이 시점에 이 책을 지금이라도 접할 수 있게 해준 한빛미디어와 글쓴이에게 깊은 감사..