Today I Learned
A collection of short posts about things I learned recently. Inspired by
the idea of "Learn in
Public".
-
posts
-
TIL: August 25, 2025 - Weekly Reading: Kubernetes swap, and beating Dijkstra's algorithm
Kubernetes Tuning Linux Swap for Kubernetes: A Deep Dive – Ajay Sundar Karuppasamy With the new NodeSwap feature becoming stable in Kubernetes 1.34, using Linux swap in Kubernetes clusters becomes more viable as a way to deal with memory management. Starting with Kubernetes 1.34, pods will be able to use swap memory without enabling unstable features. Swap limits and usage are configured automatically by Kubernetes and set by the container runtime via the cgroups v2 (cgroups v1 is not supported) memory.swap.max parameter. Pods need to have the Burstable memory QoS class (BestEffort and Guaranteed pods cannot use swap) and the... -
TIL: August 19, 2025 - Weekly Reading: AI and more AI
Artificial Intelligence Vibe code is legacy code – Steve Krouse This is an interesting take on vibe code. The idea is that vibe code that was written entirely by an LLM is the same as legacy code because neither are code that is well understood. Essentially, vibe code became legacy code the instant it’s written. I mostly agree with the idea, but I’d add that legacy code is a bit more nuanced in that it is code where maintaining it is not worth the cost. Even then I agree with his point because vibe code is basically not worth the... -
TIL: August 10, 2025 - Weekly Reading: AI, HTTP/1.1 request smuggling, and Life Advice
Artificial Intelligence Enough AI copilots! We need AI HUDs – Geoffrey Litt Geoffrey Litt writes that, rather than conversational AI agents that talk to you and grab your attention, we should create improved interfaces that enhance existing abilities. This resonates with the “bicycle for the mind” idea of computing. I like the idea of enhancing existing abilities because I think that natural language has its limitations and is a pretty high bandwidth interface. There are much better ways to interact that convey much more information more quickly than text in most situations. As an example of a “copilot” interface that... -
TIL: July 28, 2025 - Weekly Reading: Backpressure and Career Advice
Concurrency and Backpressure Playground Wisdom: Threads Beat Async/Await – Armin Ronacher Armin points out a lot of the ways that async/await are not an ideal way to write concurrent code. Some of the points he makes involve the lack of backpressure handling, halting issues, and an inability to block without tying up the entire control loop. I think the issues pointed out here are some of the reasons why I really like Go’s concurrency model. It has a lot of the same issues with halting and backpressure, but does it in an imperative way that is much easier to reason... -
TIL: July 23, 2025 - Weekly Reading: AI, Go, and Security
Artificial Intelligence AI Engineer World’s Fair: The New Code – Sean Grove, OpenAI I felt very weird watching this talk. It suggests a lot of things that are very unproductive like storing prompts in source control instead of code. Sean says that code is a lossy projection of the specification, but I’d suggest it’s actually the other way around. The specification necessarily omits details that are important, but not relevant at the specification level. If you did include that granularity, then prompts would be no different than code, and AI would be a terrible way to turn it into an... -
TIL: July 13, 2025 - Weekly Reading: MCP Server security, Bespoke Agents
MCP Server security Getting Authentication Right is Critical to Running MCP Servers – Juan Antonio Osorio, Stacklok After finding out about ToolHive last week, I took a closer look at it this week. Authentication, Authorization, and secrets management are probably the areas where ToolHive brings the most value. Without something like ToolHive, each MCP server has to implement it themselves, and your security is left at the mercy of each MCP server’s implementation. Secure-by-Default Authorization for MCP Servers powered by ToolHive – Juan Antonio Osorio, Stacklok ToolHive’s authorization system isn’t what I initially expected. I expected that ToolHive would help... -
TIL: July 6, 2025 - Weekly Reading: AI, Go's greentea GC, and OSS Security
Artificial Intelligence Who are your MCP servers talking to? - Stacklok Stacklok introduces their project toolhive which is a project that runs MCP servers in containers with strict network policies to prevent MCP servers from leaking sensitive information. While I think that MCP servers should probably be run with strict network policies to prevent them from exfiltrating data or interfering with each other, they aren’t generally LLMs themselves and are just regular API servers. So far many of the attacks rely on running untrusted MCP servers alongside trusted ones. Very little, nothing is going to save you from running untrusted... -
TIL: 日本語の改行をいい感じにするBudouX
最近、LaTeXで日本語のレジュメを作成している際、日本語の単語の途中やカンマの直前など、不自然な位置で改行されて読みにくいと感じていました。そんな時、budoux-latexというプロジェクトを見つけました。 budoux-latexは、人工知能を用いたBudouXを使ってLaTeXの改行を処理します。BudouXは、日本語、中国語、韓国語といったCJK言語に対応したMLモデルで、pip install budouxで非常に簡単にインストールできます。Pythonだけでなく、JavaやJavaScriptのAPIもあるようです。 CLIからもPythonコードからも簡単に利用できます。 import budoux parser = budoux.load_default_japanese_parser() print(parser.parse('今日は天気です。')) # ['今日は', '天気です。'] 後で知ったのですが、BudouXは飯塚先生がGoogleで作ったもので、もともとChromeのために開発されたらしく、ウェブページでは短いCSSだけで利用できます。... -
TIL: July 1, 2025 - Weekly Reading: AI 2027, Go 1.25, and Career Development
Artificial Intelligence AI 2027 - Daniel Kokotajlo, Scott Alexander, Thomas Larsen, Eli Lifland, Romeo Dean A speculative look at the future of AI in 2027, exploring how it might integrate into daily life, work, and society. This just seems so fantastical to me and makes little sense. I did listen to the Sam Harris podcast interview with Daniel Kokotajlo which made only slightly more sense. I think that I agree with how Daniel described the motivations of the AI companies, but I’m still skeptical that the current trajectory of AI will lead to the future that they describe. AI is... -
TIL: June 15, 2025 - Weekly Reading: AI, Programming with agents, and Personal Development
Artificial Intelligence AI Changes Everything - Armin Ronacher Armin seems very AI-positive. He now uses Claude Code and finds it significantly increases productivity by alternating between giving instructions and reviewing work. His optimistic outlook sees AI enhancing human capabilities rather than replacing people, potentially democratizing knowledge and accelerating innovation. While I can agree that AI is likely an irreversible change, I don’t share his view that it won’t replace people or that the job of programmer or designer won’t go away. I think that largely using AI to write code will change the job of a programmer completely, and the...