kavo’s diary

備忘録

技術書典9で技術同人誌を出した記録(時間推移、やったこと、ツール選定等)

2020/09/12-22に開催された技術書典9で、チームFrattyとしてWebサービスチューニングコンテスト ISUCONのススメ:Frattyという本を出した。 そのときの時間推移とやったこと、使ったツールや選定理由の記録。

大体3人で1ヵ月で79ページの本を作成・出版した。

技術書典終了後に記念に作った物理本:

タイムライン

  • 6/27 チームのLINEグループで技術書典でISUCONの本出してみない?と言ってみる
  • 7/3 打ち合わせ1 本のネタ出し
  • 7/10 技術書典9の日程(9/12-22)発表、改めてチーム3人で本を出そうと決める
  • 7/18 打ち合わせ2 本のネタ出し
  • 7/25 リポジトリ作成
  • 8/1 技術書典9参加フォーム公開
  • 8/2 打ち合わせ3 チーム名検討、アイコン検討、参加申し込み
  • 8/8 打ち合わせ4 ゆるい目次書き出し
  • 8/10 18:20 技術書典9参加申込審査結果[参加]メール通知
  • 8/11執筆本格開始~
  • 8/21 チームアイコン決定
  • 8/22 打ち合わせ5 目次リファクタ
  • 8/30 打ち合わせ6 タイトル決定
  • 9/4-11 追い込みレビュー
  • 9/8 夜 暫定版入稿
  • 9/9 23:36 暫定版 販売審査[承認]メール通知
  • 9/11 夜 完成版入稿
  • 9/12 0:18 完成版 販売審査[承認]メール通知
  • 9/12 10:00 技術書典9販売開始
  • 9/22 技術書典9終了

データ

  • 執筆期間:8/11~9/11の約1ヵ月
    • A5 表紙込79ページ
    • PDF
    • 電子版のみ
    • 表紙は表表紙のみ(電子版なので)
  • Gitリポジトリ
    • 消化issue:116
    • コミット数: 257
    • ビルド数: 270
    • PR数: 40

コミットグラフ:

f:id:kavohtn:20201011194516p:plain

進め方

f:id:kavohtn:20201011195613p:plain

  • discord打ち合わせでissueを棚卸しする
  • 執筆はPRであげてレビューしてもらう(ただ、実際にはPR上でレビューするというより、先にマージしてから読むことが多かった)

苦労した点

  • 正解がないもの
    • 本タイトル、チーム名、アイコン、表紙デザインなど、なかなか決まらなかった
  • 権利関係
    • 重要だが調べるのが大変
  • 環境整備・インストール
    • ビルド環境、校正ツールあたりでかなりエラー対処に時間食ったが、あまり頑張らず素直に動いてくれるものだけで良かった気がする
  • ハマったこと
    • .gitignoreのpdf除外設定の無効化をミスっていてpdfがpushできていなかった
    • VSCode上でID: constimage1 にマッチする画像が見つかりませんでした。とかエラーメッセージが出てるけどビルドしたら表示されてた

使ったツール・サービス、選択理由など

全体

技術検証

  • Google Cloud Platform
    • バウチャーがあったのと、使い慣れていたので。

文章執筆

  • Re:VIEW Template TechBooster
    • Re:VIEW Starterというテンプレートもあったが、併用はできないことが分かり、どちらを使うか迷った。Re:VIEW Starterは綺麗な装飾が魅力だったが、結局ベースバージョンが新しいRe:VIEW Templateを選んだ。
  • VSCode
    • .reのリアルタイムプレビューができる
    • prhでlintしてくれる
  • GitHub プライベートリポジトリ
    • 今は複数人で使ってもタダ。太っ腹。
  • GitHub Actions
    • 最初はRe:VIEWのビルド環境をWindowsに作ろうとしたがまずdokcerが動かずダメだった。結局はActionsでなんとかなった。pushするたびにビルドしてくれ、2分くらい経つとダウンロードできるようになる。脱稿まで270回(x2分)ビルドしたが無料枠(2000分/月)で収まった。
  • Google docs音声入力
    • 最初のドラフトとか、とりあえず喋って原文を作るのに良かった。口に出すことで整理される効用もある。

校正

prh、redpen、JustRightProなどlintツールを色々試したが、インストールの苦労のわりにそこまで効果があった感じはなかった。後半の方になるとそんな些末なことより・・・という感じになっていく。とりあえずVSCodeにprh extention for VSCodeはさっと入るのでそれくらい入れておけばいい気がする。

表紙作成

Google spreadsheetはフォント追加ができないので、Powerpointで全部やった。PDF出力も可能。画像がはみ出てても削ってくれる。

図作成

ベクタ画像が欲しくて結構苦労した。 最終的なやり方としては、作成途中では仮のpngをおいてしまい、最終工程で一気にepsを作る。画像編集の段階では編集/共有のしやすさからgoogle slideで作り、pptxでエクスポート後、パワポで該当の図形だけを選択→図として保存(png/emf)→Metafile to EPS Converterでeps作成。

今回は使わなかったがvscode拡張で編集できるdraw.io統合もある。

内容議論

広報

  • Twitter
    • チーム用アカウントを作って本の宣伝をした

アンケートフォーム

アイコン

  • hatchful

感想

  • 技術書典運営様のサポートが凄い。新規サークル向けにYouTubeで解説動画を連載したり、チャットサポートがあったり。チャットサポートレスが爆速かつ親身。ありがとうございます。
  • ISUCON運営様が快く許諾を下さったので本が出せました。ありがとうございます。