이 책의 번역을 처음 제안 받았을 때는 파이썬 관련 기술 서적으로만 생각을 했다. 하지만 막상 뚜껑을 열어보니 파이썬에 국한된 내용이 아니라 서버리스 애플리케이션에 대한 내용을 얕고 넓게 다룬 입문서의 성격이 짙었다. AWS의 서버리스 애플리케이션 함수인 Lambda의 트리거를 중심으로 EC2, S3, CloudWatch 등을 다루며, 마지막에는 Microsoft Azure 함수까지 짧게나마 다룬다. 현재 서버리스 컴퓨팅의 한계와 앞으로의 발전 방향까지 언급하고 있어 향후 클라우드 기반 서버리스 플랫폼을 공부하려는 이들에게 방향성을 제시한다.
한 권의 책에 여러 가지 내용을 폭넓게 다루려다 보니 설명이나 예제가 아주 친절하지 않은 것은 사실이다. 하지만 예제를 하나씩 직접 따라해 보면 Lambda, CloudWatch, S3, EC2 등의 AWS 주요 서비스와 앤서블(Ansible) 같은 서드파티 도구 사용까지 다양하게 다뤄볼 수 있을 것이다.
처음 JavaScript라는 언어를 접한 건 1997년이었다. 당시 JavaScript는 오늘날처럼 class라는 개념도 없었고 단순히 웹 클라이언트 레벨에서 로직을 처리하는 언어로 사용됐다. 하지만 빠른 개발 속도 때문에 어떤 벽을 하나만 넘으면 상당히 널리 쓰일 것만 같았다.
저자가 서문에서 밝혔듯이 2009년은 JavaScript에 혁신적인 한 해였다. 웹 브라우저에서만 구동되는 것으로 인식됐던 JavaScript가 드디어 브라우저가 아닌 일반 인터프리터 언어처럼 사용할 수 있게 됐기 때문이다. 내가 생각했던 벽이 이때 없어지면서 JavaScript는 비약적인 발전을 했고, 이를 토대로 Vue.js, React.js 등 어마어마한 프레임워크도 만들어졌다. 이 변혁으로 얻은 큰 장점은 프론트엔드와 서버사이드의 언어를 일치시킬 수 있다는 것이다.
이 책은 Node.js의 기초와 Express.js 패키지 사용법을 프로젝트를 통해 설명하고 있다. 이 책으로 어느 정도 Node.js의 인식을 다졌다면 Vue.js나 React.js를 통해 프론트엔드로 진로를 설정할 수도 있고 Express.js를 좀 더 활용해 백엔드로 가져갈 수도 있다. 결국 이 책은 백엔드와 프론트엔드 모두 기초가 되는 책이라는 점에는 틀림이 없다. 이 책으로 Node.js를 시작하는 모든 이에게 건투를 빈다.
대부분 REST API를 만드는 목적은 CRUD(생성, 읽기, 수정, 삭제)가 대부분이다. 하지만 ALPS (Application-Level Profile Semantics)의 창시자인 저자는 전 세계적으로 영향력을 넓혀, 한 번도 만난 적이 없는 사람들을 위해 생각지도 못한 문제를 해결해야 한다는 RESTful Web API의 원칙을 통해 CRUD만이 아닌 쿼리, 페이징, 워크플로 등 다양한 문제의 해결 패턴을 제시하고 있다.
이 책을 통해 머신과 머신, 또는 사람과 머신 사이에서 API 통신을 할 때의 고민을 알게 될 것이다. 더불어 수십 가지의 패턴을 통한 커뮤니케이션 방법과 더불어 향후에 어떤 방향으로 API 통신이 계속 발전할지에 대해서도 감을 잡을 수 있을 것이다.