技術書典13で同人誌を頒布します & 既刊PDFダウンロードページ

こんにちは。 技術書典活動の代表のUMEです。


9/10(土) ~ 9/25(日) の期間に技術書典13がオンライン開催されます。9/11(日)にはオフラインでの開催もあります(※事前に入場券の発券が必要)。詳細は技術書典13の公式サイトをご確認ください。

なお、KLabは技術書典13のサポーターとして活動を応援しております。

KLabではほぼ毎回参加して新刊を発行しており、今回も社内の有志のエンジニアが好きな内容で記事を執筆して新刊を発行しました。 今回頒布する新刊は Vol.10 です。参加するたびに発行しているので、今回で10回目の参加となります! 初回参加の技術書典3のとき以降、技術書典9を除く全ての回で参加してきました。 自分は Vol.3 が最新刊だった2019年に新卒入社したのですが、時の流れを感じますね......。

個人的には、会社の同人誌として、統一感のない色々な記事をまとめたものを発行してしまう自由さが気に入っています。 会社に直接的に貢献できるかどうかに関わらず、エンジニアそれぞれにとっての好きな分野について語っている雰囲気が強く出ているからでしょうか。 興味分野についてのインプット/アウトプットは楽しいので、そういった楽しさが記事を通して伝わってくる気がします。

今後もこんな雰囲気を感じられる同人誌を発行し続けられるといいなと思っています。

頒布内容

前回に引き続き、今回もオンラインのみの頒布となります。

例年は新刊の物理本を 1000円 で頒布していたのですが、今回は新刊を 500円 で頒布します。

また、既刊の物理本についても 500円 で頒布しますので、在庫限りではありますが物理本が欲しい方はオンラインマーケットにてお買い求めください。

なお、電子版のみであれば新刊も既刊も無料頒布となります。

今回もいつものように色々な分野の記事が集まりました。 過去最高の140ページ越えの分厚い本になっていますが、内容は章ごとに独立しているので、気になる記事が一つでもあればぜひご一読ください。

記事一覧

  • 2000 円の SwitchBot センサーをハックしよう
  • Raspberry Pi Pico と Rust で漢字を描画しよう
  • USB Raw Gadgetを触ってみた
  • 2D ボリュームライト用メッシュの作り方
  • Unity の Job/Burst を使ったマルチスレッド経路探索
  • Python のマイナー文法の紹介
  • React Concurrent Mode 完全に理解した(い)
  • ベジエ単体フィッティングで多目的最適化の解を近似する
  • Jupyter カーネル自作入門

頒布ページ

最新刊(物理本+電子版)

KLab Tech Book Vol. 10

既刊(物理本+電子版)

既刊(電子版のみ)

執筆者コメント

1. 2000 円の SwitchBot センサーをハックしよう

SwitchBotセンサー製品のBLEアドバタイズパケットを解釈するライブラリを自作し、熱源を検知したときやドアを開閉したときに任意コードを実行する仕組みを作りました。これを運用して得た知見を紹介します。

2. Raspberry Pi Pico と Rust で漢字を描画しよう

安価で高性能なマイコンボードとして、最近 Raspberry Pi Pico が盛り上がりを見せています。また、様々なジャンルのプログラムの記述に使われている Rust は、その本来の性質から組み込みプログラミングととても相性が良いです。この記事では、この 2 つを使ってちょっとしたアプリケーションを作成しました。また、実験内容の関係で Unicode から JIS X 0208 に文字列エンコーディングを変換する処理が必要になったため、その詳細についても解説しています。

3. USB Raw Gadgetを触ってみた

ラズパイ等での自作のUSBデバイス作成にはconfigfs経由で設定するUSB gadgetが有名ですが、fuzzingといったセキュリティの観点からさまざまなテストが行えるUSB raw-gadgetを最近見つけました。本記事では、サンプルコードを動かすまでの手順と、fuzzingを実施するにあたり必要そうな知識としてUSBの基本的な仕様について解説しています。

4. 2D ボリュームライト用メッシュの作り方

Unity製の2Dゲームにおけるボリュームライト用メッシュ(壁によって阻まれる光源等の表現に用いるもの)の作成方法を紹介します。非常に高度な知識を要する訳では無いので、Unityを触った事がある方や、そうでないけれどゲーム上の表現がどのように行われているかに興味がある方等にも読んで頂ければ幸いです。 可能な限り図説を使用し、概念だけでも伝わりやすくなるように心がけて執筆させて頂きました。

5. Unity の Job/Burst を使ったマルチスレッド経路探索

Job/Burstの簡単な紹介から始め、Raycast/Boxcastで地形情報のグリッドを生成し、A*で経路探索するプログラムの実装をサンプルコードやハマりやすいポイントも含めて解説されている。まだExperimental状態のNavMeshQueryを利用したマルチスレッド経路探索とオリジナルのNavMeshとの性能比較データも載せています。

6. Python のマイナー文法の紹介

Pythonを使うのがより楽しくなる文法ネタを紹介します。while文にelse節を書くことができる、アンパック代入には要素数未定のイテラブルや星付きのターゲットが使える、with文は複数行で記述できる、match文は値が等しいかの確認にとどまらないなど。

7. React Concurrent Mode 完全に理解した(い)

ReactのConcurrent Modeについて、実際のコードを読んでさらにもう一歩理解を深めるというちょっとした話を書きました。 コードリーディングに関してはそこまで深く突っ込んではいませんが、今回の話で必要そうな箇所は具体的なファイル名や行数込みで書いています。そのため、Reactのコード読んでみたいけどどこから読もうか悩んでいる、みたいな方の手助けにもなるかもしれません。

8. ベジエ単体フィッティングで多目的最適化の解を近似する

ベジエ単体フィッティングについて、近似理論からPythonパッケージの使い方、機械学習のハイパーパラメータ最適化への応用までを解説します。

9. Jupyter カーネル自作入門

Whitespaceを動かすJupyterのカーネルをGo言語で実装しました。この具体的なコードを使ってJupyterカーネルの作り方を、GoやPython以外でも実装できるよう基礎部分も含めて解説します。

既刊PDFダウンロード

既刊の電子版PDFです(物理本とは一部異なる場合があります)。

このブログについて

KLabのゲーム開発・運用で培われた技術や挑戦とそのノウハウを発信します。

おすすめ

合わせて読みたい

このブログについて

KLabのゲーム開発・運用で培われた技術や挑戦とそのノウハウを発信します。