<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Today I Learned</title><description>A daily log &amp; collection of things I&apos;ve learned.</description><link>https://til.desertthunder.dev/</link><language>en-us</language><item><title>JavaScript Proxy Objects</title><link>https://til.desertthunder.dev/notes/2026/08/28/js-proxy/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/28/js-proxy/</guid><description>Intercepting the internal operations behind JavaScript object syntax</description><pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate></item><item><title>OpenTUI&apos;s Zig Core</title><link>https://til.desertthunder.dev/notes/2026/08/28/opentui/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/28/opentui/</guid><description>How OpenTUI turns a TypeScript render tree into minimal terminal output</description><pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate></item><item><title>FieldStation42</title><link>https://til.desertthunder.dev/notes/2026/08/24/fs42/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/24/fs42/</guid><description>Turn a video collection into a simulated broadcast or cable TV system</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>ASD-STE100 Simplified Technical English</title><link>https://til.desertthunder.dev/notes/2026/08/23/asd-ste100/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/23/asd-ste100/</guid><description>A controlled language for writing unambiguous technical instructions</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Orwell&apos;s Six Rules for Writing</title><link>https://til.desertthunder.dev/notes/2026/08/23/orwell-rules/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/23/orwell-rules/</guid><description>Clear prose as a defense against vague and dishonest thought</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>systemd</title><link>https://til.desertthunder.dev/notes/2026/08/23/systemd/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/23/systemd/</guid><description>Units, dependencies, activation, process supervision, and everyday service management</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>User Space and Kernel Space</title><link>https://til.desertthunder.dev/notes/2026/08/23/user-space/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/23/user-space/</guid><description>Privilege modes, address spaces, system calls, and the boundary around the Linux kernel</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Layered Graph Drawing with the Sugiyama Framework</title><link>https://til.desertthunder.dev/notes/2026/08/22/layer-graph-drawing/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/22/layer-graph-drawing/</guid><description>Turning directed graphs into readable hierarchical diagrams</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Property-Based Testing</title><link>https://til.desertthunder.dev/notes/2026/08/21/prop-test/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/21/prop-test/</guid><description>Generating and shrinking inputs that challenge general claims about code</description><pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Snap Priority in Vector Editors</title><link>https://til.desertthunder.dev/notes/2026/08/21/snap-algo/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/21/snap-algo/</guid><description>Finding and ranking snap candidates during interactive transforms</description><pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Git Attributes</title><link>https://til.desertthunder.dev/notes/2026/08/20/gitattributes/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/20/gitattributes/</guid><description>Setting per-path behavior for line endings, diffs, merges, and archives</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>GitHub Linguist</title><link>https://til.desertthunder.dev/notes/2026/08/20/linguist/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/20/linguist/</guid><description>How GitHub detects repository languages and accepts overrides</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Graphs in Rust with petgraph</title><link>https://til.desertthunder.dev/notes/2026/08/19/petgraph/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/19/petgraph/</guid><description>Choosing graph storage and algorithms in Rust</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate></item><item><title>The Agent Client Protocol</title><link>https://til.desertthunder.dev/notes/2026/08/18/acp/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/18/acp/</guid><description>A JSON-RPC interface between code editors and coding agents</description><pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Trigram Indexes</title><link>https://til.desertthunder.dev/notes/2026/08/18/trigram/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/18/trigram/</guid><description>Using overlapping three-character sequences for substring and fuzzy text search</description><pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate></item><item><title>HTTP Entity Tags</title><link>https://til.desertthunder.dev/notes/2026/08/16/etag/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/16/etag/</guid><description>Cache validation and conditional updates with ETag, If-None-Match, and If-Match</description><pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Shame and Avoidance</title><link>https://til.desertthunder.dev/notes/2026/08/15/shame-avoidance/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/15/shame-avoidance/</guid><description>How hiding from exposure can preserve the shame it briefly relieves</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>The WireGuard Protocol</title><link>https://til.desertthunder.dev/notes/2026/08/15/wireguard/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/15/wireguard/</guid><description>Peers, cryptokey routing, handshakes, key rotation, and protocol boundaries</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Cognitive Architectures for Language Agents</title><link>https://til.desertthunder.dev/notes/2026/08/12/coala/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/12/coala/</guid><description>A framework for reasoning about an agent&apos;s memory, actions, and decision loop</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate></item><item><title>The Phoenix Architecture</title><link>https://til.desertthunder.dev/notes/2026/08/12/phoenix-arch/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/12/phoenix-arch/</guid><description>Regenerating disposable implementations from durable intent and evaluations</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Cancellation Signals</title><link>https://til.desertthunder.dev/notes/2026/08/11/cancellation-signal/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/11/cancellation-signal/</guid><description>Cooperative cancellation for asynchronous and long-running work</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Cognitive Surrender and Tri-System Theory</title><link>https://til.desertthunder.dev/notes/2026/08/11/cognitive-surrender/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/11/cognitive-surrender/</guid><description>How AI can support, displace, or bypass human deliberation</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Inspecting Processes with ps</title><link>https://til.desertthunder.dev/notes/2026/08/11/ps/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/11/ps/</guid><description>Process selection, custom output, state codes, and portability across Unix systems</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate></item><item><title>MCP and Agent Skills</title><link>https://til.desertthunder.dev/notes/2026/08/10/mcp-skills/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/10/mcp-skills/</guid><description>Connecting agents to capabilities and teaching them how to use those capabilities</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Kierkegaard’s “Subjectivity Is Truth”</title><link>https://til.desertthunder.dev/notes/2026/08/07/kierkegaard-subjectivity/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/07/kierkegaard-subjectivity/</guid><description>Inwardness as a way of existing, choosing, and remaining committed</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Kierkegaard’s “Truth Which Is True for Me”</title><link>https://til.desertthunder.dev/notes/2026/08/07/kierkegaard-truth/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/07/kierkegaard-truth/</guid><description>How understanding becomes a commitment that gives a life direction</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Embeddings</title><link>https://til.desertthunder.dev/notes/2026/08/06/embeddings/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/06/embeddings/</guid><description>Learned vector representations of meaning and similarity</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Retrieval-Augmented Generation</title><link>https://til.desertthunder.dev/notes/2026/08/06/rag/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/06/rag/</guid><description>Grounding language-model answers in retrieved source material</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Vectors</title><link>https://til.desertthunder.dev/notes/2026/08/06/vectors/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/06/vectors/</guid><description>How vectors represent data and make similarity search possible</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Indian Residential Schools Settlement Agreement</title><link>https://til.desertthunder.dev/notes/2026/08/05/irssa-ca/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/05/irssa-ca/</guid><description>The settlement that created compensation processes and the TRC</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Truth and Reconciliation Commission of Canada</title><link>https://til.desertthunder.dev/notes/2026/08/05/ntrc-ca/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/05/ntrc-ca/</guid><description>Documenting the history and legacy of residential schools</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Thurman Munson</title><link>https://til.desertthunder.dev/notes/2026/08/02/thurman-munson/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/02/thurman-munson/</guid><description>The career, life, and legacy of the Yankees captain</description><pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Bobbin</title><link>https://til.desertthunder.dev/notes/2026/08/01/bobbin/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/08/01/bobbin/</guid><description>Tangled&apos;s diskless, API-only AppView</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Raft</title><link>https://til.desertthunder.dev/notes/2026/07/22/raft/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/22/raft/</guid><description>An understandable consensus algorithm for replicated state machines</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate></item><item><title>remotion</title><link>https://til.desertthunder.dev/notes/2026/07/19/remotion/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/19/remotion/</guid><description>code to video with React</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate></item><item><title>RRB Vector</title><link>https://til.desertthunder.dev/notes/2026/07/18/rrb-vector/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/18/rrb-vector/</guid><description>Relaxed Radix Balanced Vector</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>standard.site</title><link>https://til.desertthunder.dev/notes/2026/07/18/standard-site/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/18/standard-site/</guid><description>open-social publishing</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate></item><item><title>CRDT</title><link>https://til.desertthunder.dev/notes/2026/07/17/crdt/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/17/crdt/</guid><description>A conflict-free replicated data type (CRDT) is a data structure that can be replicated across multiple computers in a network.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate></item><item><title>PTY</title><link>https://til.desertthunder.dev/notes/2026/07/16/pty/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/16/pty/</guid><description>A pty is a pseudoterminal, a software interface in Unix-like operating systems that emulates a physical hardware terminal. They&apos;re to gain access to the shell.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate></item><item><title>PageRank</title><link>https://til.desertthunder.dev/notes/2026/07/15/pagerank/</link><guid isPermaLink="true">https://til.desertthunder.dev/notes/2026/07/15/pagerank/</guid><description>PageRank is the first algorithm used by Google Search to rank the importance of web pages, named after web pages &amp; Google Co-Founder Larry Page.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate></item></channel></rss>