あぼぼーぼ・ぼーぼぼ

のんびり生きたい

Go 1.19.3 and 1.18.8 security fix の内容を読んだ

Go

今更ながら Go 1.93 及び 1.8.8 のマイナーリリース、security fix の内容について。 リリース内容はこちら groups.google.com どういう問題があったか github.com Windowsにおいて、環境変数をサブプロセスに渡す際にヌル文字(NUL)が含まれていると別の環…

Go 1.19.2 and 1.18.7 security fix の内容を読んだ

Go

https://groups.google.com/g/golang-announce/c/xtuG5faxtaU 3つの security fix が含まれている。 archive/tar : ヘッダー読み込み時のメモリ消費量に制限をかけた net/http/httputil : ReverseProxy でパース不可能なクエリパラメータを転送しないように…

http.NewRequestがerrorを返すパターン

Go

以下のPRをマージする過程で調べる必要があったのでメモしておく。 github.com 結論http.NewRequestがerrorを返すパターンは、HTTPメソッドが不正な場合と、URLのパースに失敗した場合の2パターンある。 http.NewRequestはgodocにもあるとおりhttp.NewReques…

『詳解Go言語Webアプリケーション開発』を読んだ

本の約半分がハンズオン形式になっていて、実際にWeb APIを開発しながら必要となる知識をインストールできる本でした。ハンズオンで作るWeb APIはBeyond the Twelve-Factor Appに準拠した形で、お題もMySQLを使ったデータ永続化、RedisとJWTを使った認証・認…

『達人が教えるWebパフォーマンスチューニング』を読んだ

明日ISUCON予選なので読みました(白目 https://github.com/catatsuy/private-isuを題材に実際にチューニングをしながら理解できる構成になっています。実際のISUCONではベンチマーカーはクリックひとつで実行するだけだと思いますが、本書ではベンチマーカ…

『UNIXという考え方』を読んだ

名著なのは知ってましたが読めておらず、ようやく読めました。 スモール・イズ・ビューティフル、できるだけ早く試作をつくる、梃子を有効に活用する、一つのことをうまくやる、あたりの考え方がとくに刺さりました。そしてUNIXコマンドはすごく考えられてる…

NotionのページアイコンのURLをコピーするChrome拡張をつくった

chrome.google.com 自前でアップロードした画像を色々なページのアイコンに設定するのをラクにするChrome拡張です。 Notionではアップロードした画像をページアイコンに設定できます。その画像を他のページのアイコンにも設定したければ、ページ自体を複製す…

『リーダーの作法』を読んだ

https://www.amazon.co.jp/dp/4873119898:site 表紙の蜂 が毛並みも見えて結構リアルでした。 ぼくにとっては参考になったり魅力的に感じる章は限られていました。今の役割や興味が、この本で登場するマネージャー・ディレクター・エグゼクティブのどれにも…

『ユニコーン企業のひみつ』を読んだ

www.amazon.co.jp ユニコーン企業(というかSpotify)の働き方を知ることができる本。ページ数がそんなに多くないので読みやすいです。 あとがきにもあるように、執筆当時のスナップショット。特にこういった企業は学習のスピードが速く変化も速いので現状と…

『その仕事、全部やめてみよう』を読んだ

www.amazon.co.jp 谷を埋めるのではなく山をつくる「ラストマン戦略」は最近はわりと同意できる部分があって、ふむふむと読めました。 パフォーマンスを高めるために力を抜く、の部分もなるほど〜と。400メートル走の例は分かりやすくて、スピードに乗ると全…

Goの静的解析の事始めとしてエラーラップフォーマットのLinterをつくった

Go

こちらのもくもく会も活用して、簡単なLinterをつくりました。 gostaticanalysis.connpass.com つくったもの github.com Goの静的解析の事始めとして、エラーのラップフォーマットの間違いを検知するLinter errwrapfmtをつくりました。 errwrapfmtは文字列リ…

Goでスタックトレースを出力するには

Go

スタックトレース周りについて調べたので放流。 概要 Goでエラーを扱う標準パッケージ errors はGo1.18現在スタックトレースに対応していません。Go2では標準パッケージerrorsにスタックトレースがサポートされる予定です(proposal)。それまでの間、スタック…

『実践システム・シンキング』を読んだ

www.amazon.co.jp 『なぜあの人の解決策はいつもうまくいくのか?』を読んだ - あぼぼーぼ・ぼーぼぼ で知ったシステム思考について何冊か読んでみたかったので購入。 Kindleのメモ機能とか対応してなかったので残念。内容は1,2,3章がシステム思考の基礎やプ…

『問いかけの作法』を読んだ

www.amazon.co.jp 一人では出せない成果を出すために集合知(集団脳)を活用するうえで「問い」というのが大事そうだ、というのはいくつか本を読んだりしてわかったのですが、本書はその問いを現場で実践する際のプラクティスがたくさん書いてありました。問…

『テスト駆動開発』を読んだ

www.amazon.co.jp 同僚が楽しそうに本書を紹介してくれたので読みました。 3部構成になっていて、第1部は多国通貨、第2部はテスティングフレームワークであるxUnitを題材にTDDのプロセスを体験します。こういう本を読む場合、題材が自分の知識外の知識を必要…

『システム運用アンチパターン』を読んだ

www.amazon.co.jp ◯◯アンチパターン本としては『SQLアンチパターン』が思い浮かぶのですが、「システム運用」って結構広いので何が書かれているかわくわくしながら読みました。 広いだけあって、章ごとに結構毛色が変わっていて且つ基本的に独立してるので、…

『LEADER’s KPT』を読んだ

www.amazon.co.jp KPTとは何か?どうやるか?についての入門的な内容がまとめられていました。 すでにKPTに慣れ親しんだ自分にとっては目新しい発見こそ少なかったですが、つまらなかったわけでもないです。例えばKeep/Problem/Tryの数や比率を継続的に計測…

Goのリンターstaticcheckのルールを全部読んだからいくつか紹介

Go

Goのリンターの1つであるstaticcheckのルールを全部読みました。 staticcheck.io 全部書くとただのコピーになってしまうので、その中からかいつまんでいくつか紹介します。 SA1 – Various misuses of the standard library SA1004 - Suspiciously small unty…

『なぜあの人の解決策はいつもうまくいくのか?』を読んだ

www.amazon.co.jp ラノベみたいなタイトル。システム思考についての本をはじめて読んだのですが、いいですねこれ。 システム思考 is 問題をパターンとして捉えて、パターンを生み出している構造を理解して、構造に働きかけることで問題解決をしていくこと。 …

httptest.ResponseRecorderを使ったテストでHTTPステータスコードが意図した値にならないとき

Go

httptest.ResponseRecorderを使ってHTTPサーバーのテストをしている際、レスポンスのHTTPステータスコードが意図した値にならないなぁと思って色々調べたのでそのメモです。 例えば以下のようなコードで再現することができます。 type MyHandler struct{} fu…

『ファシリテーションの教科書 - 組織を活性化させるコミュニケーションとリーダーシップ』を読んだ

https://www.amazon.co.jp/dp/B00P28A5M8 『多様性の科学』を読んでからというもの、集団で仕事をする -> 集合知を高める(集団脳を構築する)と考えた時に、集合知を高める観点で周りを見渡すとまた色々な領域で学ぶことがあるな〜と思っています。 会議もそ…

『実用Go言語』を読んだ

https://www.amazon.co.jp/dp/4873119693 実務レベルでGoを読み書きする際に考えるであろう様々な「問い」とその回答が体系的にまとまっている超良書でした。ぼくは最近Goを触り始めたペーペーなので、本書を読むと昨日自分が書いたコードを書き直したくなっ…

『THE CULTURE CODE 最強チームをつくる方法』を読んだ

www.amazon.co.jp Amazonを見ると去年購入してたらしい。最近チーム関連の本をいくつか読んでたので、その流れでKindleのライブラリにあった本書を読みました。 主題としてはこんな感じ。 チーム力を醸成する文化は「安全な環境」「弱さの開示」「共通の目標…

『チームワーキング ケースとデータで学ぶ「最強チーム」のつくり方』を読んだ

www.amazon.co.jp kindle unlimitedだったので読んだ。 チームを動的なものと捉えて、成果を出すチームであるために「目標を握り続ける」「動きながら課題を探し続ける」「相互にフィードバックし続ける」という行動をとっていくと。 タイトルに「ケースとデ…

『コンサル一年目が学ぶこと』を読んだ

コンサル1年目どころかエンジニア8年目ですが、kindel unlimited対象だったので読んでみました。 内容としては社会人においては普遍的に大事なことが整理されてリストアップされてるので、たしかに一年目にこれ読んで仕事をしていくと仕事の質が上がりそうな…

「テスト駆動開発でGo言語を学びましょう」をやった

Go

andmorefine.gitbook.io TDDをしながらGoの型や標準パッケージについて学べる教材です。対象としては他のプログラミング言語で一定経験があり、GoについてもA Tour of Goはやったことある以上の人かなという気がします。全くの未経験だとそもそもTDDやテスト…

『リフレクション 自分とチームの成長を加速させる内省の技術』を読んだ

kindle unlimited対象だったので購入。 著者は「学習する組織」という組織論に影響されて本書を書いたとのこと。内省して過去の経験を未来に活かすために、メタ認知力を高めてこうぜって感じ。 ただあえて別のポイントを取り上げると、本書には多様性につい…

『多様性の科学 画一的で凋落する組織、複数の視点で問題を解決する組織』を読んだ

www.amazon.co.jp 最近ぼくが所属するチームの人数がドカッと増える(と言ってもピザ2枚に収まる範囲)ので、「色んな人がいることのメリットってなんだっけ?」みたいなことを色んな角度から意識したいなと思って手に取った本です。 結果この本は最近読んだ…

『論点思考』を読んだ

www.amazon.co.jp 論点思考とは、解くべき問題を定義するプロセスのこと。 解くべき問題を見極める、みたいな考え方は『イシューからはじめよ』『ライト、ついてますか』あたりの本でも出てくる大事な考え方。 「あれもこれも」では結局、なにもできない p80…

『知識ゼロから学ぶソフトウェアテスト』を読んだ

www.amazon.co.jp 文体がこんな感じだと思ってなかったのでちょっと面食らった。それからいわゆるQAと開発者が分かれているような組織で働いたことがない*1ので、それ前提で書かれている部分は想像が難しかったです。 カバレッジの説明とか、テスト書くにあ…