nikkie-ftnextの日記

イベントレポートや読書メモを発信

イベントレポート | #技書博 2で初めて一人で執筆して頒布し、いただいたフィードバックから技術同人誌の楽しさを知りました

はじめに

頑張れば、何かがあるって、信じてる。nikkieです。
このブログでも何回か告知しましたが、12/14の技書博でPythonのargparseモジュールについての本を頒布してきました。
初頒布の身にとっては本当に素晴らしいイベントでした。
年を越して恐縮ですが、レポートをまとめます。

技書博の概要

第二回 技術書同人誌博覧会

技術書同人誌博覧会(技書博)は、エンジニア(おもにITエンジニア)が自身の知見を「本」という形で共有するために開催される、技術書オンリーイベント(同人誌頒布即売会)です。

参加サークルは100サークルほど、全参加者は670名くらいだったそうです。

頒布してみて

紙の本は40部 + 予備分1を頒布し、完売しました!
ごひいきいただき、ありがとうございます。

今回は小さく始めることを意識しました。

  • これまでの経験から100部頒布は相当大変という認識2です
    • サークルや頒布物のチェック数もほとんどの期間1桁台でしたので、売れ残りを抱えないように部数を切り詰めました
  • 内容はまだまだ書き足りないので、今後アップデートできるよう電子版の共有リンクを案内
    • 即売会ごとにアップデートして頒布する考えなので、在庫はあまり抱えたくありません
  • 同人誌執筆という活動を始めることを優先し、利益は追いませんでした。全部売れたら印刷費が回収できる価格設定です
    • 書き続けることを実践し、内容が充実したらそのときに価格を考えます

頒布する時間がどんな感じなのか、イメージできていなかったのですが、買いに来てくださった方とコミュニケーションできて素晴らしい時間でした。3
直接いただいたフィードバックからいくつものインスピレーションをいただきました!
「技術同人誌としてアウトプットしたら当日は淡々と頒布するのみ」と結構ドライな想像をしていたので、頒布の場でいただけるフィードバックは嬉しく、「アウトプットしてよかった」と強く思いました。
技書博自体、流量の調整や読書室の設置など、ゆったり余裕を持って運営されていて、回遊しやすい環境だったのではないかと思います。
フィードバックで得たものがとても多かったので、今後の技書博でもぜひ継続して頒布していきたいです。

頒布中はお隣のサークル、電脳世界さんPythonの入門書やGitの入門書を頒布)のオーニシさんとも話が弾みました。
Python関係サークルを並べてくださった運営の方には感謝です。

懇親会LTで、技術書典と技書博の客層の違いの共有があったのですが、当初思っていたよりも紙の本の需要が高かった印象です。
私は常に持ち歩きたいので電子で買いたいのですが、技書博では紙が売れました。
紙+電子と電子のみを同じ価格で売ったことも理由だと思いますが、今回技書博に来場された皆さんは紙の本がお好きという印象です。

いただいた声から

印象に残ったもの(どちらかというと少数の声)を紹介します。
「」の内容は記憶ベースです。

  • Sphinxで書いた本と聞いて買いに来ました」
    • Sphinx User GroupのSlackで話題になったそうです(多謝)
    • latexの部分が全然使いこなせていないので精進します。。(奥付をつけるのがやっとでした)
  • -h でプロセス終了するのでargparse好きじゃないんですよね」
    • -hの挙動には慣れきっていて、そういう見方もあるのかと思いました
    • -hの後input関数などでコマンド入力待ちに上書きするハックできるのかな?
  • click使っています」
    • ありましたね、clickWelcome to Click — Click Documentation (7.x)
    • 今回のアウトプットは、Pythonとセットでインストールされる argparse を知らなくて、 sys.argv で受け取った入力を一生懸命検証していた過去の私に伝えたくて書きました
    • 標準ライブラリargparseはインストール不要という点が気に入っているので、この本をclick本にすることは考えていません
    • 付録としてclickに言及してもいいかもしれないなと思いました
  • argparseのテストの仕方が気になって」「pytestではないんですね」
    • 標準ライブラリunittestを使ってテストについて書きました
    • 私は sys.argvに引数を再現したリストを代入してテスト4しています
      • 執筆は時間切れとなってしまったので、必要な方に口頭で補足する形になりました
    • pytestも付録で言及できるかも

今後

実は時間切れとなっていて「まだまだ書き足りない!」という想いを抱いているので、当日いただいたフィードバックも参考に、電子版のリンク先をアップデートしていきます。

1冊書いてみて思うことは、「これは終わりではなく、始まりなのだ」ということです。
当初はもっと多くのことが盛り込めると思っていたのですが、見積もりが甘かったために盛り込めなかったことがたくさんあります。(あとがきより)

小さいアップデートを少しずつ積み重ねます!

また、3/1の #技術書典 8(2日目)にもサークル参加します。
アップデート版argparse本は少なくとも頒布したいと思っています。
今回の経験を踏まえて余裕を持ったスケジュールで内容のブラッシュアップを達成しつつ、レビューアーとしてもコミュニティに少しでも貢献できたらと考えています。

最後になりましたが、素晴らしいイベントを運営してくださった技書博スタッフの皆さま、当日か-01でフィードバックをくださった方々に重ねてお礼申し上げます。
ありがとうございました。

このエントリでargparse本に興味を持った方へ

Pythonコマンドラインツールを作る with argparse』はboothで頒布中です:

サンプルコードのリポジトリはこちらです:


  1. 見本や提出分も合わせて、50部印刷しました。予備が6部付きました

  2. 11時から17時までの6時間で100部売ろうとしたら、平均して3,4分に1冊ペースです(mochikoさんの 【ダウンロード版】技術同人誌を書いたあなたへ ~著者のしあわせなミライ~ - mochikoAsTech - BOOTH より)。技術書典6で合同誌の売り子を1時間程度経験して、3,4分に1冊ペースというのは相当なものだと実感しました

  3. 出展経験豊富なゆうげんさんにお越しいただき、コミュニケーションする魅力について教えていただきました。ありがとうございます。今回の技書博を通して私は魅了されました

  4. 「プログラムがどんな引数を必要としているのかを定義すると、argparse が sys.argv からそのオプションを解析する方法を見つけ出します。」argparse --- コマンドラインオプション、引数、サブコマンドのパーサー — Python 3.8.1 ドキュメント