技術書典5向け新刊「PHP中級者を目指す 〜言語を使いこなすための本〜」のご紹介と制作秘話

私が運営している個人サークル「このすみ堂」で、技術書典5向けの新刊「PHP中級者を目指す 〜言語を使いこなすための本〜」という本を出します。

techbookfest.org

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

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

(9/17: 本書の章構成を更新しました)

目次

本書のご紹介

本書のコンセプト

PHPは初心者向けの本が多く、中級者になりたい人をカバーする本が少ない。本書は、そのような動機から書き始めました。

  • Effective Perl
  • Rubyベストプラクティス
  • Effective Python

Perl、Ruby、Pythonをはじめとした、他の軽量プログラミング言語(Lightweight Languages)には、中級者を目指す橋渡しの本があります。

本書のコンセプトは、PHPの入門書にはあまり載っていない事柄を中心に掲載することです。私の執筆時間が許す限りのネタを詰め込んでいく予定です。

筆者は普段、自作のフレームワークで開発しているため、特定のフレームワークに依存するような内容ではありません。どのPHPフレームワークをお使いの方でも、お楽しみいただける内容になっています。

本書のターゲット

本書は、主に以下に該当する方に向けて執筆しています。

  • PHPの入門書を読み終え、次のステップを目指している方
  • PHPの中級者レベルの知識が欲しいと思っている方
  • 昔のPHPは使っていたが、最近のPHPはあまり分からない方

本書には、PHPの基本構文の解説はありません。入門書を読み終えたPHPエンジニアが、もっと深くPHPを知りたいと思う需要に応えるための本になっています。

本書の章構成

本書の章構成は、9/17時点では以下のようになっています。但し、今後変更となる可能性はありますので予めご了承願います。

  1. (PHP5.4) ビルトインウェブサーバー
  2. (PHP7.0) 型宣言
  3. スコープを意識したアプリケーション開発
  4. PHP7 の演算子や新機能への招待
  5. (PHP5.3) 名前空間
  6. (PHP5.3) オートロード
  7. 外部ライブラリの活用
  8. アーキテクチャ
  9. PSR コーディングガイドライン
  10. 正規表現
  11. 配列
  12. PHP の判定と比較
  13. エラーと例外
  14. PHP エンジニアが知っておきたい WEB サーバー
  15. 静的コード解析
  16. テンプレートエンジン
  17. 良質なPHP情報を得るには?

f:id:konosumi:20180917030557p:plain

f:id:konosumi:20180917030604p:plain

f:id:konosumi:20180917030614p:plain

制作秘話

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

「PHP中級者を目指す 〜言語を使いこなすための本〜」の表紙と裏表紙のイラストは、イラストレーターの「藤依ひな」さんが描いています。

twitter.com

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

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

9/10の技術書典5の、WEBサイト一般公開に間に合わせたいという要望を聞いて頂けたどころか、数日の余裕を持って納品をして頂けましたので、とても助かりました。

まずは表紙のコンセプトを決めていく

前回の技術書典4における、各サークルの表紙などを参考にしつつ、まずは表紙の構成を考えました。検討した結果、2枚のラフ画が誕生しました。

  1. これから知っていくものへの興味・期待に満ちた雰囲気をイメージして描いたイラスト
  2. 技術書の持つ大人っぽや、勉強をイメージした少し大人しめのイラスト

両方ともコンセプトとしては捨てがたかったので、最終的には表紙と裏表紙にそれぞれ採用することにしました。

f:id:konosumi:20180912003618p:plain

表紙と裏表紙に向けてラフ画のブラッシュアップを行なう

表紙と裏表紙が決定したので、それぞれに最適化するためにラフ画をブラッシュアップします。表紙はタイトルが脚色され、裏表紙には本書のコンセプトを掲載することにしました。

また、技術書典は本のイベントなので、本をコンセプトにして表紙の背景デザインも変更しています。

f:id:konosumi:20180912004447p:plain

タイトルで隠れる部分も妥協しない

表紙の女の子は、胸の辺りを中心に文字で隠れてしまうのですが、タイトルなしで見た時に違和感があるという藤依さんの提案の元、本を抱く構成に変更しました。

ただ本を抱くのみならず、本の背表紙に「技術書典5」と書いてあったり、細かな気配りがさすがデザイナーです。

エンジニアの自分だったら、タイトルで隠れそうな部分だからと言って妥協してしまうかもしれません。

f:id:konosumi:20180912005024p:plain

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

数回のラフ画の修正を経て、清書の工程に入ります。清書の段階まで来ると、後は完成を待つだけです。

完成版は、ラフ画と違って色鮮やかなイラストになりました。

f:id:konosumi:20180912005923p:plain

本の表紙は重要である

私は、ひたすらブログを書いたり前回の技術書典4でも本を書いていたりと、本文を書く力はあります。しかし、やはり表紙となるとデザインが重要になってきます。

今回は、前回よりも多くの人に手にとって欲しいと思っていたので、思い切ってイラストレーターに発注することにしました。結果的には、デザインの見地から主導して頂いて、愛着の湧く表紙を作り上げることができました。

あと、これはモチベーションの話ですが、表紙を妥協しないで作り込むと、本文を書くやる気も上がります。「表紙に見合うくらいの本文を書き上げることが出来れば、一生モノの同人誌が出来上がるぞ!」という気分です。

同人誌はあくまで自費出版の世界ですので、気ままにやれば良いじゃないかと言えなくもありません。ただ、趣味とは言え今回は本気で書きたかったので、表紙も頑張ろうと思って今回はあえて発注してみることにしました。

結果的に、それに向き合って応えていただいた藤依さんにはとても感謝しています。

何の本を書くべきなのか?

実は、当初の予定では「アンチパターン本」と「ReactNative本」の2冊を書くつもりでした。ただ、途中で路線を変更して「アンチパターン本」と「PHP本」の構成に変更しています。

第一の理由は、今回はReactNative系のサークルが増えていて、私のReactNative力では埋もれてしまいそうな気がしたからです。仕事で ReactNativeのアプリは開発したものの、歴で言うと長いわけではないので、深い知識を書くのが難しいかもしれないと判断しました。

第二の理由は、技術書典4では隣り合わせになったサークルの@m2wasabiさんがLaravel本を出していたのですが、技術書典はPHP系のサークルが少ないと言っていたのを思い出したからです。何故か、入浴中にそれを突然思い出し「じゃあ書いてみよう!」と思い立ちました。

booth.pm

本書のコンセプトの手応えをYYPHPで確認する

PHPに関しては、私は元々「入門書の次に読むような本が少なすぎる」という不満を持っていたので、それを書こうと考えました。ただ、本当にそれで良いのかなという不安もあったので、思い切ってYYPHPに参加して相談してみることにしました。

www.konosumi.net

結果的にYYPHPに参加したのは大正解で、それによって「自分が今書いている本は需要がある本なんだ!」という感覚を掴むことができました。

同人誌なんだから好きなように書けば良いじゃないかと思うかもしれませんが、かなりの時間をかけて執筆した本が、もし1冊も売れなかったとしたら立ち直れないほどのショックを受けると思います。

同人誌とは言え、こうやってリサーチやマーケティングをする事は重要なのかなぁ・・・と感じた瞬間でした。

YYPHPの第50回にご参加いただいた皆様には、今でもとても感謝しております。

qiita.com

技術系同人誌で学ぶ 実践プロダクトマネジメントを体感する

@inayamafumitakaさんの「技術系同人誌で学ぶ 実践プロダクトマネジメント」という、とても面白いスライドがあります。

www.slideshare.net

今まさに、私はそれを体感しています。しがない個人サークルですので、本の企画から章構成の検討、執筆に加えて校正やイラストレーターへの発注、本の宣伝と告知まで、全て自分でやらないといけません。

特に重要なのが時間の捻出です。プライベートの時間管理まで工夫しないと、印刷所の納期は意外とあっという間に訪れてしまいます。それなりに苦労はするけれど、私は元々本が好きだったこともあって、今は楽しい日々を過ごしています。

さいごに

得意気に制作秘話を語ってますが、実は肝心の本文はまだ完成しておりません(汗)。

現在の本文は約60ページで、正直このまま出そうと思えば頒布することも出来るのですが。入門書ではなく中級者を目標にするとなると、まだまだ書くべき事はたくさんあるなぁと思ってます。ただ、残り1ヶ月もないという時間的制約もありますので、出来る限りのブラッシュアップを経て頒布できればと思ってます。

ぜひぜひ、当日は「このすみ堂」までお越しください。しがない個人サークルですが、皆様をお待ち申し上げております。

そして、印刷部数を決めかねているので、ぜひとも技術書典のサイトで「サークルをチェックリストに追加する」も宜しくおねがいします。

techbookfest.org