<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>bythewei.dev / blackboard</title>
    <link>https://www.bythewei.dev/blackboard/</link>
    <description>Research posts, technical notes, and weekly recaps by Weixiang Zhang.</description>
    <language>en-us</language>
    <atom:link href="https://www.bythewei.dev/chalk/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title><![CDATA[The Skill Forge — Technical Books Converted to Claude Code Skills]]></title>
      <link>https://www.bythewei.dev/chalk/skill-forge-index/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/skill-forge-index/</guid>
      <description><![CDATA[Index of 46 technical books processed by the Skill Forge pipeline into Claude Code skills. Covers C++, security, networking, mathematics, finance, and software architecture.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>skill-forge</category>
      <pubDate>Wed, 13 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Parallel Agent Audits and Generation Guards for Async JS]]></title>
      <link>https://www.bythewei.dev/chalk/parallel-agent-audit-generation-guards/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/parallel-agent-audit-generation-guards/</guid>
      <description><![CDATA[How to run 10 audit agents in parallel without merge conflicts, and why every async callback in your JS needs a generation counter to avoid stale state.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Agent Architecture + Async Safety</category>
      <pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Safari Autoplay Policy and FFmpeg Container Mismatch]]></title>
      <link>https://www.bythewei.dev/chalk/safari-autoplay-ffmpeg-container-mismatch/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/safari-autoplay-ffmpeg-container-mismatch/</guid>
      <description><![CDATA[Two audio pipeline gotchas: Safari kills async audio.play() calls, and FFmpeg -c copy into the wrong container silently crashes. Both cost 30+ minutes to diagnose.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Browser Audio + FFmpeg</category>
      <pubDate>Thu, 07 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[asyncpg Dual Pools for Cross-DB Vector Search]]></title>
      <link>https://www.bythewei.dev/chalk/asyncpg-dual-pool-cross-db-vectors/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/asyncpg-dual-pool-cross-db-vectors/</guid>
      <description><![CDATA[Running vector similarity queries across two PostgreSQL databases from one FastAPI app using asyncpg connection pools, with gotchas around pgvector string serialization.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>asyncpg + pgvector</category>
      <pubDate>Wed, 06 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[5-Second Audiobook Passage Transcription: Plex + ffmpeg + mlx_whisper on Apple Silicon]]></title>
      <link>https://www.bythewei.dev/chalk/plex-ffmpeg-whisper-audiobook-transcription/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/plex-ffmpeg-whisper-audiobook-transcription/</guid>
      <description><![CDATA[A voice-triggered pipeline that extracts and transcribes whatever audiobook passage is currently playing. Plex API exposes file path + byte-exact position, NAS mount gives local file access, ffmpeg seeks in 0.15s, mlx_whisper transcribes 2 minutes of audio in 4s. Total latency: under 5 seconds on M2 Pro.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Audio Engineering</category>
      <pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Building a tmux Toolkit by Auditing Your Own Git History]]></title>
      <link>https://www.bythewei.dev/chalk/tmux-toolkit-night-owl-audit/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/tmux-toolkit-night-owl-audit/</guid>
      <description><![CDATA[We analyzed commit timestamps across 15+ projects to discover work patterns, then built a tmux config that actually matches how we code.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>developer tooling</category>
      <pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Globe.gl Will Eat Your DOM Children]]></title>
      <link>https://www.bythewei.dev/chalk/globe-gl-dom-destruction-and-zoom-scaling/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/globe-gl-dom-destruction-and-zoom-scaling/</guid>
      <description><![CDATA[Globe.gl destroys container children on mount. Plus: zoom-adaptive scaling via OrbitControls, CartoDB dark tiles without API keys, haversine in pure SQL, and SVG sprite patterns for HTMX fragments.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Globe.gl / Three.js</category>
      <pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[What If You Treated Your Personal Data Like Credit Card Numbers?]]></title>
      <link>https://www.bythewei.dev/chalk/enterprise-data-engineering-for-personal-telemetry/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/enterprise-data-engineering-for-personal-telemetry/</guid>
      <description><![CDATA[PCI-level rigor applied to personal telemetry. Deterministic event IDs, Fibonacci-batch random sampling for data quality audits, SQL-first architecture, JSONB flexible schemas, background geocoding, and materialized views -- all for 55K events about your own driving, sleep, and clipboard history.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Data Engineering</category>
      <pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Treating Your Personal Data Like It's PCI-Scoped]]></title>
      <link>https://www.bythewei.dev/chalk/pci-methodology-for-personal-data/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/pci-methodology-for-personal-data/</guid>
      <description><![CDATA[What happens when you apply financial compliance rigor — Fibonacci sampling, API audit logging, SQL-first architecture — to a personal telemetry pipeline.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>data engineering</category>
      <pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Should You Use Cherri for Programmatic iOS Shortcuts?]]></title>
      <link>https://www.bythewei.dev/chalk/cherri-viability-when-to-adopt/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/cherri-viability-when-to-adopt/</guid>
      <description><![CDATA[Cherri compiles text files into signed iOS Shortcuts. The question isn't whether it works -- it's when the investment pays off. Here's the decision framework.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>iOS Shortcuts</category>
      <pubDate>Sat, 25 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Cherri: Building iOS Shortcuts with a Compiler]]></title>
      <link>https://www.bythewei.dev/chalk/cherri-ios-shortcuts-compiler/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/cherri-ios-shortcuts-compiler/</guid>
      <description><![CDATA[The Cherri compiler turns plain text into signed iOS Shortcuts. Here's what we learned building 8 of them, including a crash bug Apple should fix.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>iOS Shortcuts</category>
      <pubDate>Sat, 25 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Rendering Physical Hardware in CSS: The Braun/Dieter Rams Approach]]></title>
      <link>https://www.bythewei.dev/chalk/css-braun-hardware-rendering/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/css-braun-hardware-rendering/</guid>
      <description><![CDATA[How to make a browser div feel like a Braun T1000 World Receiver. Layered shadows for molded plastic, radial-gradient speaker grilles, CSS seam lines, and why Dieter Rams' 10 principles are better web design rules than most web design rules.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>CSS / Industrial Design</category>
      <pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Your Synology NAS Thinks It Started Your Containers. It Didn't.]]></title>
      <link>https://www.bythewei.dev/chalk/synology-docker-survival-guide/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/synology-docker-survival-guide/</guid>
      <description><![CDATA[Synology's Docker auto-start API silently fails under memory pressure. The fix is one line in your compose file. Also: NZB obfuscation, container exit codes, and how 23 containers on 4 GB of RAM creates a swap death spiral.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Synology Docker</category>
      <pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Phosphor Icons in Astro: Kill Every Emoji on Your Site in One Session]]></title>
      <link>https://www.bythewei.dev/chalk/phosphor-icon-migration-astro/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/phosphor-icon-migration-astro/</guid>
      <description><![CDATA[Replaced every emoji across 31 files with Phosphor duotone SVG components. The trick: components for nav/headers, Unicode dingbats for inline text strings.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>phosphor-astro migration</category>
      <pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[We Wrote an Accessibility Article Then Failed Our Own Audit]]></title>
      <link>https://www.bythewei.dev/chalk/wcag-audit-bythewei-dev/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/wcag-audit-bythewei-dev/</guid>
      <description><![CDATA[Ran a full WCAG 2.2 AA audit across every page of bythewei.dev. Found 40+ failures: contrast ratios as low as 1.3:1, missing skip links, no focus indicators, clickable divs unreachable by keyboard. Fixed all of them.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>WCAG 2.2 AA</category>
      <pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[New Skill Forged: Business Analysis (BABOK v3)]]></title>
      <link>https://www.bythewei.dev/chalk/skill-forge-business-analysis/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/skill-forge-business-analysis/</guid>
      <description><![CDATA[IIBA's BABOK v3 distilled — six knowledge areas, 50 techniques, and the full BA toolkit for stakeholder management, requirements elicitation, and solution evaluation.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Skill Forge</category>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[New Skill Forged: DAX Mastery]]></title>
      <link>https://www.bythewei.dev/chalk/skill-forge-dax-definitive-guide/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/skill-forge-dax-definitive-guide/</guid>
      <description><![CDATA[Ferrari & Russo's Definitive Guide distilled — evaluation contexts, CALCULATE mechanics, iterators, time intelligence, and the performance debugging mindset for expert DAX.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Skill Forge</category>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[New Skill Forged: Domain-Driven Design]]></title>
      <link>https://www.bythewei.dev/chalk/skill-forge-domain-driven-design/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/skill-forge-domain-driven-design/</guid>
      <description><![CDATA[Evans' DDD distilled — Claude now knows Aggregates from Value Objects, Bounded Contexts from bounded thinking, and can flag Anemic Domain Models on sight.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Skill Forge</category>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[New Skill Forged: Investment Analysis]]></title>
      <link>https://www.bythewei.dev/chalk/skill-forge-investment-analysis/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/skill-forge-investment-analysis/</guid>
      <description><![CDATA[Bodie/Kane/Marcus distilled — Claude can now price options, build efficient frontiers, apply CAPM, and evaluate portfolio performance with actual math.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Skill Forge</category>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Voxtral Dropped — Speech AI Just Got Complicated]]></title>
      <link>https://www.bythewei.dev/chalk/voxtral-tts-mar-2026/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/voxtral-tts-mar-2026/</guid>
      <description><![CDATA[Mistral's multimodal audio model is here. the speech AI space just got a lot more interesting.]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Voxtral TTS release and speech AI landscape</category>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title><![CDATA[Week of Mar 24 — AI & LLM Signals]]></title>
      <link>https://www.bythewei.dev/chalk/week-of-mar-24-2026/</link>
      <guid isPermaLink="true">https://www.bythewei.dev/chalk/week-of-mar-24-2026/</guid>
      <description><![CDATA[MCP goes mainstream, agents everywhere, open-source closing the gap]]></description>
      <author>noreply@bythewei.dev (Weixiang Zhang)</author>
      <category>Weekly AI digest</category>
      <pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>