読者です 読者をやめる 読者になる 読者になる

WEB+DBに記事を書きました、と執筆環境の話

毎日のお弁当ブログをはじめ、愛妻家として巷で評判のikikkoです。こんばんは。

すでにTwitterやら会社ブログで報告していますが、今月号のWEB+DB PRESSに「Backlog/Cacoo開発ノウハウ大公開 ~世界で通用するWebサービスの育て方~」というタイトルで記事を書かせてもらいました。文句を言いながらも、執筆中の食器洗いをほとんどやってもらった妻に、この場でお礼を言います。その他、社内の人を始めレビューをしていただいた皆様、中間締切遅れて迷惑をおかけしながら編集をしていただいた技評の@さん、本当にありがとうございました。

http://image.gihyo.co.jp/assets/images/cover/2013/9784774153957.jpg

内容紹介的なものは↓の記事に任せておいて、ここでは執筆の裏側を紹介したいと思います。


以前もSoftware Designに記事を書かせていただいたのですが、今回はそのときより裏側の執筆環境をちょっとだけ整備しました。せっかくなので、簡単に紹介します。

使ったもの

執筆の流れ

https://cacoo.com/diagrams/NjQHX3qLhYipa7U3-ABB04.png

  1. ローカルPCでmarkdownファイルに文書を書いて、BacklogのGitリポジトリにpush
  2. Jenkinsがpushを検知して、リポジトリをclone
  3. コマンドを実行して、markdownファイルからいくつか成果物を生成
    • HTMLファイル:markdownファイルをHTMLに整形したファイル
    • inaoファイル:markdown2inao.plを実行して変換したファイル(このファイルをもとに、inaoさんにPDFにしてもらいます)
    • 文字数レポート:markdownファイルの文字数をグラフ化したレポート
  4. HTMLとinaoファイルをBacklogの共有ファイル上に転送(Jenkinsは外から見えないところにあったので、編集者など関連する人が見ることができるBacklogに移動)

文字数レポートは、こんな感じです。ビルド時にwcした結果を、JenkinsのPlot Pluginを使ってグラフ化しています。

https://cacoo.com/diagrams/NjQHX3qLhYipa7U3-8ED8A.png

感想

半分自己満足が強くて、正直なくてもまあ回っただろうなという感じw

HTMLファイルについては、自分が確認するときはEmacsmarkdown modeを使ってHTML化していたし、他の人にレビューしてもらうときはinaoさんにPDFに整形したものベースでやってたし。

inaoファイルも、常に最新のinaoファイルができているというのはありなのですが、執筆途中でも常にPDFを作るというわけではなく、結局締切後などの一段落したタイミングでしか使ってなかったので。

文字数レポートは、もうちょっとうまくできたかなーという感じ。あまり考えずに、pushと連動してレポートを作っていたのですが、push駆動ではなく定期的に1日1回などで生成した方がよりよかったかなと思いました。それでも、自分が書いていった量に応じてグラフが伸びていくのが見えるというのは、いいモチベーションになったことは確かですが。


Jenkins勉強会のレポートなどはちょくちょく書かせてもらっていたのですが、今回のような30ページ特集レベルの紙面の記事は2回目。今回は以前より締切がタイトだったので、各方面にちょいちょいご迷惑をおかけしました><

でも、すごく勉強になりました。自社のやり方を自分の中で整理できたこともそうですし、それをちゃんとした文書に起ここす作業をやり切ったのもそう。

また機会があったら、やってみたいですね。ただ、Jenkins User Conferenceと今回の記事執筆でアウトプット的なところはがっつり出したので、しばらくは次なるアウトプットに備えてインプットを蓄える時期かな。