2018/10/11(木)新しい始まり
今日は仕事後にjoeくんと打ち合わせ。来年春に開催されるであろう技術書典6についての企画会議でした。半年なんてあっという間なので、少しずつ進めなければいけないのです。特に私は12月と3月に例の発表が控えていることが分かっていますしね。
今回のサーバーレス本のように、アプリエンジニアとQAエンジニアのコンビだから書ける本というスタンスは崩したくないのですが、なかなか難しいところではあります。2人とも本職はスマホアプリなんですが、そっちはレッドオーシャンだしなぁw
ともあれ、今日のところはシスプリRePureの春歌回を観てから寝ることにします。
2018/10/10(水)年には勝てない
一昨日は技術書典5に参加しました。打ち上げでパーッと行きたい気分ではありましたが、体力的な問題もあって、joeくんと軽くご飯を食べただけで撤収。帰宅後すぐに寝てしまいました。
一日寝ただけでは疲れは抜けず、昨日もしっかり寝たかったところでしたが、小田急線が人身事故で遅延したために帰宅が遅くなり、また、力を入れたブログを書いたために床に就いたのも日付が変わってからでした。
何が言いたいかというと、今日こそは早く寝たいということです。
2018/10/09(火)技術書典5で『ほぼPythonだけでサーバーレスアプリをつくろう』を頒布しました
昨日、池袋で行われた技術書典5にサークル参加しました。技術書典は秋葉原で行われた第1回から参加していますが、サークル側で参加したのは今回が初めてです。次回以降、初めてサークル参加される方の参考になることもあるかもしれませんので、簡単に振り返ってみたいと思います。
本のテーマ
去年の夏ごろ、joeくんと組んでいるプライベートプロジェクトのThunder Clawで同人誌を出したい、ということになりました。Python → へび → へびつかい座 → シャイナさん → サンダークローという経緯で名前が決まったサークルなので、題材にする言語はPythonで即決です。
ちょうどそのころ、ChaliceというAWS向けマイクロフレームワークのGA版がリリースされました。いいタイミングなので、このChaliceを題材にしようということになりました。フロントエンドはTranscryptというaltJSがあるらしく、使ってみると実用に耐えるレベルで変換してくれました。また、Java製のSeleniumラッパーであるSelenideのファンである我々は、ほぼ同インターフェイスを持つPython製のラッパーSeleneをテスト編で取り扱うことも決めました。
そして申し込んだコミックマーケット93は落選。そして、満を持して申し込んだ技術書典4にも落選。原稿そのものは少しずつ進めましたが、日が経つにつれて主要なテーマが少しずつ変化していきました。最終的に、技術書典5で出した本の大きなテーマは以下の3つです。
- Transcryptはいいぞ
- Seleneはいいぞ
- 実装とテストは開発の両輪である
乱暴な言い方をしてしまえば、サーバーレスはテーマを届ける手段であって執筆の目的ではなくなりました。というより、GA版からだいぶ時間が立ってしまったので、Chaliceを軸にすることができなくなった、とも言えます。
一方、Transcryptは相変わらずマイナーなパッケージで、まだこれをゴリ押しすることは可能だと判断しました。Seleneについても同様です。
Transcrypt怒涛のアップデート
会場が広くなって参加サークル数も増えた技術書典5には無事当選し、本を出せることになりました。前々から書き進めていたので、締め切りに苦しんだりすることはないだろう、そう思っていたのですが……。
Pythonもくもく自習室やPyCon JP 2018でもネタにしたのですが、8月29日時点でアルファ版だったTranscrypt3.7が、30日と31日に4回のリリースを行い、一気にRC版、GA版をリリースしました。
これが後方互換性を保つバージョンアップであればよかったのですが、生成されるJavaScriptファイルの形式がまったく別物になってしまったため、Transcryptについて取り扱った5章はほぼ丸ごと書き換える羽目になりました。また、テスト編についても、Seleneを扱った第10章で大きな打撃を受けました。
もちろん、原稿だけであればなんとかなったでしょう。しかし、私は9月18日にPyCon JP 2018でTranscyptについて発表する予定でした。こちらのダメージのほうが深刻で、スライドの3分の2は書き直し、それも動作検証から行わなければいけません。そのため、原稿自体が2週間ほど滞ることになりました。
結局、本が出せたことからもわかるように締め切りには間に合ったのですが、当初は20%オフの入稿も検討していながら、最終的には通常入稿の締め切りギリギリになってしまいました。
はじめてのオフセット印刷
私とjoeくんはコミックマーケット79にサークル参加したことがありますが、当時の本はコピー紙でしたし、実際の作業もほとんどおぎたさんに任せっきりでした。
今回はページ数も多いですし、ちゃんと印刷所に頼もうということになりましたが、ホームページを見てもイマイチよくわかりません。悩むくらいなら聞いてしまえということで、御茶ノ水の日光企画さんに相談に行きました。
「何も知らないので教えてください」というスタンスでいろいろ聞きましたが、1時間以上かけて親切丁寧に教えてくださいました。初めて印刷所に頼む方は、絶対に話を聞きに行ったほうがいいです。我々はプログラミングのことは詳しいかもしれませんが、印刷に関してはほとんどの人が素人なのですから。
また、先方も快く教えてくれます。事前にいろいろなことを明確にしておけば、我々の手間も省けますが、先方の無駄な作業を減らすことにも繋がります。遠慮してあとから迷惑をかけるくらいであれば、余裕があるうちにわからないことは明確にしておきましょう。
また、日光企画さんは当日も設営中に印刷物の不備がないか確認に来てくださって、とても安心感がありました。ありがとうございました。次回も日光企画さんのお世話になろうと思います。
当日の設営
これは言葉では難しいので写真を貼ります。
事前に準備したのは次のようなものでした。
- 松井稼頭央レプリカユニフォーム(ホーム)
- 松井稼頭央レプリカユニフォーム(ビジター)
- あの布
- 見本誌用イーゼル
- 見本誌用ブックカバー
- 見本誌用ラベル
- お手製ポスタースタンド
- 値札
- 値札ホルダー
- かんたん後払い用QRコード
- スケッチブック
- メモ帳
- 筆記用具
- 売上金を入れるホルダー
- ハサミ
- カッター
- ガムテープ
- らいにょん
ライオンズファン二人のサークルということで、先日引退を発表した稼頭央さんのユニフォームを着ました。先行のアプリエンジニアがビジター、後攻のQAエンジニアがホームです。
ポスタースタンドを机の上に置いたのは失敗だったかもしれません。落ち着いてきてからは、ポスターの後ろでお昼を食べたりできましたが、ピーク時に2人同時に前に出られなかったので、列をさばくスピードが少し落ちてしまいました。
なお、上の写真のどこかにらいにょんくんはいます。見つかりますか?
頒布冊数と被チェック数
13時ちょっと前に紙で用意した200部が完売しました。1分1冊よりも速いペースで売れ続けることは完全に想定外で、スペースまで来てくださったのに買えなかった方には申し訳ないです。
その後も17時の閉会まで電子版の頒布を続けましたが、売れたのは70部ほど。それまでのペースを考えれば半分どころのペースではありません。もちろん、序盤は人の多い時間帯だったということもあるのでしょうが、やはり紙の本を求める人が多かったということでしょう。紙はないのか、再版の予定はないか何度も聞かれましたし、そのたびに謝ることになってしまいました。
紙の在庫があればおそらく300部はさばけたでしょうし、400部刷ったとしても、完売は無理でも大惨事にはなっていなかったと思います。とはいえ、200部というのもかなり冒険したつもりだったので、これ以上刷るという選択肢はありませんでした。このあたりは経験を積んでいくしかないのでしょうね……。
最終的な被チェック数は231ということで、紙の本の部数よりも被チェック数が上回りました。被チェック数はあくまでも「チェックしてくれた」数なので、それだけの人が買ってくれるとは限りませんし、また、逆にそれだけの数があれば十分とも限りません。今回に関していえば、チェックしていないのに買ってくれた人が多かったのかなという印象です。
ただ、うちのサークルについては少し特殊な事情もありました。
まず、joeくんのブログ記事がバズったこと。もともとはわかめさんがブログ更新ツイートをリツイートしてくれたのが始まりだったんじゃないかと思っているのですが、それがはてぶのブックマーク数56につながり、スマートニュースからの流入もあったそうで、かなりの人に知ってもらうことができたと思っています。
また、joeくんがTest Engineers Meetupの登壇時、私がPyCon JP 2018の登壇時にそれぞれ冒頭に宣伝を挟み込みました。しかも、私の登壇はテーマがTranscryptなので興味を持ってもらいやすい状況でしたし、セッションの動画はYouTubeでも公開されています。私のセッションを聞いてきたという方も何人かいらっしゃったので、宣伝効果は高かったのではないかと思います。
もちろん、宣伝のために登壇するようでは本末転倒ですが、たまたまいい機会をいただけたのが頒布数にもつながったのではないかと思っています。
今後の予定と宣伝
コミックマーケット95に申し込んでいます。当選した場合は、合作ではなくjoeくんと私それぞれで薄い本を1冊ずつ出す予定です。さすがに140ページ級をほいほい出せるほど筆は軽くありませんので。
もちろん、来年春に行われるであろう技術書典6にも申し込むつもりです。こちらはまたアプリエンジニアとQAエンジニアという組み合わせならではの本が書ければいいなと思っています。
最後に一つ宣伝です。今回頒布した『ほぼPythonだけでサーバーレスアプリをつくろう』の電子版をBOOTHで販売しています。会場に来られなかった皆さん、来たけれどうちのスペースに気づかなかった皆さん、現地ではスルーしたけどやっぱり欲しくなった皆さん、もしよろしければどうぞ。よろしくお願いします。
ほぼPythonだけでサーバーレスアプリをつくろう - Thunder Claw - BOOTH(同人誌通販・ダウンロード)
2018/10/08(月)ありがとうございました
技術書典5にサークル参加して、打ち上げ的な夕食のあと、先ほど帰宅しました。
体力的に限界が来ているので振り返りは明日改めてしたいと思いますが、まずはスペースにお越しいただいた皆様、本当にありがとうございました。
2018/10/07(日)平成最後の夏
長かった私にとっての平成最後の夏が、明日ようやく終わります。
この夏は色々なことがありました。
後半には失速すると思われたライオンズがファイターズを突き放し、代わって浮上してきたホークスも返り討ちにしました。PyCon JP 2018という大規模なカンファレンスでの発表をさせてもらいました。その発表3週間ほど前にTranscryptが怒濤のリリースでバージョンアップをしたために泣きそうになりながらスライドを修正しました。
それらと並行して作業を進めていた『ほぼPythonだけでサーバーレスアプリをつくろう』という本を明日の技術書典5で頒布します。「か09」で皆様のお越しをお待ちしております。
2018/10/06(土)レギュラーシーズン終了
【福岡ソフトバンク vs 埼玉西武 第25回戦】 (2018年10月6日/福岡 ヤフオク!ドーム) 埼玉西武 0 2 0 0 0 0 1 0 0 3 福岡ソフトバンク 0 3 2 0 0 0 0 3 x 8 [勝] 武田 4勝9敗1S [敗] 斉藤大 1勝3敗0S [本塁打] 2回裏 西田 4号 3ラン (斉藤大) 8回裏 グラシアル 9号 ソロ (松本) 8回裏 明石 1号 2ラン (今井)
ライオンズのレギュラーシーズンの全日程が終了しました。ライオンズは88勝53敗2分の勝率.624という好成績で優勝を飾りました。最終的にシーズン800得点には届きませんでしたが、まさか35も貯金ができるとは。
今日の最終戦はCSでも当たる可能性があるホークスとの対戦だったので、できれば勝っておきたいところではありましたが、無理をして勝ちに行くほどの試合でもありませんし、負けて残念でしたね、以上の感想はありません。そもそもテラスつきのヤフオクドームの試合と、CSが行われるメットライフドームでの試合はまったく別物でしすね……。
個人タイトルもなんとなく見えてきた感はありますが、まだ他チームの試合が残っていますので、そのあたりの話も確定してからにしたいと思います。
これから10日ほど日程が空きますので、疲れている選手はゆっくりと体を休めてほしいと思います。また、最終的には打線の調子が落ち気味でレギュラーシーズンを終えたので、万全の体制で試合に臨めるようにこれからの期間でしっかり調整して欲しいとも思います。
2018/10/05(金)技術書典5にて『ほぼPythonだけでサーバーレスアプリをつくろう』を頒布します
10月8日(祝)に池袋サンシャインシティで行われる技術書典5にサークル参加します。
Thunder Clawは『ほぼPythonだけでサーバーレスアプリをつくろう』という本を頒布します。バックエンドをChalice、フロントエンドをTranscrypt、ユニットテストをpytest、UIテストをSeleneと、ほぼすべてのコードをPythonで記述します。第I部の実装編をアプリエンジニアの@7pairsが、第II部のテスト編をQAエンジニアの@joe_uragamiが執筆しました。
全144ページ、電子版のダウンロードカードとセットで1,000円で頒布します。ご興味のある方は「か09」でお会いしましょう。
今回が初めてのサークル参加なので、どう動くべきかわかっていない部分もあるのですが、開場からしばらくは二人揃ってブースにいる予定です。本の内容について聞きたいことがあればお気軽にお声がけください。
なお、埼玉西武ライオンズのビジターユニフォーム(紺)を着ているほうがアプリエンジニアの@7pairs、ホームユニフォーム(白)を着ているほうがQAエンジニアの@joe_uragamiです。先攻がアプリエンジニアで後攻がQAエンジニアです。
ただし、台風一過で暑くなる可能性もあるので、そのときはTシャツになっているかもしれません。その場合はPyCon JP 2018のスピーカーTシャツ(紺)を着ているほうが@7pairs、一般参加者Tシャツ(黄)を着ているほうが@joe_uragamiです。
2018/10/04(木)伊藤、プロ初先発で3勝目
【千葉ロッテ vs 埼玉西武 第25回戦】 (2018年10月4日/ZOZOマリンスタジアム) 埼玉西武 1 0 3 0 2 0 0 0 0 6 千葉ロッテ 0 0 0 1 2 0 0 0 0 3 [勝] 伊藤 3勝0敗0S [S] 増田 2勝4敗14S [敗] 有吉 6勝4敗0S [本塁打] 5回表 浅村 32号 2ラン (有吉)
伊藤がプロ入り初先発。5回2/3を3失点で先発としての初勝利をマークしました。中3日でしたし、あまり先発としての調整もできていなかったでしょうから、プロ入り初先発でこの結果は上々でしょう。ピンチになっても逃げ腰にならないあたり、いつまでも二軍で燻っている面々とは格が違うという感じでしょうか。あとはスタミナがつけば十分にローテに入れると思います。
打つほうでは浅村がタイムリーツーベースと2ランホームランで3打点。球団記録を更新しました。また、山川も2打点を挙げていて、打点王争いのほうもまだ分かりません。
これでライオンズは優勝が決まってから4連勝。明日の移動日をはさんで、明後日の福岡でのホークス戦が今シーズン最終戦となります。さすがにチーム800得点と秋山の200安打は厳しくなりましたかね……。
2018/10/03(水)3連勝
【北海道日本ハム vs 埼玉西武 第25回戦】 (2018年10月3日/札幌ドーム) 埼玉西武 1 0 3 3 0 0 0 0 0 7 北海道日本ハム 0 2 0 0 0 0 0 0 1 3 [勝] 高橋光 2勝1敗0S [敗] 加藤 5勝8敗0S [本塁打] 3回表 浅村 31号 2ラン (加藤) 4回表 木村 3号 3ラン (加藤)
高橋光が8回142球の力投で2勝目をマークしました。2失点という数字だけを見れば素晴らしいのですが、初回、2回のピッチングはあまりにも酷かったので、ちょっと評価に困る感じですねw ただ、中盤以降は本当にいいピッチングだったので、この感覚を忘れないでほしいと思います。
打つほうは浅村が124打点に到達し、リーグ単独トップに立つとともに、球団シーズン最多記録にも並びました。あと2試合、どこまで伸ばせるでしょうか。また、その浅村に代わって途中から3番に入っていた木村も4回にホームランを放って突き放しました。こういうバッティングが見たかったんですよね。CSでは貴重な右の代打枠になりますから、こちらも今日の感じを忘れないでもらいたいと思います。
2018/10/02(火)久しぶりのタイムリー
【北海道日本ハム vs 埼玉西武 第24回戦】 (2018年10月2日/札幌ドーム) 埼玉西武 0 0 2 0 0 0 1 0 0 3 北海道日本ハム 1 0 0 0 0 0 0 1 0 2 [勝] 榎田 11勝4敗0S [S] マーティン 2勝1敗1S [敗] マルティネス 10勝11敗0S [本塁打] 1回裏 松本 1号 ソロ (榎田)
ライオンズ先発の榎田は初回先頭の松本にホームランを許しましたが、そのあとは粘りのピッチングで7回で8安打を許しながらも1点に抑えました。先制されても滅多に試合を壊さないのはさすがの一言です。
打線は3回に浅村のチーム68イニングぶりとなるタイムリーで逆転に成功。この2打点で浅村の打点が山川に並びました。また、7回には秋山のタイムリーで追加点。秋山は今日2安打でシーズン192本目のヒットとなりました。あと3試合で200安打に届くでしょうか。