매주 자동으로 주간 일정 리마인드하는 메일 보내기 with Apps Script
구글시트에 캘린더, 그리고 자스까지 섞은 1시간짜리 스몰 프로젝트
놀랍게도) 이번 글은 구글 앱스 스크립트 완벽 가이드
라는 책의 리뷰입니다.
한빛미디어
의 나는 리뷰어다
활동을 위해 책을 제공받아 작성된 서평입니다.
개요
Google Apps Script
, 혹은 앱스 스크립트 (이하 GAS)
에 대해서 들어본 적 있는 사람은 많지 않을 것이라고 생각합니다. 저도 직장 동료가 사용하는 것만 (손에 꼽을 정도의 회수로) 봤거든요.
자세한 내용은 모르지만 구글 시트로 들어오는 데이터를 일부 전처리 하는 용도로 사용했다는 정도로만 기억하고 있습니다.
제가 GAS
에 관심을 갖지 않았던 이유는 크게 3가지가 있습니다.
R
에 구글시트를 불러와 작업을 할 수 있음 (googlesheets4
)Javascript
를 할 줄은 알지만 그렇다고R
만큼 잘하는 건 아니었음- GAS 와 관련된 자료는 상당히 적음
그러나 이번에 도서 리뷰로 (정말 운 좋게) 앱스 스크립트 완벽 가이드를 읽게 되었는데 꽤 꽤 만족스럽다는 이야기로 리뷰를 시작합니다.
앱스 스크립트 완벽 가이드
저자의 말을 일부 인용하여 GAS를 짧게 설명하면
구글 시트, 지메일, 드라이브, 구글 닥스, 캘린더 등의 구글 프로덕트를 무료로 자동화, 연동 할 수 있는 프로그래밍 언어
라고 생각하면 좋습니다.
이 책의 내용은 (다른 기술 서적들 같이) 처음에 제가 책을 읽기 전에 생각했던 GAS 사용 방법이나 자주 쓰이는 예시 뿐만 아니라 자바스크립트에 대한 (프로그래밍) 경험이 없는 사람들을 위한 GAS를 위한 자바스크립트 가이드 까지 포함 되어 있어서 완벽 가이드 라고 이름을 붙일 충분한 이유가 있었다고 생각합니다.
그렇지만 역으로, 자바스크립트에 조금이라도 경험이 있다면 이 책에 있는 내용 중의 1/3 정도는 읽지 않아도 충분히 GAS를 사용할 수 있습니다.
따라하기에 좋은 책
위 이미지는 이 책과 원서의 사진인데 절대 스스로는 읽지 않았을 원서를 읽고 실제로 별 무리 없이 활용하기까지 번역해주신 역자와 출판사의 큰 수고가 있었을 것이라 생각합니다.
가령 아래 이미지 처럼 이러한 튜토리얼 / 따라하기에서 자주 겪는 문제인 어디 부분을 봐야하는 지, 어디가 바뀌는지 를 강조 해 준 것과 수많은 메소드들 중에 어떤 것들을 주로 사용하는지 정리해 준 부분도 굉장히 좋은 부분이라고 생각합니다.
누가 읽어야 좋을까
이 책은 GAS에 대해서 다루는 정말 좋은 책이지만, 모두가 이 책을 잘 활용 할 수 있을 것이라고는 생각하지 않습니다. 개인적으로 생각했던 이 책이 필요한 사람의 조건을 쓰자면 이러합니다.
1. 구글 앱스를 사용하는 사람 (구글 워크스페이스)
2. 동일하게 반복하는, 자동화로 풀어야 하는 문제가 있는 사람
3. 구글 검색을 할 수 있으면 더 좋음
아마 1과 2는 공감하실 것 같아 3번에 대해서만 설명하겠습니다. 이 책은 아무것도 모르던 사람도 GAS를 활용할 수 있을 정도로 작성된 좋은 가이드입니다.
그러나 이론과 기술(약간의 사례)은 담고 있지만 사람마다의 모든 케이스에 필요한 내용을 담고 있지는 않습니다. (그랬다면 이 책은 700페이지로는 모자라지 않을까…)
아래는 제가 실제로 이 책을 읽고 나서 제 문제를 풀려고 만들었던 앱스스크립트와 결과 인데요.
- 저는 써야하는 글의 마감날짜를 캘린더에 저장해두는데
- 매일 확인하는 것이 번거로워
- 일요일마다 이번주에 써야하는 글들을 메일로 리마인드 받는 것
을 GAS를 통해 풀고자 하는 목표였습니다.
책을 참조하면서 GAS를 설정하고, 캘린더를 연동하고 메일을 보내는 것은 어려움이 없었지만 테스트 이벤트 1, 2022/07/18:0900–1000
을 월요일: 테스트 1
의 형태로 바꾸는 것처럼 해 커스텀이 필요한 부분들은 구글과 스택오버플로, 블로그 선생님들의 도움을 받아야 했습니다. (책에 아래처럼 요일 관련한 내용도 있었지만, 제가 풀고자 하는 문제와 완벽하게 매치 되진 않았습니다.)
물론 이렇게 검색하면서 GAS 작업을 할 만한 가치가 있었고 (!), 여러분들도 위의 조건을 만족하는 사람이라면 이 책을 읽고, 레퍼런스로 참조하며 시간을 들여 GAS를 활용했을때 충분히 만족할 것이라고 생각합니다.
리뷰를 마치며
제가 받아들인 대로 소개하면 이 책은 크게 4 부분으로 구성됩니다.
심화 부분은 Base
, UI
, File
, Utilities
, Properties
, Trigger
, 외부 서비스
, 라이브러리
라는 주제를 다루고 있는데 Trigger
를 제외한 다른 부분은 몰라도 GAS를 사용하는데 전혀 지장 없습니다 (Trigger
는 반드시 알아야함 !!)
TMI)
GAS
를 다루고 있는 한글 자료(도서 / 강의 포함)는 적은데 (있어도 시트나 메일 한두개 정도)자동화
라는 관점에서 수요가 꽤 있을 것 같아서… 이 책을 작정하고 공부하면, 강의도 만들 수 있지 않을까 싶은 꽤 괜찮은 책R
로도 할 수 있는데 GAS 쓰면 어떤게 좋은지R
특유의 진짜 거슬리는 구글 계정 연동이 사라진다. 특히 자체 서버가 아닌github action
등으로 자동화를 굴리면 토큰 작업이나yaml
작업도 귀찮은데GAS
로 돌리면 이 부분이 많이 해결됨.- 최근 기술 서적에 대한 관심이 많이 줄었는데 (다큐 문서는 인터넷으로 보면 된다 라는 생각이 조금 생겨버림) 이 책은
애옹킴 선정 2022 올해의 기술 도서
가 될 가능성이 매우 높다.