ブログ
GPU・LLM・MLOps・Kubernetes、そしてマインドセット · 3508 件
#2026-03 764#japanese 587#deep-dive 254#kubernetes 247#culture 236#career 224#ai 214#llm 208#devops 193#2026-04 144#security 139#observability 113#database 110#communication 107#architecture 100#productivity 88#finance 87#mindset 80#ai-papers 79#history 79#it 78#psychology 78#english 75#networking 74#deep-learning 73#gpu 70#linux 70#performance 70#cs-fundamentals 63#ai-agent 61#postgresql 59#rag 59#economy 57#mlops 53#self-improvement 53#ai-platform 51#food 51#learning 51#python 51#travel 51
地図はなぜ嘘をつくのか — メルカトルから検索アルゴリズムまで
グリーンランドはアフリカの14分の1の大きさですが、教室の壁の世界地図ではほぼ同じに見えます。これはミスではなく設計です。球面を平面に伸ばすことは数学的に不可能だというガウスの証明から出発し、航海のために角度を守って面積を捨てた1569年のメルカトル図法、政治的抗議として登場しながらそれ自体が歪みを抱えていたペータース図法論争、中心と上をどこに置くかという政治、そして正確さではなく世界観を描いた中世のマッパ・ムンディまでをたどります。最
2026-07-26 · 26 分で読めます #humanities#history#cartography#geography#powerジャズはいかにして生まれたのか — コンゴ・スクエアからKind of Blueまで
ジャズ最初の伝説バディ・ボールデンは、録音を一枚も残しませんでした。そして1917年、世界初のジャズ・レコードを作ったのは白人バンドでした。フランスとスペインが交互に支配したニューオーリンズ、日曜ごとにアフリカの太鼓を叩くことができたコンゴ・スクエア、ヨーロッパ音楽を正式に学んだクレオールの奏者たち、そして彼らを黒人バンドへ押し込んだ1894年の人種法令まで — ブルースとラグタイムという二つの根から始まり、ルイ・アームストロングのソロ
2026-07-26 · 27 分で読めます #humanities#music#jazz#music-history#cultureDockerのビルドキャッシュが何度も壊れる理由 — レイヤーキャッシュキー、ARG、BuildKitのキャッシュマウント
コードを1行直しただけでnpm ciが5分もかけて再実行される問題の原因を、キャッシュキーのレベルで説明します。RUNのキャッシュキーはコマンド文字列で、COPYのキャッシュキーはファイル内容のハッシュだという違い、1つのレイヤーが壊れるとその下がすべて壊れるというルール、ARGがBuildKitと旧ビルダーで異なる動きをする箇所を扱います。CIランナーにはキャッシュが存在しないという事実とともに、キャッシュマウントがレジストリキャッシ
2026-07-26 · 16 分で読めます #docker#buildkit#build-cache#ci-cd#devopsGitの内部構造で理解する命令 — オブジェクト、リファレンス、インデックスで読み直すresetとrebase
Gitの命令を丸暗記すると毎回検索する羽目になりますが、データモデルを知っていれば命令の動作は推論できます。この記事ではblobとtreeとcommitとtagという4つのオブジェクト、同じ内容が常に同じハッシュを持つコンテンツアドレス指定、ブランチが41バイトのファイルにすぎないという事実、そしてインデックスが実際に何を収めているのかを、cat-fileとls-filesで直接開いて確かめます。このモデルを知っていれば、resetがな
2026-07-26 · 19 分で読めます #git#internals#git-objects#fundamentals#version-controlニュートンはなぜ世界を書き直したのか — リンゴ、プリンキピア、そして予測という試験台
リンゴはニュートンの頭に落ちませんでした。あの逸話の出典は1752年のウィリアム・ステュークリの回想録であり、八十三歳のニュートン自身が語って聞かせた話です。ペストでケンブリッジが閉じた1665年の「奇跡の年」は、実は20年にわたる作業を一年に圧縮した物語であり、「プリンキピア」(1687)はハレーが自費で出版費用を出した本でした。ライプニッツとの微積分の先取権戦争、ケインズが1936年の競売で買い集めた錬金術写本、巨人の肩という一文を
2026-07-26 · 27 分で読めます #humanities#science#history-of-science#newton#physicsコネクションプールを大きくすると損をする理由 — 待ち行列をどこに立てるか
コネクションプールを大きくしたらかえって遅くなる現象の原理を整理します。PostgreSQLのプロセスモデルでコネクションがなぜ高価なのか、ディスクとCPUの並列性が有限である以上、待ち行列をデータベースの中ではなくプールに立てるほうが良い理由、よく引用されるコア数ベースの公式の根拠と限界を扱います。マイクロサービスでインスタンス数とプールサイズの積が最大コネクション数を超える典型的な事故、PgBouncerの三つのモードとトランザクシ
2026-07-26 · 25 分で読めます #database#postgresql#connection-pool#pgbouncer#performanceDockerのネットワークモードと接続の問題 — bridge、host、overlay、そして127.0.0.1の罠
コンテナは起動しているのに接続できない状況を、モードごとの動作原理から解きほぐします。既定のbridgeでコンテナが互いを名前で見つけられない理由とユーザー定義ネットワークの内蔵DNS、ポート公開が実際に作るiptablesのDNATルール、バインドアドレスを127.0.0.1に制限することのセキュリティ上の意味を扱います。コンテナの中のループバックはホストではないという点とhost.docker.internal、アプリケーションがル
2026-07-26 · 20 分で読めます #docker#docker-network#iptables#networking#devopsコンテナとVMは何が違うのか — namespace、cgroup、そしてカーネル共有の請求書
「コンテナは軽量なVM」という説明がなぜ誤解を生むのかから整理します。コンテナは名前空間で視界が遮られ、cgroupで資源が制限された普通のLinuxプロセスにすぎず、ホストカーネルをそのまま共有します。pid/mnt/net/uts/ipc/user/cgroupの各名前空間が何を隔離するのか、cgroup v2が何を制限するのかを実際のコマンドで確認し、カーネル共有が生む結果であるsysctlの共有・カーネルバージョンへの依存・コン
2026-07-26 · 20 分で読めます #docker#container#linux-namespace#cgroup#virtualizationトランザクション分離レベルと実際の異常現象 — 標準の定義が実装と食い違う地点
トランザクション分離レベルの四つと、dirty read、non-repeatable read、phantom readを整理しますが、教科書の表一枚で終わらせません。PostgreSQLのRead Committedがなぜ最初からdirty readを作れないのか、Repeatable Readがなぜ実はスナップショット分離であり、直列化失敗をアプリケーションが再試行しなければならないのか、MySQL InnoDBのRepeatab
2026-07-26 · 22 分で読めます #database#postgresql#transaction#isolation-level#mysqlDockerfileで繰り返される失敗 — root実行、PID 1、イメージに残るシークレット
ビルドは通るのに運用でだけ壊れるDockerfileの問題を、原因から整理します。USERを指定せずrootで動くコンテナ、latestタグと再現性、ADDを避けるべき理由、shell formのCMDがSIGTERMを飲み込んでデプロイのたびに10秒を失い137で死ぬ仕組み、PID 1のゾンビ回収の責任とtini、ARGやENVで渡したトークンがdocker historyに残る問題とBuildKitのsecret mountを、実際
2026-07-26 · 19 分で読めます #docker#dockerfile#container-security#pid1#devopsデッドロックの診断と予防 — ログから二つのクエリを特定する方法
deadlock detectedエラーに出会ったとき何を見るべきかを順番に整理します。PostgreSQLのデッドロックレポートとMySQLのSHOW ENGINE INNODB STATUSの出力を一行ずつ解釈して、どの二つのクエリが絡んだのかを特定する方法、そして実務で繰り返される三つのパターンである更新順序の不一致、インデックス不在によるロック範囲の拡大、外部キーが引き起こす親行のロックを扱います。deadlocktimeout
2026-07-26 · 25 分で読めます #database#postgresql#deadlock#locking#mysqlインデックスを作ったのに使われない理由 — オプティマイザが正しく自分が間違っている場合
インデックスを作ったのに実行計画にSeq Scanがそのまま残る理由を、原因別に整理します。選択度が低くてオプティマイザがわざと無視する場合、カラムに関数や演算がかかってsargableでない場合、型の不一致で暗黙のキャストが起きる場合、LIKEの先頭ワイルドカード、OR条件、複合インデックスの先頭カラム規則、統計情報の老朽化、NULLの扱いまで、実際のSQLと実行計画で確認します。部分インデックスと式インデックスが答えになる地点、そし
2026-07-26 · 21 分で読めます #database#postgresql#index#query-optimization#mysqlEXPLAIN ANALYZEの読み方 — 実行計画から本当のボトルネックを見つける順序
EXPLAIN ANALYZEの出力を最初から最後まで読む方法を整理します。ノードをどの順序で読むべきか、costがなぜ時間の単位ではないのか、予想行数と実際の行数の乖離が何を教えてくれるのか、loopsが掛け算される罠をどう避けるかを、実際の出力とともに説明します。Nested Loop、Hash Join、Merge Joinがそれぞれ選ばれる条件と、BUFFERSでキャッシュヒットを判断する方法も扱います。Seq Scanが常に悪
2026-07-26 · 22 分で読めます #database#postgresql#explain#query-optimization#performanceロマンスは結末を知っていてもなぜ読まれるのか — ジャンル・ロマンスの文法
ロマンスは結末があらかじめ決まっている唯一の大衆ジャンルです。しかしそれは弱点ではなく、読者と結んだ契約です。HEAとHFNというジャンル規約、パメラ・レジスが整理した八つの要素とその核心にある障壁、エネミーズ・トゥ・ラバーズから契約恋愛まで五つのパターンが生む異なる緊張、デュアルPOVが標準になった理由、誤解でつくった葛藤が崩れ価値観の衝突が持ちこたえる理由までを整理しました。「高慢と偏見」が二百年ものあいだ構造の教科書であり続ける理
2026-07-26 · 23 分で読めます #storytelling#romance#fiction#narrative#cultureコンテナイメージ脆弱性スキャン結果の読み方 — Critical 数百件を 0 にする実際の方法
イメージスキャナーを初めて回すと脆弱性が数千件出てきて、そのうち相当数が Critical です。このレポートをそのままチームに投げても何も起きません。この記事はスキャナーが実際にしているのはインストール済みパッケージの一覧と CVE データベースを突き合わせることだけだという事実から出発し、ベンダーのバックポートパッチによって生じる誤検知、ディストリビューションのセキュリティ勧告を参照すべき理由、アプリケーションコードの脆弱性はそもそ
2026-07-26 · 20 分で読めます #security#container#docker#trivy#kubernetes深夜3時に起こさないアラート設計 — 症状ベースのアラートとバーンレート実践
オンコールが崩壊する理由は、アラートが足りないからではなく多すぎるからです。アラート疲れが実際の事故を見逃させるメカニズムから、症状にだけページを掛けて原因はダッシュボードに置くという原則、SLOとエラーバジェットからしきい値を逆算する方法までを扱います。短い窓と長い窓をANDで結ぶ多重ウィンドウのバーンレートアラートが、どうやって感度と誤検知を同時に押さえるのか、for句がフラッピングを防ぐ原理は何なのかを、Prometheusのルー
2026-07-26 · 21 分で読めます #observability#alerting#slo#error-budget#prometheusConnection refused と timeout の違い — TCP レベルで原因を絞り込む方法
接続できないときにターミナルが返すメッセージは大きく二種類あります。Connection refused は相手が RST を返したという意味で、timeout は送った SYN に何の応答もないという意味です。この一行の違いが、プロセスの問題なのか経路の問題なのかをほぼ決めてしまいます。tcpdump で SYN と RST を直接確認する方法、SYN 再送間隔からタイムアウトの長さをあらかじめ計算する方法、リスナーがあるのに tim
2026-07-26 · 19 分で読めます #network#tcp#troubleshooting#linux#kubernetesうまく終える方法 — 誰も教えてくれなかった技術
私たちは始め方なら数えきれないほど学びますが、終わり方は学んだことがありません。サンクコストの誤謬が私たちを引き止める構造、アンディ・グローブがインテルで投げかけた一文の質問、アニー・デュークのやめることをめぐる論とグリット研究とのあいだの緊張、そして最後の場面が記憶全体を染めるというピークエンドの法則までを見ていきます。うまく終わったプロジェクトと関係には共通点があります。明示的な終了宣言、引き継ぎ、そして感謝の表現です。
2026-07-26 · 25 分で読めます #mindset#endings#sunk-cost#decision-making#retrospective上手でなくていいことを、ひとつくらい — アマチュアとして生きる練習
趣味の話をすると、すぐに収益化の話がついてくる時代です。けれどもアマチュアという言葉のもともとの意味は、実力の足りない人ではなく、愛してやる人でした。ゾンネンタークとフリッツの回復経験研究、フローは実力そのものではなく難易度と実力の比率から生まれるというチクセントミハイの指摘、そしてリンヴィルの自己複雑性仮説を手がかりに、下手なままつづけることがなぜ回復とアイデンティティの問題なのかを見ていきます。そして、大人が新しく何かを学ぶときに実
2026-07-26 · 22 分で読めます #mindset#healing#hobby#recovery#identityLLMの構造化出力を安定させる — パース失敗をなくす四重の防御
JSONをくれと頼んだのにマークダウンのフェンスに包まれて来たり、後ろに説明文が付いたり、トークン上限で切れて来たりする問題を、階層ごとに解決する方法をまとめました。まず失敗の類型を分類し、プロンプトの指示から関数呼び出しスキーマ、制約デコーディングまで防御を重ねて積みますが、制約デコーディングが文法的な妥当性だけを保証し意味的な正確性は保証しないという区別を明確にします。フィールド名と順序が精度を変える理由、エラーメッセージを返してや
2026-07-26 · 21 分で読めます #llm#structured-output#json-schema#constrained-decoding#validation