技術書典5向け新刊「エンジニアアンチパターン 〜失敗に学ぶエンジニアリング〜」のご紹介と制作秘話

私が運営している個人サークル「このすみ堂」で、技術書典5向けの新刊「エンジニアアンチパターン 〜失敗に学ぶエンジニアリング〜」という本を出します。

techbookfest.org

本記事は制作状況によって随時更新し、本書のご紹介や、制作秘話などを共有する内容となっております。

最初から宣伝するのもあれですが、今回は「被チェック数」という仕組みで本の印刷部数を決めようと思っていますので、ぜひとも技術書典のサイトで「サークルをチェックリストに追加する」をお願いします。

目次

本書のご紹介

本書のコンセプト

本書は、筆者の経験してきた失敗をアンチパターンと捉え、そこから学びを得るための本です。

失敗の本質-日本軍の組織論的研究

皆さんは「失敗の本質-日本軍の組織論的研究(中公文庫)」という本をご存知でしょうか?この本は「都庁は敗戦するわけにいきません」という、小池百合子東京都知事の発言でも、大きく話題になりました。

「失敗の本質」は、太平洋戦争における日本軍の敗戦理由を分析する事によって、同じ過ちを繰り返さないようにするための、後世に活かす本です。

日本軍の失敗とは?

戦争には、必ず勝敗を左右するポイントがあります。勝つべくして勝ち、負けるべくして負けるのです。事実、日本軍には、数多くの失敗がありました。

  • 撃沈された日本の艦船から、暗号解読の文書がアメリカ軍の手に渡り、暗号電文が筒抜けになってしまった
  • 日本軍は、直近の作戦しか考えておらず、戦争が長期化した場合の戦略を深く考えていなかった
  • 各地の戦場での敗北を、将兵の弱気な精神力のせいにし、細かな分析を怠った
  • ...etc

失敗には、失敗たりえる理由が存在するのです。

失敗から学びを得よう!

本書には、私がエンジニア人生の中で経験した失敗を、数多く収録しています。さらに、失敗を自ら分析し、考察やベストプラクティスを書き加えました。

私の失敗の歴史から、何かを学び取っていただけましたら幸いです。

本書のターゲット

私の経験上、WEBシステムの開発が中心となるため、WEBエンジニアをメインターゲットとしています。しかしながら、読み物としてもお楽しみいただける内容になっておりますため、全てのエンジニアの方にお楽しみいただける内容です。

本書の章構成

本書の章構成は、9/14時点では以下のようになっています。但し、今後変更する可能性があるためご注意ください。

  1. プログラミング: パフォーマンスが悪いプログラム
    • メモリオーバー、メモリリーク、データフォーマット・・・
  2. データベース: レプリケーションが遅延するSQL
    • 大量のSQL、RDBのパンク、検索ボットのアクセス・・・
  3. サーバー: たった 1 文字のタイプミスで消えた設定ファイル
    • 手順書、ヒューマンエラー、バックアップ・・・
  4. リファクタリング: リリース後にテストまでしたのに、数時間後にエラーになるプログラム
    • 肥大化クラス、失敗して始末書、ソースコードキャッシュ、デグレ・・・
  5. 技術選定: DB の相性問題が発覚する、詰めが甘い技術選定
    • WAF、技術の相性問題、OSSサポートとコミュニティ、技術選定の審美眼・・・
  6. プロジェクト管理: 過小見積もりで炎上するプロジェクト
    • 技術力の不足、見切り発車、バッファ、金の弾丸・・・
  7. スキルアップ: 生存戦略に振り回された学習
    • きっと何者にもなれないお前たちに告げる、勉強のための勉強、インプット過多からの脱出・・・

尚、もし執筆が間に合うのであれば、UX関連の話(デザイン)の章を追加する予定です。

制作秘話

表紙と裏表紙のイラストができるまで

「エンジニアアンチパターン 〜失敗に学ぶエンジニアリング〜」の表紙と裏表紙のイラストは、4コママンガ作家のぞえさんが書いてます。

twitter.com

8/16に依頼をしてから、以下のような過程を経て最終的に9/8に完成しました。

  1. お見積り
  2. 4コマのネタ検討
  3. ラフ画作成・確認
  4. 清書
  5. 完成したイラストの確認
  6. 納品

ぞえさんは4コママンガが得意なので、4コマのネタ出しも含めて依頼しました。最終的には、私の失敗だらけの人生を4コマにまとめた内容になり、上手く悲壮感が表現できている失敗4コマに仕上がりました。

ラフ画

製作途中の本書をお渡しして、4コママンガのネタを検討して出来上がったラフ画がこちらです。なお、最終的に採用されたのは左側のイラストです。

f:id:konosumi:20180914015015p:plain

実は、左側のイラストは来ている服がTシャツで、若手のWEBエンジニアをモチーフにしています。理由は、本書に収録している主な失敗談に、若手の頃の失敗談も多数含まれているからです。

ロゴのフォントへのこだわり

イラスト的に言うとロゴという扱いになるのですが、実はフォントにはいくつかのパターン案がありました。なお、最終的に採用されたのは一番左のフォントです。

f:id:konosumi:20180914015546p:plain

普通のフォントもあれば、変わり種のフォントもあったりと、色々とバリエーションがあります。最終的には、少しだけ角ばった丸文字のフォントを採用してみました。

ラフ画が清書されて完成する

清書の段階まで来ると、後は完成を待つだけです。完成版は、ラフ画と違って豪華なイラストになりました。

f:id:konosumi:20180914015846p:plain

自らの黒歴史と向き合う作業

自分で言うのもなんですが、本書に失敗している失敗談は、なかなかに酷い失敗談です。

  • リファクタリングに失敗して始末書を書く。
  • 工数の見積もりが過小だった結果、年末年始を会社で過ごすことになる。
  • たった一文字のタイプミスで、バックアップも取っていないサーバーの設定ファイルを消してしまった。
  • ...etc

黒歴史のような過去を掘り出していく作業ばっかりだったので、本書を書いている間は、よく分からないテンションに陥りました(苦笑)。それに、これだけ失敗ばかりだと、エンジニアを辞めたいと思ったことは数え切れないくらいあります。

失敗には価値があるのではないだろうか?

「なぜ、失敗談を書こうと思ったのか?」の理由は単純です。私は「失敗の本質-日本軍の組織論的研究(中公文庫)」を読んだ時に、失敗談には価値があることに気づきました。それに、失敗談を失敗のままで終わらせてしまうのはもったいないです。

そこで、自分自身の失敗談を基にして、頭の中で章立てを組み立ててみました。そうしたらなんと、失敗談だけで一冊の同人誌になるくらいたくさん思いつくではありませんか!

逆に言えば「そんなに酷い失敗をたくさんしているのか!」と、憂鬱な気分にもなりましたが(汗)。

さいごに

ぜひぜひ、当日は「このすみ堂」までお越しください。しがない個人サークルですが、皆様をお待ち申し上げております。そして、印刷部数を決めかねているので、ぜひとも技術書典のサイトで「サークルをチェックリストに追加する」も宜しくおねがいします。

techbookfest.org

告知:PHP中級者を目指す 〜言語を使いこなすための本〜」という新刊も頒布します!

www.konosumi.net