「詳解!GoogleAppsScript完全入門[第2版]」の改訂作業にかかった時間と苦労


tasks

photo credit: Raul P Scheduling daily tasks via photopin (license)

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

11/30に「詳解!Google Apps Script完全入門[第2版]」が発売されます。

いつも書籍の制作はたいへんな労働でございます。

前回、GAS本の第1版の出版時、以下のようなレポートを書いておりました。

GAS本を書き上げるのに、どれだけの文字数書いて何時間かけたのか
「詳解!GoogleAppsScript完全入門」が発売されることになりました。この記事では本書を書き上げるのに、どれだけの文字数書いたのか、またどれだけの時間をかけたのか、ババンと晒したいと思います。

第2版は改訂作業ということもありましたが、どうだったのでしょうか?

ということで、今回は「詳解!GoogleAppsScript完全入門[第2版]」の改訂作業にかかった時間と苦労を晒します。

では、行ってみましょう!

スポンサーリンク

改版作業スケジュール

では、GAS本第2版の改訂作業のスケジュールとかかった時間、文字数について以下まとめましたのでご覧ください。

時間 文字数 主な内容
3月 10:30 0 企画・クラファン
4月 3:30 0 クラファン
5月 3:00 0 クラファン
6月 30:15 32741 3~5章
7月 53:00 93914 6~11章
8月 69:00 78755 12~19章
9月 34:00 32841 20~23章, 1~2章
10月 51:15 0 初校・索引
11月 31:30 0 再校・念校
合計 292:30 238251

3~5月は別の書籍執筆が入っていましたので、その合間をぬって、企画と本書に関するクラファンについてを進めていました。

最新の『Google Apps Script完全入門』をいち早く世に届けたい!
スプレッドシートやGmailなどを操作することができるプログラミング言語Google Apps Scriptは去る2月に大幅なアップデートがありました。それに伴い、唯一のバイブルともいえる「詳解!Google Apps Script完全入門...

無事にプロジェクトを達成を受けて、6月から本格的に着手をしたので、賞味5ヶ月で出版までこぎつけたということになります。

クラウドファンディングのおかげで、なかなかのスピードで第2版を世に出せたのではないかと思います。

かかった時間について

かかった時間は合計292時間でした。

改訂作業なので、第1版に存在している内容であれば、そこに校正のように修正指示をかけていくかたちになります。

その点は、ベースがありますので、悩む時間は少なめで済みます。

一方で、今回書き下ろしの章や節は、当然ながらそれなりに時間はかかります。

あと、今回わかったのは、校正・索引については、改訂版だろうが同じだけ時間がかかるということですね…よく考えれば当たり前ですが…結果的に、この部分が80時間くらいかかってました。

書いた文字数について

今回、書いた文字数は23万文字でした。

てか、前回第1版は全部合わせても18.5万文字だったので、ちょっとおかしい気もしますが…

新たに追加された章や節に加えて、ソースコードはすべて書き直しでしたし、表もほぼすべて文字数に含まれているので、まあそうなるのかも知れない。

ちょっとカウント方法が不安になってきましたが。

苦労した&悩んだポイント

スケジュールや作業時間については、前述の通りだったのですが、今回は今回でなかなかの苦労がありました…その主なものについてお伝えします。

新IDEのの導入発表

この3年の間に、Apps Scriptダッシューボードが追加されたので、第2版では、それを3章として追加する予定だったのですが、改訂作業の最中にGASの新IDEの発表がありました。

Google Apps Scriptのエディタが刷新…新IDEが登場します!
Google Cloudのデジタルイベント「Google Cloud Next ’20: OnAir」のレポートをシリーズでお伝えしています。今回はGASの新しいIDEの発表とデモのようすについてレポートをお送りします!

新IDEの導入が執筆に含められればよいのですが、それは難しそうだったので、もしあったらということで第3版で吸収するという方針に。

結果的に、章番号をもとに戻すという地味にめんどうな作業となりました。

ドライブのポリシー変更

これはもともとから発表があったのですが、ドライブ上のファイルは複数のフォルダに配置できなくなるというポリシーの変更

これに伴って、第1版で紹介していたaddFileメソッド、removeFileメソッドなどが非推奨となり、代わりにショートカットを作るcreateShourcutメソッドの紹介にスイッチしました。

Livedoor天気APIの終了

第1版でAPIへのリクエストの対象サービスとして、Livedoor天気APIを使用していたのですが、なんと7/31に終了…。

ちょうど、ノンプロ研講座で当時使用する範囲だったので、すごく焦ってスライドを作り直した記憶があります。

代わりに、APIでリクエストを練習するための対象サービスを郵便番号APIに変更しました。

郵便番号検索API - zipcloud
日本郵便が公開している郵便番号データを検索する機能をRESTで提供しています。

ただ、どのサービスもずっと続くとは限らないので、注意が必要ですね…。

Moment.jsの開発停止

第1版のライブラリの章で紹介していた、日時計算用ライブラリ「Moment for Apps Script」ですが、その元になっている「Moment.js」の新機能や大きな開発はしないことが発表されました。

Moment.js | Docs

すぐに使えなくなるとかそういう話ではないのですが、積極的にガンガン使おうぜ!というモードでもないということで、泣く泣く削除。

第2版では、独自のライブラリにて、ライブラリ導入の方法は解説をしております。

Google Workspaceへのリブランド

そして極めつけが、G SuiteからGoogle Workspaceへのリブランドです。

これ、執筆完了して校正をしている段階の10月だったもんで、正直アタマ抱えました。

サービス名は置換すればよいのですが、プランの紹介やサービスアイコン画像は差し替える必要がありました。

さらに、新プランによるGASの割り当て(実行時間とか、メール可能な送信数などいろいろな制限がプランごとに定められてます)がどうなるかが、公式ドキュメントでも確認できず、GoogleのUSサポートとも慣れない英語で何度もやり取りをしましたが、明らかにならず…

無念のタイムアップということで、G Suiteのものを参考として掲載しております。

以下、公式ドキュメントのページを逐一チェックをしていただければ幸いです。

Quotas for Google Services  |  Apps Script  |  Google for Developers

まとめ

以上、「詳解!GoogleAppsScript完全入門[第2版]」の改訂作業にかかった時間と苦労についてお伝えしました。

GASは、公式ドキュメントでも以下のように書いてありましたように「生き物」です。

A living, breathing platform

なので、完全に最新な書籍というのは無理な話なわけですが、できる限り新しく、かつ有用な情報をお届けできるよう、今後も励んでまいります。

なお、今回の内容はコミュニティ「ノンプログラマーのためのスキルアップ研究会」の定例会でもお話しました。

以下、ツイートまとめとなりますので、合わせてご覧いただければ幸いです。

ノンプロ研定例会Vol.37「詳解!GoogleAppsScript完全入門第2版が出版されます」
「詳解!GoogleAppsScript完全入門」の第2版が2020年12月1日に発売される運びとなりました!今回はその出版記念イベントです。第1版と何がどう変わったのか…?また、その制作の裏側な..

書籍「詳解!Google Apps Script完全入門[第2版]」関連記事

書籍「詳解!Google Apps Script完全入門[第2版]」に関連して、本書自体や、執筆に関する裏話や出来事、ノウハウ、イベントレポートなどを連載していきます。
  1. 書籍「詳解!Google Apps Script完全入門 [第2版] 」発売についてのお知らせ
  2. 【4/14開始】「GoogleAppsScript完全入門」に関するクラウドファウンディング企画のお知らせ #GAS本
  3. 11/30発売「詳解!Google Apps Script完全入門[第2版]」のまえがきを全文無料公開
  4. 「詳解! Google Apps Script完全入門」の第2版、何が変わったのか?
  5. 「詳解!GoogleAppsScript完全入門[第2版]」の改訂作業にかかった時間と苦労
  6. 本日発売「詳解!GoogleAppsScript完全入門[第2版]」のあとがきを全文無料公開
  7. 「詳解!Google Apps Script完全入門[第2版]」発売記念!都内の大型書店行脚レポート

タイトルとURLをコピーしました