실습과 그림으로 배우는 리눅스 구조 - 개발자가 알아야 하는 OS와 하드웨어의 기초
다케우치 사토루 지음, 신준희 옮김 / 한빛미디어 / 2019년 2월
평점 :
구판절판


리뷰라는 건 내용보다 누가 하냐가 중요한 것 같다. 그래서 먼저 나를 소개하고자 한다.

1. 리뷰어 소개

본인은 PC통신을 하며 처음으로 C언어를 배웠다. PC가 돌아가는 원리가 궁금하여 당시 배우는 사람이 없었던 어셈블리어도 간단히 익혔다. 리눅스는 (아마도) 알짜리눅스 6.0 버전을 처음으로 설치했던 것 같다. 리눅스를 통해 처음 사회에 발을 내딛은 것은 2005년 Intel 개발자회의에서였다. 대학생 때는 작은 프로젝트를 수 차례 했다. 짧은 시간이었지만 국제기구에서 개발자로 일했다. 현재는 작은 공기업의 IT부서에서 전체 시스템을 (다른 분들과 함께) 맡아서 운영하고 있다. 재직중인 곳에서는 포탈, 통합검색, 내・외부메일 업그레이드 및 교체 등 여러 가지 프로젝트를 수행했다.

2. 책 소개

이번에 읽은 책은 <실습과 그림으로 배우는 리눅스 구조> – 개발자가 알아야 하는 OS와 하드웨어의 기초이다. 일본의 후지츠(주)에서 일하는 다케우치 사토루씨가 쓴 책을 신준희님이 번역했다. 번역 수준은 훌륭한 편이다.

이 책은 OS와 하드웨어 원리를 소개한 다른 책들과 다르게 훌륭한 그림, 쉬운 설명, 그리고 설명을 직접 확인할 수 있는 프로그램 까지 함께 제공하기 때문에 그 어떤 책보다 쉽게 컴퓨터의 동작 원리를 이해할 수 있다.

3. 대상독자

당신이 개발자 혹은 서버 운영자라고 가정하자. 만약 아래 용어 중 하나라도 자신의 언어로 풀어서 설명할 수 없다면 이 책을 읽을 것을 추천한다.

시스템 콜(system call), 커널 모드(kernel mode), 사용자 모드(user mode), 프로세스 생성, 프로세스 스케줄러, sar 명령어, ldd, 물리 메모리, 가상 메모리, 페이지 테이블, 요구 페이지, 페이지 인, 페이지 아웃, 스와핑, COW(Copy On Write), HDD와 SSD의 특성

4. 특징

최근에 읽었던 운영체제와 컴퓨터 원리를 설명한 서적 중 가장 잘쓰여진 책이라고 생각한다. 여기서는 좋았던 점과 아쉬웠던 점을 소개한다.

4.1. 좋았던 점

이 책의 가장 큰 장점은 훌륭한 그림이다. 책 서문에 나오는 컴퓨터 시스템의 계층을 예쁜 모델과 현실로 구분해서 그렸는데 참 인상적이었다.

프로세스와 OS의 관계 또한 그림과 함께 설명을 하다보니 매우 직관적이고 이해하기 쉽다. 아래 그림에서 보듯이 프로세스 고유의 코드(개발자가 작성한 코드)는 사용하는 언어가 제공하는 함수를 사용(OS외의 라이브러리)한다. 그리고 이 언어가 제공하는 기본 라이브러리는 결국 OS 라이브러리. 즉, 시스템 콜을 호출한다. 시스템 콜을 호출하면 프로그램 실행 모드가 사용자 모드에서 커널 모드로 변경되어야 한다. 이러한 설명이 그림과 함께 설명된다. 이 보다 더 쉬울 수 있을까?

가끔씩 OS나 하드웨어가 작동하는 원리를 이전처럼 잘 알 필요가 없다는 사람들도 있다. 실제로 어설픈 사람의 최적화보다 컴파일러의 자동 최적화가 더 나은 경우도 있다. 하지만 만약 자동화에 의해 처리되는 어떤 작업에 의심스러운 부분이 발생하면 어떻게 할 것인가? 그 때는 사람이 직접 분석해야 한다. 이러한 분석을 할 때 필수적으로 요구되는 것이 바로 ‘원리’ 이다. 아래 그림은 OS의 문맥 전환(context switching)에 대해 소개한다.

모바일 컴퓨팅 환경에서는 전원관리가 중요하다. 물론 iOS나 Android가 알아서 잘 하겠지만, 이러한 것이 어떻게 구현되어 작동하는지 알면 더 좋지 않을까?

개발자가 가상 메모리와 물리 메모리가 각각 언제 확보되는지를 이해하고 있다면 프로그램을 작성할 때 이러한 부분을 고려하여 개발할 수 있지 않을까? 물론 어떤 분야에서 일을 하느냐에 따라 고려할 필요가 거의 없는 경우도 있겠지만, 이러한 내용을 이해하는 사람과 그렇지 못한 사람은 시간이 지날수록 내공에 차이가 생기지 않을까?

OS는 I/O 스케줄러를 통해 HDD 또는 SSD가 최적의 성능을 낼 수 있도록 일하고 있다. 알고 있었는가?

C언어의 malloc() 함수는 메모리를 확보한다. 이 함수는 내부적으로 리눅스의 mmap() 함수를 호출한다.

최근에는 대학에서 입문용 프로그래밍 언어로, 산업에서는 인고지능 등에서 많이 사용하는 언어인 파이썬은 어떨까? 파이썬도 결국 C언어처럼 메모리 할당을 위해서 mmap() 함수를 호출한다.

또한, 이 책은 이론을 실제로 확인할 수 있는 프로그램을 제공한다. 아래 그림은 mmap() 함수를 호출하기 전과 후의 프로세스 메모리 맵 상태이다. 붉은 박스를 보면 알 수 있는데, mmap() 함수 호출 후 요청한 크기만큼의 메모리 공간이 확보되었다.

또한 아래 예제는 요구 페이지(demand paging)을 확인하는 프로그램이다. 두 번째 그림에서 보면 실제 물리 메모리가 확보되기 전 page fault가 먼저 발생하는 것을 알 수 있다. 지금 여기서 본인이 얘기하는 내용이 머리에 정확히 그려지지 않는다면 이 책을 사서 읽으면 된다. 정말 쉽게 설명을 하고 있다.

마지막으로 좋았던 점은 이 책의 번역자님이 중간에 작성하신 친절한 주석이다. 책을 읽는 중 궁금한 내용들이 자세히 적혀 있어서 좋았다.

4.2. 아쉬웠던 점

이 책의 내용 자체에 대해서는 아쉬운 점이 별로 없다. 그래도 한 가지 꼽자면 책의 내용을 실습하기 위한 소스코드를 제공하지 않는다는 것이다. 아래는 본인이 작성한 파일이다. 실습은 CentOS 7 (64비트) 에서 했으니 동일한 환경이면 문제 없이 실습이 가능할 것이다.

5. 총평

자신이 작성한 프로그램이 실제로 어떻게 동작하는지 궁금한 사람은 이 책을 읽어야 한다. 사용자 관점에서 조금은 더 컴퓨터 관점으로 프로그램의 실행 원리를 바라보게 되면 조금은 더 컴퓨터와 더 친해질 수 있다.

이 책을 통해 당장 눈에 보이는 화려한 스킬을 쌓을 수는 없다. 그러나 지금 당장은 아니지만 나중에 빛을 볼 수 있는 내공을 쌓을 수 있다. 소프트웨어 개발자로서 필요한 기본 역량을 쌓고 싶은 이들에게 일독을 권한다.


댓글(0) 먼댓글(0) 좋아요(2)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
실습과 그림으로 배우는 리눅스 구조 - 개발자가 알아야 하는 OS와 하드웨어의 기초
다케우치 사토루 지음, 신준희 옮김 / 한빛미디어 / 2019년 2월
평점 :
구판절판


개발자들이 읽으면 좋은 책입니다. 겉으로 보일 수 있는 화려한 스킬은 아니지만, 앞으로의 성장을 위해 필요한 내공을 쌓을 수 있기 때문입니다. 이 책의 가장 큰 장점은 훌륭한 그림입니다. 설명과 함께 적재적소에 그림이 등장하는데 이해력을 상당히 높여줍니다.

댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
파이썬 웹 프로그래밍 - Django(장고)로 배우는 쉽고 빠른 웹 개발, 개정판 파이썬 웹 프로그래밍
김석훈 지음 / 한빛미디어 / 2018년 8월
평점 :
구판절판


1. 들어가며

인공지능(AI) 이야기가 나오면 항상 빠지지 않고 나오는 언어 중 하나가 파이썬(Python)이다. 파이썬(Python)이 인기를 끄는 이유는 생산성(productivity) 때문이다. 생산성이 높다는 말은 배우기 쉽고 코드 몇 줄로 많은 일을 할 수 있다는 말이다.


실제로 이 글을 쓰는 본인도 Selenium Web Driver를 통해 간단한 웹 자동화(automation) 도구를 만들 때 파이썬(Python)을 사용했는데 자바(Java)보다 훨씬 편하게 프로그래밍할 수 있었다. 그러나, 사실 나는 파이썬(Python)이 이름 때문에 싫다. 나는 뱀이 싫다.

파이썬(Python)은 '피톤'이라는 이름으로 알려진, 고대 그리스 신화에 나오는 거대한 뱀의 이름이다. '피톤'은 Python을 고대 그리스어로 읽은 것이며, 영어를 그대로 읽으면 '파이썬'이 된다

이번에 리뷰하는 책은 한빛미디어에서 출간한 <Django(장고)로 배우는 쉽고 빠른 웹개발, 파이썬 웹 프로그래밍(김석훈 지음)>이다. 파이썬 웹 프레임워크인 장고(Django)는 제목 그대로 쉽고 빠르며 안전한 웹 서비스를 구축할 수 있도록 프로그래머를 돕는다.

프로그램을 만들기 위해서는 컴퓨터와 대화를 해야 한다. 그리고 대화를 하기 위한 언어를 프로그래밍 언어라고 한다. 이러한 프로그래밍 언어에는 파이썬(Python), 자바(Java), C, C++, C#, Node.js, JavaScript 등이 있다. 각 언어는 기본적으로 OS에서 제공하는 기능을 사용하기 위한 라이브러리, 수많은 학자들이 연구했던 자료구조와 알고리즘 등을 구현한 라이브러리 등을 제공한다. 그리고 이러한 라이브러리를 활용해서 어떤 특정한 목적에 맞는 종합선물세트를 만드는데 이러한 것을 프레임워크(Framework)라고 부른다. 파이썬의 장고(Django)웹 사이트를 빠르게 만들 수 있는 프레임워크(Framework)로 인스타그램(Instagram), 스포티파이(Spotify), 드랍박스(Dropbox) 등에서 이를 활용하고 있다.


2. 구성 및 특징

이 책은 아래와 같은 구성을 갖는다.

  • 웹 프로그래밍 소개
  • 파이썬 웹 표준 라이브러리 소개
  • Django 웹 프레임워크 개론
  • Django 웹 프레임워크 심화
  • 웹 애플리케이션 배포

웹 프로그래밍을 하다보면 HTTP, 웹 서버, WAS, 웹 클라이언트, CGI 등 생소한 용어가 갑자기 튀어나오기 마련인데 이러한 용어를 굉장히 쉽게 설명한다. 이 책에서 가장 잘 쓰여진 부분이라고 생각하기 때문에 웹 프로그래밍에 대한 이해를 얻고자 한다면 이 책의 앞 부분을 읽어보기 바란다.


3. 기억하고 싶은 글귀

웹 프레임워크는 사용자 프로그램과 저수준의 http.server 라이브러리 중간에 위치하여 웹 서버의 애플리케이션 개발을 좀 더 편리하게 해주면서, 표준 라이브러리의 기능을 확장해주는 역할을 하고 있습니다. 물론 웹 프레임워크는 파이썬의 표준 라이브러리를 사용하여 개발되었습니다. 만일 여러분이 웹 프레임워크에 관심이 있어, 소스를 분석해보면 이를 확인할 수 있을 것입니다. 웹 프레임워크를 직접 개발하는 고급 프로그래머라면 http.server 모듈에서 제공하는 API를 다루겠지만, 보통의 경우라면 웹 프레임워크에서 제공하는 API를 이용하여 웹 서버 애플리케이션을 개발하는 것이 대부분입니다. - 47쪽


#


파이썬에서는 WSGI(Web Server Gateway Interface) 규격이 정의되어 있습니다. 파이썬 애플리케이션을 실행하고자 하는 웹 서버는 이 규격을 준수해야 합니다. WSGI는 웹 서버와 웹 애플리케이션을 연결해주는 규격으로, 장고(Django)와 같은 파이썬 웹 프레임워크를 개발하거나, 이런 웹 프레임워크를 아파치(Apache)와 같은 웹 서버와 연동할 때 사용합니다. - 76쪽


#


장고(Django)는 현재 가장 많이 사용되는 파이썬 웹 프레임워크입니다. 2003년 로렌스 저널-월드신문(Lawrence Journal-World Newspaper)을 만들던 웹 개발팀의 내부 프로젝트로 시작됐으며, 2005년 오픈소스 프로젝트로 공개되었습니다. 그리고 구글의 웹 앤진에서 장고를 사용하면서 많은 사람들이 사용하게 되었고, 현재는 파이썬의 대표적인 웹 프레임워크로 자리매김하고 있습니다. - 85쪽


#


웹 사이트를 설계할 때 가장 먼저 해야 할 일은 프로그램이 해야 할 일을 적당한 크기로 나누어서 모듈화하는 것입니다. 이 경우, 웹 사이트의 전체 프로그램 또는 모듈화된 단위 프로그램을 애플리케이션이라고 합니다. 즉, 프로그램으로 코딩할 대상을 애플리케이션이라고 부르는 것입니다.

그러나 장고에서는 용어를 사용할 때, 애플리케이션의 개념을 웹 서버 개발 측면에서 좀 더 구체화하고 있습니다. 웹 사이트에 대한 전체 프로그램을 프로젝트(Project)라 하고, 모듈화된 단위 프로그램을 애플리케이션(Application)이라 부르고 있습니다. 즉, 애플리케이션 프로그램들이 모여서 프로젝트를 개발하는 개념입니다. - 94쪽


#


웹 프로그램 개발 시 일반적으로 언급되는 MVC(Model-View-Controller) 패턴이란 데이터(Model), 사용자 인터페이스(View), 데이터를 처리하는 로직(Controller)을 구분해서 한 요소가 다른 요소들에 영향을 주지 않도록 설계하는 방식입니다. 이런 방식으로 개발을 진행하면 UI 디자이너는 데이터 관리나 애플리케이션 로직에 신경 쓰지 않고도 화면 UI를 설계할 수 있고, 로직이나 데이터를 설계하는 개발자도 화면 디자인은 디자이너에게 맡기고 자신의 설계 및 개발 업무에만 집중할 수 있게 됩니다. 파이썬도 이러한 MVC 개념을 그대로 받아들였는데, 용어는 다르게 사용하고 있습니다.


장고 프레임워크에서는 View를 Template, Controller는 View라고 표현하며, MVC를 MVT(Model-View-Template) 패턴이라고 합니다. 모델(Model)은 데이터베이스에 저장되는 데이터를 의미하는 것이고, 템플릿(Template)은 사용자에게 보여지는 UI 부분을, 뷰(View)는 실질적으로 프로그램 로직이 동작하여 데이터를 가져오고 적절하게 처리한 결과를 템플릿에 전달하는 역할을 수행합니다.


예를 들면, 모델은 블로그의 내용을 데이터베이스로부터 가지고 오거나 저장, 수정하는 기능을, 뷰는 버튼을 눌렀을 때 어떤 함수를 호출하며 데이터를 어떻게 가공할 것인지 결정하는 역할을, 템플릿은 화면 출력을 위해 디자인과 테마를 적용해서 보여지는 페이지를 어떻게 연결되는지를 보여주고 있습니다. - 95쪽


#


ORM(Object-Relational-Mapping)은 쉽게 표현하면 객체와 관계형 데이터베이스를 연결해주는 역할을 합니다. 기존의 웹 프로그래밍에서 데이터베이스에 접근하려면 직접 SQL 언어를 사용해 데이터를 요청해야 했고, 개발자는 SQL 및 데이터베이스에 접근하기 위한 드라이버 API 등에 대해 잘 알고 있어야 했습니다. 하지만 ORM에서는 데이터베이스 대신에 객체(클래스)를 사용해 데이터를 처리할 수 있습니다. 객체를 대상으로 필요한 작업을 실행하면, ORM이 적절한 SQL 구문이나 데이터베이스 API를 호출해서 처리해주기 때문입니다. 물론 원한다면 직접 SQL을 사용해 데이터베이스의 데이터를 얻어올 수도 있습니다. - 96쪽


#


장고에서는 URL 패턴으로부터 파라미터를 추출하고 그 파라미터로 데이터베이스를 검색하여 해당 데이터를 템플릿 시스템에서 랜더링하는 기능처럼, 웹 프로그램 개발 시 공통적으로 사용할 수 있는 로직을 이미 개발해 놓고 기본 클래스로 제공하고 있기 때문에 이를 상속받아 사용하면 됩니다. 장고에서는 이렇게 공통된 로직을 미리 개발해 놓고 제공하는 뷰를 제네릭 뷰(generic view)라고 부릅니다. - 206쪽

또한 개념을 쉽게 이해할 수 있는 도표가 적절히 포함되어 학습에 큰 도움이 되었다.


4. 아쉬웠던 점

장고(Django)를 처음 접하는 사람으로서 평을 하자면 이 책은 감탄으로 시작해서 아쉬움으로 끝나는데 여기에는 몇 가지 이유가 있다.


첫째, 뒤로 갈수록 불친절하다. 예를 들어, 애플리케이션을 Nginx에 배포하는 317쪽을 살펴보면 include /home/shkim/pyBook/ch9/www_dir/uwsgi_params 라는 항목이 나오는데 책에서는 이 파일에 대한 설명이 없다. 물론, 예제 소스에 포함된 코드라고 항변할 수 있겠으나 독자의 집중력을 흐트러뜨리기 때문에 바람직한 구성은 아니다. 결국 구글링을 통해 아래 파일을 직접 추가해야 했다. 본인은 https://django.ryanami.com 에 책의 실습 예제를 성공적으로 배포 했지만, 설명이 매끄럽지 않기 때문에 이 부분에서 좌절한 독자들이 있을 것 같다.


둘째, 편집에 아쉬움이 있다. 부록 D의 PyCharm 무료 버전 사용하기의 스크린샷은 너무 어두워서 읽을 수가 없다. 통합환경(Integrated Development Environment, IDE)의 테마를 White 계열로 변경해서 포함했어야 한다. 아래 이미지에서 보듯이 읽기 어렵다.


그리고 아래 사진을 보면 알 수 있듯이 어떤 목적을 달성하기 위해 필요한 작업을 순서대로 나열하는데 단순히 '>' 로 표현할 게 아니라 순서를 의미하는 숫자 등으로 표시 했다면 더 좋았을 것 같다. '>' 는 커맨드 창의 Prompt를 보여주기 위한 것 같다. 그런데 그게 큰 의미가 있을까? 일반 유저를 나타내는 $, 루트를 의미하는 # 라면 모를까.


셋째, 책을 읽은 독자가 앞으로 어떻게 학습해야 할지 알려주지 않는다. 한 권의 책으로 어떤 지식을 제대로 습득 하기에는 어려움이 있다. 장고(Django)에 대해 전문가인 저자의 경험을 기반으로 앞으로 어떻게 학습하면 좋을지 로드맵을 제시했으면 어땠을까? 예를 들어, 참고할 웹사이트나 도서를 추천한다면 장고(Django) 걸음마 수준의 본인 같은 독자에게 큰 도움이 되었을 것이다. 물론, 할 사람은 알아서 다 한다. 그래도 알려주면 더 좋지 않나?


끝으로 책의 실습 예제를 따라한 후 얻게 되는 결과물이 아쉽다. 좀 더 예쁜 UI에 실용적인 결과물을 만드는 걸 목표로 했다면 책을 모두 읽은 후 얻게 되는 뿌듯함이 훨씬 더 많았을 것 같다. 참고로 책의 예제는 Django 공식 사이트에서도 확인이 가능하다. 개인적으로는 개인 블로그를 만드는 장고걸스 튜토리얼이 훨씬 좋았다.


5. 어색한 문장 또는 오탈자

지금까지 리뷰했던 책 중 어색한 문장이나 오탈자가 가장 적은 책이었다. 아래는 의미 전달은 되나 일부 어색한 내용이 있어 아래와 같이 수정해봤다.


(242쪽 표 5-6) Author 테이블 데이터에 Publication Date 라는 컬럼이 존재하는데 실제로는 존재하지 않으므로 제거되어야 한다.

#

(268쪽 마지막 문단 - 원문) application 객체는 아파치와 같은 운영 웹 서버뿐만 아니라, 장고의 개발용 웹 서버인 runserver에서도 같이 사용하는 객체입니다. 다만 다른 점은 application 객체의 위치를 지정하는 방식입니다. 아파치나 NGINX/uWSGI는 설정 파일에서 지정하고, 즉 httpd.conf 설정 파일의 WSGIScriptAlias 지시자 또는 uwsgi.ini 설정 파일의 module 항목으로 지정하고, 개발용 runserver에서는 settings 모듈(mysite/settings.py)의 WSGI_APPLICATION 변수로 지정합니다.


(268쪽 마지막 문단 - 제안) application 객체는 아파치와 같은 운영 웹 서버뿐만 아니라, 장고의 개발용 웹 서버인 runserver에서도 같이 사용하는 객체입니다. 지금까지 예제에서 사용한 runserver의 경우에는 application 객체를 settings 모듈(mysite/settings.py)의 WSGI_APPLICATION 변수로 지정했습니다. 그러나 아파치나 NGINX 같은 웹 서버는 application 객체의 위치를 설정 파일에서 지정합니다. 예를 들어, 아파치의 경우에는 설정 파일(httpd.conf)에서 WSGIScriptAlias 지시자로 설정하고, Nginx의 경우에는 웹 서버의 설정 파일이 아니라 파이썬 코드를 실행하는 Web Application Server(WAS)인 uWSGI 서버의 uwsgi.ini 설정 파일에서 지정합니다.


6. 총평

국내 유일의 장고(Django) 책인 것으로 보인다. 한국어로 쓰여진 책이고 저자와 출판사가 꼼꼼히 검수를 해서 문장이 잘 읽히고 깔끔하다. 물론, 다소 설명이 장황한(verbose) 부분도 있는 게 사실이지만 개인적으로는 설명이 딱딱하지 않고 저자와 대화하는 듯한 느낌이 들어서 더 좋았다.


인터넷으로 정말 대부분의 정보를 찾을 수 있지만 그럼에도 불구하고 사람들이 책을 사는 이유는 체계화되고 검증된 자료를 편하게 읽고 싶어서다. <Django(장고)로 배우는 쉽고 빠른 웹개발, 파이썬 웹 프로그래밍(김석훈 지음)>은 여기서 말한 구매 이유에 충분히 만족하는 책이다.


만약 당신이 장고(Django)를 처음 접한다면 이 책은 훌륭한 출발점이 될 것이다. 나는 이 책을 통해 장고(Django)를 처음 접했는데 저자가 쉽게 여러 가지 개념을 설명해서 빠르게 개념을 읽힐 수 있었다. 장고를 배우고 싶다면 이 책을 읽어볼 것으로 추천한다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
파이썬 웹 프로그래밍 - Django(장고)로 배우는 쉽고 빠른 웹 개발, 개정판 파이썬 웹 프로그래밍
김석훈 지음 / 한빛미디어 / 2018년 8월
평점 :
구판절판


장고(Django) 개념을 빠르게 익히기에는 좋습니다.

댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo
 
 
 
IT 트렌드 스페셜 리포트 2019 - 한 발 더 다가온 4차 산업혁명 시대의 비즈니스 기회를 잡아라 IT 트렌드 스페셜 리포트 2
김석기 외 지음 / 한빛미디어 / 2018년 11월
평점 :
절판


1. 들어가며

한빛미디어에서 발간한 IT 트렌드 스페셜 리포트 2019는 제목에서 알 수 있듯이 2019년, 주목해야 할 IT 트렌드를 다룬다. 각 분야의 전문가 5명이 함께 집필한 이 책은 독자로 하여금 빠르게 IT 트렌드*를 파악할 수 있게 돕는다.


*이 책에서 말하는 IT 트렌드는 '비즈니스 관문''테크(Tech) 관문'으로 구성되며 여기에는 비즈니스 기획자와 개발자가 서로 원활하게 의사소통을 했으면 하는 출판사의 의지가 담겨있다.


2. 구성 및 특징

2019년의 주제는 다음과 같다.  

  • 인공지능: 비즈니스 경쟁력을 만드는 기반 기술
  • 5G: 무지연 비즈니스 플랫폼의 탄생
  • 로봇: 산업 현장을 넘어 일상으로
  • 드론: 지능형 드론 시대의 개막
  • 대화형 플랫폼: 새로운 사용자 경험의 탄생
  • 실감형 미디어: 포스트 중심기기의 가능성
  • 블록체인: 생태 지도와 차세대 기술

각 장은 주제에 대한 설명으로 시작해서 실제 사례를 담고 있는 <테크 리포트>로 마무리 된다. 특별히 이 책이 좋았던 이유는 단순히 주목해야 할 기술을 소개하는 것이 아니라 기술이 등장함으로써 비즈니스에 미치는 영향부터, 활용 사례, 주요 사업자 동향 등을 설명한다는 것이다. 이러한 책 구성은 각 주제에 대한 큰 그림을 그릴 수 있도록 돕는다.


책에 포함된 <가트너 IT 10대 전략 기술 10년> 그림은 트렌드를 하나의 고정된 점(dot)이 아니라 지속적인 흐름(flow)으로 볼 수 있게 한다는 점에서 매우 유익했다.

세계적인 IT 조사기관인 가트너가 매년 발표하는 10대 전략 기술은 IT 업계가 어떻게 변화할지 예상한 대표적인 트렌드 예측이다. 가트너의 발표를 더욱 의미 있게 살펴보려면 단순히 내년 전략 기술로 무엇을 선정했는지 볼 것이 아니라, 지난 10년간 기술 변화의 추세를 살펴보아야 한다.

- 프롤로그, 27쪽

또한, 책의 마지막장에 포함된 <블록체인 비즈니스를 판단하는 11가지 의사결정 트리>는 블록체인 기술 활용을 검토할 수 있는 훌륭한 도표로 기획자들이 블록체인 도입 관련 의사결정을 할 때 참고할 수 있는 훌륭한 자료다.


3. 기억하고 싶은 내용

책에서 소개하는 다양한 사례를 읽으며 변화는 이미 일어나고 있다는 것을 알 수 있었다. 기억하고 싶은 여러 가지 내용이 많지만 여기서는 일부만 추렸다. 이 책의 가치를 느꼈으면 하는 마음으로 책의 내용을 조금 나눈다.

  • 구글은 5분마다 수천 개에 이르는 센서에서 데이터 센터 냉각 시스템의 스냅숏을 잡아 가능한 행동의 다양한 조합이 향후 에너지 소비에 어떤 영향을 미칠지 예측하는 데 딥러닝 신경망을 활용한다. 인공지능 시스템은 안전 제약 사항을 충족하는 동시에 에너지 소비를 최소로 줄일 행동이 무엇인지 파악한다. 이렇게 도출된 제안을 토대로 지역 제어 시스템에서 검증을 마치고 실제 구현하는 방식을 사용해왔다. 하지만 운영자들은 한 걸음 더 나아가 데이터 센서 안전을 검증하고 운영하는 작업 전체를 인공지능 시스템이 맡아주기를 원했고, 2016년부터 알파벳 소속의 딥마인드가 참여하면서 현실화하였다. 2017년 9월부터 2018년 8월까지 7천 5백만 건의 훈련용 데이터를 투입해 인공지능이 데이터 센터를 제어한 결과 여러 가지 보수적인 안전 기준을 적용했는데도 기존보다 월등히 향상된 결과를 이끌어냈다. 이렇듯 인공지능은 뒤에 숨어서 기업의 경쟁력을 차별화하는 강력한 전략 무기로 자리 잡고 있다. - 37~38쪽
  • KPCB 벤처캐피털 소속의 메리 미커가 2018년 5월 말에 발표한 '인터넷 트렌드 2018 보고서'에 데이터와 인공지능과 관련한 중요한 통찰이 나온다. 인공지능이 비즈니스에 미치는 가치를 분석하기에 앞서 먼저 데이터가 비즈니스에 미치는 영향력을 파악할 필요가 있다. - 43쪽
  • 2017년 9월 20일 초강력 허리케인 마리아가 섬나라 푸에르토리코를 강타했다. 전기와 통신 시스템이 모두 끊기고, 무너진 가옥과 뿌리째 뽑힌 나무들이 여기저기 나뒹굴었다. 생필품 공급과 전기와 통신 복구가 급선무였다. 세계 최대 통신기업 AT&T는 빠른 통신 서비스 복구에 플라잉카우Flying COW(Cell on Wings)를 활용했다. 플라잉카우는 지상에서 약 60m 위로 날아 올라 사방으로 약 64km 까지 이동 통신 서비스를 제공하는 헬리콥터 모양의 특수 드론이다. 대당 동시에 최대 8,000명에게 서비스를 제공하는 플라잉카우 덕분에 푸에르토리코 인구의 약 70%가 조기에 통신망에 접속할 수 있게 되었다. 드론이 최초로 구호에 사용된 일화다. - 170쪽

4. 아쉬웠던 점

다른 주제에 비해 <실감형 미디어: 포스트 중심기기로서 가능성>을 다룬 6장의 내용이 짧아서 아쉬웠다. 또한, 책에서 유튜브 영상을 언급하는 경우가 종종 있었는데 QR 코드를 통해 사용자가 영상을 시청할 수 있도록 안내했으면 더 좋지 않았을까 하는 아쉬움이 있다.


앞으로 IT 트렌드 도서가 매년 발간될 것으로 보이는데 전용 홈페이지를 만들어서 기록하면 많은 이들이 주목하는 온라인 공간으로 성장할 수 있지 않을까?


5. 어색한 문장 또는 오탈자

여기서는 어색하거나 오탈자에 해당하는 내용을 언급한다. 보는 사람에 따라 의견이 갈릴 수 있으므로 참고만 하기 바란다.


(236쪽 아래서 4번째 줄) "첫 번째 이유는 기존의 데이터를 KMS 형태로 재정비..." → "첫 번째 이유는 기존의 비정형 데이터(Unstructured Data)를 정형 데이터(Structured Data)로 재정비..."


(243쪽 아래서 7번째 줄) "...기술적인 한계 때문에 비판적인 목소리도..." → "기술적인 한계 때문에 비판 목소리도..."


(258쪽 1번째 줄) "대화형 플랫폼 시장에서 바이두에 주목해야 하는 이유는 기본적으로 '중국'이라는 어마어마한 시장 규모이다." → "대화형 플랫폼 시장에서 바이두에 주목해야 하는 이유는 기본적으로 '중국'이라는 어마어마한 시장 규모 때문이다."


(308쪽 1번째 줄) "블록체인을 혁신 경제 시스템(생태계) 관점에서 주요 논의는 다음과 같다."→ "혁신 경제 시스템(생태계) 관점에서 바라보는 블록체인의 주요 논의는 다음과 같다."


(324쪽 2~3번째 줄) "사용성과 범용성 극대화하면(마치 비트코인이나 이더리움처럼) 당연히 해당 토큰의 내재적 가치가 상승해 가격도 올라가고, 기존 참여자들은 더 많은 인센티브를 확보하게 된다." → "사용성과 범용성 극대화하면(마치 비트코인이나 이더리움처럼) 당연히 해당 토큰의 내재적 가치가 상승해 가격도 올라가고, 기존 참여자들은 더 많은 인센티브를 확보하게 된다."


(324쪽 세 번째 문단 2번째 줄) "...자본을 조달할 수 있고 초기 참여자들 추가 보상이 주어진다." → "...자본을 조달할 수 있고 초기 잠여자들에게 추가 보상이 주어진다."


(362쪽 두 번째 문단 4~5번째 줄) "따라서 미들웨어 사용 보편화할 경우 또 다른 '중개자'가 등장할 가능성이 있다." → "따라서 미들웨어 사용 보편화할 경우 또 다른 '중개자'가 등장할 가능성이 있다."


(365쪽 아래서 3~4번째 줄) "...여전히 블록체인에 대해 색안경을 끼고 바라보고 있는 현실이 지속하고 있는 것도 사실이다." → "...여전히 블록체인에 대해 색안경을 끼고 바라보고 있는 현실이 지속되고 있는 것도 사실이다."


6. 총평

2019년 트렌드를 살펴보면 상호간에 서로 연결되어 있음을 알 수 있다. 인공지능(Artificial Intelligence)은 드론(Drone) 혹은 자율주행차(Self-driving car)와 연결되어 있고, 이들은 또한 초고속, 저지연 네트워크인 5G와 연결되어 있다. 5G는 또한 실감형 미디어인 AR, MR, VR을 가능하게 하는 기반 기술이다.


하나만 알아서는 안 된다. 미래를 준비하는 사람이라면 특정 분야에 대한 깊이는 물론이고 전체를 관망할 수 있는 관점도 갖춰야 한다. 한빛미디어에서 출간한 <IT 트렌드 스페셜 리포트 2019>는 이러한 관점을 갖을 수 있도록 돕는 비즈니스 교양서라 할 수 있다.


이 책이 모든 것을 담고 있지는 않지만 2019년에 주목해야 할 기술에 대해 최소한의 이해를 얻기에는 충분하기에 일독을 권한다.


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