<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>ngockhoi96.dev — Stream</title><description>Quick updates: short notes, TILs, and good links.</description><link>https://ngockhoi96.dev</link><language>en-US</language><item><title>RTK: the hook that quietly trims your agent&apos;s token bill</title><link>https://github.com/rtk-ai/rtk</link><guid isPermaLink="true">https://github.com/rtk-ai/rtk</guid><description>&lt;!-- LEDE (always shown, 2–3 sentences): what RTK is + the transparent-hook trick (a PreToolUse hook silently rewrites every shell command, 0 overhead) + the one number (34% measured / git diff 49%). -- RTK (Rust Token Killer) is a CLI proxy that compresses the output of your de…</description><pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate><category>ai</category><category>claude</category><category>workflow</category></item><item><title>Colony (2026): Train to Busan&apos;s director gives zombies a hive mind</title><link>https://ngockhoi96.dev/stream/#colony</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#colony</guid><description>&lt;!-- LEDE (always shown, 2–3 sentences): Yeon Sang-ho (Train to Busan, 2016) is back with Colony (군체, 2026). The one-line hook: these zombies aren&apos;t a dumb mob — they share one mind over a mycelium network and learn from every failed attack. Saw it this afternoon; quick verdict…</description><pubDate>Sat, 27 Jun 2026 00:00:00 GMT</pubDate><category>film</category><category>review</category><category>life</category></item><item><title>Astro 7 is here — a Rust compiler, Sätteri, Vite 8, and the one default I&apos;m opting out of</title><link>https://astro.build/blog/astro-7/</link><guid isPermaLink="true">https://astro.build/blog/astro-7/</guid><description>Astro 7 shipped, and it&apos;s an all-out Rust speed pass — 15–61% faster builds. The headline bits, quickly, then where I land for this site. &lt;!--more-- What&apos;s new (short version — full details in the post): - Rust .astro compiler (built on oxc + Lightning CSS, drops the old Go one)…</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate><category>astro</category><category>web-dev</category><category>build-tools</category></item><item><title>CSS: Unavoidable Bad Parts — a list of gotchas that&apos;s secretly a love letter to the platform</title><link>https://matklad.github.io/2026/06/04/css-unavoidable-bad-parts.html</link><guid isPermaLink="true">https://matklad.github.io/2026/06/04/css-unavoidable-bad-parts.html</guid><description>matklad catalogues CSS&apos;s traps — too many wrapper divs, inconsistent browser defaults, box-sizing, line-height &quot;voodoo&quot;, words that won&apos;t break on mobile. A cu em dropped it in Discord and the title hooked me. But read past the grumbling and it&apos;s the opposite of a CSS hit-piece:…</description><pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate><category>css</category><category>web-platform</category><category>semantic-html</category></item><item><title>Badge vs tag vs chip vs pill: every library disagrees — here&apos;s the model I shipped</title><link>https://ngockhoi96.dev/stream/#badge-tag-chip-pill</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#badge-tag-chip-pill</guid><description>A quick reference I keep needing: badge vs tag vs chip vs pill. Every UI library defines them differently — which is exactly why people argue about it. So here&apos;s the fast version, then the model I actually shipped on this site. &lt;!--more-- How the big libraries use the words - Ba…</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate><category>til</category><category>design-system</category><category>ui</category><category>css</category></item><item><title>Claude Code status line: session vitals at a glance</title><link>https://arealisticdreamer.com/claude-code-status-line</link><guid isPermaLink="true">https://arealisticdreamer.com/claude-code-status-line</guid><description>A thin strip at the bottom of the Claude Code frame, driven by a shell script you own. Replaces the habit of manually checking which model you&apos;re on, how much context is left, or whether you&apos;re close to a rate limit — all things that &quot;carry heavy decision weight&quot; mid-session wit…</description><pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate><category>claude</category><category>workflow</category><category>tools</category></item><item><title>Handoff skill: carry your session context anywhere</title><link>https://github.com/mattpocock/skills/blob/main/skills/productivity/handoff/SKILL.md</link><guid isPermaLink="true">https://github.com/mattpocock/skills/blob/main/skills/productivity/handoff/SKILL.md</guid><description>Matt Pocock&apos;s skill: at the end of a heavy session — a /grill-with-docs planning pass, a brainstorm, a full task breakdown — ask Claude to /handoff. It compacts the whole conversation into a structured markdown doc a fresh agent can pick up cold. &lt;!--more-- The workflow: Opus 4.…</description><pubDate>Sun, 21 Jun 2026 00:00:00 GMT</pubDate><category>ai</category><category>claude</category><category>workflow</category></item><item><title>Nana (aka Trio): the Japanese memory game named after the number 7</title><link>https://ngockhoi96.dev/stream/#nana-card-game</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#nana-card-game</guid><description>I went hunting for a board/card game to train memory, quick thinking, and pattern-spotting — something to play with friends, family, and my partner — and landed on Nana, 2nd edition (2–5 players). The cute, friendly art reeled me in; a skim of the rules (&quot;flip cards, match three…</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate><category>life</category><category>board-game</category><category>memory</category></item><item><title>TIF: Today I Failed — and learned git bisect</title><link>https://ngockhoi96.dev/stream/#git-bisect</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#git-bisect</guid><description>End-of-day check on develop: the site had lost nearly all its styles — CSS variables referenced across every component, defined nowhere. Staging was fine (QA still in progress, so: relief). TIF — Today I Failed to fix it before 9 pm. But also TIL: git bisect. &lt;!--more-- The envi…</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><category>tif</category><category>git</category><category>debugging</category></item><item><title>Fitts&apos;s Law: bigger target isn&apos;t always better</title><link>https://ngockhoi96.dev/stream/#fitts-law</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#fitts-law</guid><description>Came up while designing this blog&apos;s post-card vs term-card split: Fitts&apos;s Law — movement time to a target scales with the log of its distance-over-width ratio: MT = a + b · log₂(2D/W). The wider the target, the faster you hit it. &lt;!--more-- D is distance to the target centre, W…</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate><category>til</category><category>ux</category><category>psychology</category></item><item><title>F8 — where I stumbled into coding 3 years ago</title><link>https://f8.edu.vn/</link><guid isPermaLink="true">https://f8.edu.vn/</guid><description>F8 (&quot;Learn to code, get a job&quot;, by Sơn Đặng) — completely free web courses: HTML, CSS, JavaScript, all the way to ReactJS. Over three years ago, someone with no CS degree like me stepped into the field right here. Genuinely grateful — leaving it here for anyone standing at the s…</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate><category>learning</category><category>web</category><category>vietnam</category></item><item><title>Hick&apos;s Law: more options isn&apos;t always slower</title><link>https://ngockhoi96.dev/stream/#hicks-law</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#hicks-law</guid><description>Digging into the principle behind the Slack note: Hick&apos;s Law (Hick–Hyman) — decision time grows with the log of the number of choices: RT = a + b·log₂(n + 1). It&apos;s why a 60-row dropdown makes you stall while 4 slots get picked instantly — it trims cognitive load. &lt;!--more-- a is…</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate><category>til</category><category>ux</category><category>psychology</category></item><item><title>grill-with-docs: interrogate the plan, then grow ADRs &amp; CONTEXT</title><link>https://github.com/mattpocock/skills/blob/main/skills/engineering/grill-with-docs/SKILL.md</link><guid isPermaLink="true">https://github.com/mattpocock/skills/blob/main/skills/engineering/grill-with-docs/SKILL.md</guid><description>Matt Pocock&apos;s skill: it interviews you one question at a time to pressure-test a plan against the existing domain model, sharpens terminology, and updates CONTEXT.md (the glossary) + ADRs the moment a decision lands. &lt;!--more-- The stream, the lexicon, the Collapsible primitive……</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate><category>claude</category><category>architecture</category><category>workflow</category></item><item><title>Karpathy skills: guardrails against the classic LLM coding mistakes</title><link>https://github.com/multica-ai/andrej-karpathy-skills</link><guid isPermaLink="true">https://github.com/multica-ai/andrej-karpathy-skills</guid><description>Guidelines for Claude Code, distilled from Andrej Karpathy&apos;s observations: LLMs tend to guess assumptions and over-engineer. Four principles: think before coding, simplicity first, surgical changes, goal-driven. &lt;!--more-- Simplicity First keeps me from over-engineering — build…</description><pubDate>Thu, 11 Jun 2026 00:00:00 GMT</pubDate><category>ai</category><category>claude</category><category>workflow</category></item><item><title>Why won&apos;t Slack let you schedule a message for 9:07?</title><link>https://ngockhoi96.dev/stream/#slack-15-minute-schedule</link><guid isPermaLink="true">https://ngockhoi96.dev/stream/#slack-15-minute-schedule</guid><description>Scheduling a Slack message the other day, I noticed the time picker only offers 15-minute slots — 9:00, 9:15, 9:30, no 9:07. Curious, I dug into the API and found the fun part: chat.scheduleMessage takes postat as a Unix timestamp — precise to the second. The backend can happily…</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate><category>til</category><category>ux</category><category>system-design</category><category>slack</category></item><item><title>VoidZero joins Cloudflare — and a $1M fund for the Vite ecosystem</title><link>https://vite.dev/blog/cloudflare-supports-vite</link><guid isPermaLink="true">https://vite.dev/blog/cloudflare-supports-vite</guid><description>VoidZero (the company behind Vite) is joining Cloudflare, with a $1M fund for the Vite ecosystem. Vite stays MIT, vendor-agnostic, team-governed. Next up: Full Bundle Mode + stabilizing the Environment API in Vite 9. This touches the blog on both layers: Astro is built on Vite (…</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate><category>vite</category><category>cloudflare</category><category>open-source</category></item></channel></rss>