<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://curious.billyjf.com/feed.xml" rel="self" type="application/atom+xml" /><link href="https://curious.billyjf.com/" rel="alternate" type="text/html" /><updated>2026-07-11T01:57:12+00:00</updated><id>https://curious.billyjf.com/feed.xml</id><title type="html">curious.billyjf</title><subtitle>Daily short-form video with reference write-ups, exercises, and a premium long-form course — Ship AI Products.</subtitle><entry><title type="html">Foundations here.</title><link href="https://curious.billyjf.com/posts/foundations/" rel="alternate" type="text/html" title="Foundations here." /><published>2026-07-10T00:00:00+00:00</published><updated>2026-07-10T00:00:00+00:00</updated><id>https://curious.billyjf.com/posts/foundations</id><author><name></name></author><summary type="html"><![CDATA[Every foundation has a start.]]></summary></entry><entry><title type="html">I cut our LLM streaming latency by 74%. Here’s the exact setup.</title><link href="https://curious.billyjf.com/posts/edge-streaming/" rel="alternate" type="text/html" title="I cut our LLM streaming latency by 74%. Here’s the exact setup." /><published>2026-07-06T00:00:00+00:00</published><updated>2026-07-06T00:00:00+00:00</updated><id>https://curious.billyjf.com/posts/edge-streaming</id><author><name></name></author><summary type="html"><![CDATA[Every AI product demo dies the same death: the user hits send and stares at a spinner for four seconds. We shipped a fix in one afternoon — time-to-first-byte went from 3.8s to 0.9s, and completion-abandon rate dropped by a third. The trick isn't a faster model. It's moving the stream boundary to the edge and flushing tokens the moment they exist. Below is the full setup — server, client, and the two failure modes that will bite you.]]></summary></entry></feed>