서평 - 플레이어를 생각하는 게임UI 디자인 노하우

이 포스팅은 도서 플레이어를 생각하는 게임UI 디자인 노하우에 대한 리뷰를 담고 있습니다.

플레이얼르 생각하는 게임UI 디자인 노하우 표지

  • 출처: 한빛미디어

요약

서버와 클라이언트 프로그래머로 일을 하면서 어떻게 하면 플레이어에게 아름답고 효과적으로 어떻게 보일 수 있는지 관심이 많았기에 플레이어를 생각하는 게임UI 디자인 노하우 책을 보았을 때 굉장한 호기심이 들었습니다. 이 책은 역할에 따라 캐릭터 (페르소나) 로 이해하기 쉽게 설명을 하고 있는데 저는 안경끼고 줄무니 셔츠를 입은 엔지니어 캐릭터에 속하네요. (네, 안경을 쓰고 있습니다)

엔지니어 입장에서 봤을 때 UI 디자인 시 색각 이상과 프레임 속도까지 고려한다는 점이 매우 흥미로웠습니다. 서버 개발을 주로 진행했던 터라 색각을 고려해야 할 것이라고는 생각해 본 적이 없었습니다. 나라별로 긍정/부정의 의미를 나타내는 색이 다르다는 부분도 재밌었습니다. 글로벌 오픈을 위한 Localization (L10N) 작업을 진행하며 나라별로 주의해야 할 점이 있다는 것은 알았지만 색도 다르게 사용해야 한다는 부분은 이 책을 통해 처음 알았습니다.

이 책에는 이러한 지식 전달 외에도 다른 팀과의 협업을 어떻게 해야 좋은지와 실제 작업을 진행하며 주의해야 할 점이 무엇인지 잘 설명하고 있습니다. 게임 개발에 막 발을 내딛은 분들에게는 꼭 필요한 영양소와 같은 내용을 담고 있습니다. 또한 개발 경력이 있는 분들에게는 놓친 부분은 없는지 점검해 볼 수 있는 가이드를 제공한다고 생각합니다. 저의 경우엔 엔지니어 입장에서 UI 디자이너의 입장을 이해할 수 있었으며 멋진 게임 출시를 위한 UI 디자이너와의 협업에 큰 도움이 되리라 생각합니다.

더보기

서평 - 개발자를 위한 실전 선형대수학

이 포스팅은 도서 개발자를 위한 실전 선형대수학에 대한 리뷰를 담고 있습니다.

개발자를 위한 실전 선형대수학 표지

  • 출처: 한빛미디어

요약

선형대수(linear algebra)는 데이터분석 혹은 기계학습을 학습하는데 있어 기초를 탄탄하게 할 수 있는 기초 중 하나입니다. 실제로 어떻게 쓰이는지 예시를 본다면 다음과 같습니다.

첫째로 딥러닝을 통한 임베딩 스페이스를 발견하기 전에는 단어와 문서 사이에 보이지 않는 관계를 가정하여 pLSA (probabilistic Latent Semantic Analysis) 라는 방법을 사용했습니다. 좀 더 쉽게 설명하자면 각 문서가 어떤 토픽으로 구성되었나 하는 것들을 분석하기 위해서 이러한 작업을 했다고 생각하시면 됩니다. 이 책에서는 pLSA의 기반이 되는 특이값 분해 (Singular Value Decomposition)을 설명하고 있습니다.

둘째로 바로 앞에 언급한 임베딩 스페이스에서는 서로간의 유사성을 측정하기 위해 코사인 유사도를 사용하는데 이 책에서 설명하고 있는 벡터-내적 연산을 활용합니다.

이 외에도 선형대수의 기초적인 개념은 다양한 곳에서 쓰이고 있습니다. 이 책은 선형대수에서 중요한 핵심 개념들을 설명하고 있는데 어떤 분야를 공부하기 위해 선형대수를 보게 되었는지 생각하시면서 이 책을 보신다면 더욱 도움이 될 것이라 생각합니다. 물론 선형대수 자체에 흥미를 느껴 이를 탐구하고자 할 때에도 좋은 책이라 생각합니다. 파이썬의 numpy 라이브러리와 함께 잘 설명하고 있기에 추후 데이터 분석 혹은 기계학습 모델링을 할 때 기초가 부족하여 막히는 경우는 없을만큼 내용이 잘 정리된 책이라 생각합니다.

더보기

서평 - 진화적 아키텍처

이 포스팅은 도서 진화적 아키텍처에 대한 리뷰를 담고 있습니다.

진화적 아키텍처 표지

  • 출처: YES24

요약

소프트웨어 개발자에게 레거시 코드는 피할 수 없는 숙명입니다. 어떤 코드이든 배포가 되어 사용하는 순간 배포된 내용을 수정하는데는 큰 비용이 들기 때문입니다. 이런 조건 속에서 비교적 빠르게 변화하는 요구 사항을 대응하기 위한 애자일 방법이 2000년 전후로 등장합니다. 그렇다면 소프트웨어 개발은 어떻게 하는 것이 합리적일까요? 이 책에서는 진화적 아키텍처라는 관점을 소개하고 이를 통해 어떻게 소프트웨어를 점진적으로 개선해 나갈 수 있는지 제시하고 있습니다.

더보기

서평 - 챗GPT 개발자 핸드북

이 포스팅은 도서 챗GPT 개발자 핸드북에 대한 리뷰를 담고 있습니다.

챗GPT 개발자 핸드북 표지

  • 출처: YES24

요약

IT 업계에서 일을 하며 보낸 기간 동안 빅데이터, 알파고, 블럭체인, 그리고 메타버스까지 다양한 버즈워드가 스치듯 지나갔습니다. 그리고 최근엔 ChatGPT가 아주 큰 버즈워드인데요, 그간의 버즈워드와 다른 점은 일반적인 용도로 밀접하게 사용할 수 있다는 점이라 생각합니다. 책 챗GPT 개발자 핸드북에서는 ChatGPT를 어떻게 활용할 수 있는지 여러가지 사례를 간략히 정리합니다.

더보기

서평 - MLOps 실전 가이드 (Practical MLOps)

이 포스팅은 도서 MLOps 실전 가이드에 대한 리뷰를 담고 있습니다.

MLOps 실전 가이드 표지

요약

우리가 익히 들어온 DevOps의 경우 개발자의 생산물을 관리(review)하고 통합(integration)하여 배포(distribution)한다. MLOps는 무엇이 다른 것일까?

MLOps 실전 가이드는 DevOps와 MLOps의 차이점이 무엇인지 설명하고 아래의 핵심 개념을 설명한다.

  • bash shell
  • cloud computing (Google, AWS, Azure)
  • AutoML, KaizenML
  • ONNX

본 리뷰에서는 위 핵심개념을 간략히 소개한다. 소개에 앞서 이 책의 핵심을 나타내는 한 문장을 꼽으라면 아래의 문장이 핵심을 담고 있다고 생각한다.

  • MLOps는 DevOps 방법론을 사용하여 머신러닝을 자동화하는 프로세스라고 생각하면 된다.

앞서 질문한 MLOps는 무엇이 다른 것일까? 에 대한 답을 이 책에서 찾을 수 있었는데 여러분들도 그 해답을 이 책을 통해 찾으실 수 있길 바라며 리뷰를 시작한다.

더보기

서평 - 개발자를 넘어 기술 리더로 가는 길 (The Staff Engineer's Path)

이 포스팅은 도서 개발자를 넘어 기술 리더로 가는 길에 대한 리뷰를 담고 있습니다.

개발자를 넘어 기술 리더로 가는 길 표지

요약

대략 15년 간 10개의 정도의 개발 프로젝트를 경험하며 업무가 왜 올바른 방향으로 가지 않을까? 라는 생각을 종종 하게 된다. 아마 여기서의 올바름은 각자가 갖고 있는 철학이나 합리성 등 일 것이다. 직책은 주니어 개발자부터 시작해 꽤 높은 직책까지 맡은 적이 있는데 연차가 쌓일 수록 개발을 어떻게 하지? 라는 단계에서 어떻게 하면 같이 협업하는 동료와 목표를 향해 빠르게 도달할 수 있을까? 의 단계로 넘어가는 중이다.

위 문단에 적힌 내용 중 단 하나라도 공감하시는 것이 있다면 이 책 - 개발자를 넘어 기술 리더로 가는 길 - 은 반드시 읽어보셔야 한다. 최근 읽은 책 중 하나는 회사의 조직 구조에 따라 어떻게 행동하는 것이 본인 혹은 조직이 갖고 있는 목표 혹은 의지를 관철할 수 있는지에 대한 내용을 담고 있다. 좀 놀라웠던 것은 해당 책의 내용을 엔지니어 입장에서 다시 적어둔 것 같다는 느낌을 받은 점이다. 엔지니어링을 넘어 좀 더 영향력을 발휘하고 싶으신 분들이라면 이 책을 읽어보실 것을 권한다.

더보기

서평 - 머신러닝 시스템 설계

이 포스팅은 도서 머신러닝 시스템 설계에 대한 리뷰를 담고 있습니다.

머신러닝 시스템 설계 표지

요약

이 책은 머신러닝과 밀접하게 일하시는 분들이라면 반드시 읽어봐야 할 책이라 생각합니다. 예를 들면 ML Engineer 혹은 ML Ops 하시는 분들은 당연하며 Product Owner (PO) 와 User Experience (UX)를 담당하시는 분들도 머신러닝의 적용과정 몇 결과에 대한 이해를 위해 읽어보시면 좋은 책 입니다.

ML이라고 하면 최신 모델과 기법만을 생각하기 쉬운데 서비스 적용 시 현실적으로 겪어야 하는 내용들에 대해 잘 정리하고 있습니다. 예를 들면 머신러닝이 해당 서비스에서 왜 필요한지 그리고 어떤 비지니스의 목표를 달성해야 하는지부터 알아야 한다는 점을 강조하고 있습니다.

카카오에서 다양한 서비스에 추천시스템을 적용해본 경험을 바탕으로 이 책을 보았을 때, 제가 겪었던 다양한 상황이 이 책에 녹아있어 놀라웠습니다. 겪어본 것 뿐 아니라 그보다 더 다양한 상황을 쉽고 체계적으로 정리하고 있습니다.

서비스의 비지니스 성과 달성을 머신러닝을 통해 하고자 분들의 경우 이 책을 꼭 추천드립니다. 실전 머신러닝의 정수를 담고 있기에 많은 도움이 될 것이라 생각합니다.

더보기