Luke Oliff.

Developer Experience.

52 posts

Developer Relations in the Era of AIOriginalHow developer relations and AI are reshaping documentation, community management, and the metrics that prove DevRel's impact.Developer Relations
Scripting LLMs From the Terminal With the llm CLIOriginalSimon Willison's llm CLI turns the terminal into a scriptable LLM pipe. Version 0.34 adds duration logging and 0.35 adds GPT-6, all logged to SQLite.AI
How I Cut My Coding-Agent Token Bill by 90%OriginalCoding-agent tokens add up fast when the harness ships 33k of overhead before your prompt. Here's the context hygiene that cut my bill without hurting output.Developer Experience
Biome Replaced ESLint and Prettier in My SetupOriginalBiome 2.5 replaced ESLint and Prettier in my setup with one biome.json. A real config, the migration commands, and the honest gaps I still hit.JavaScript
The Case for a Keyboard-Driven WorkflowOriginalThe CLI tools and shortcuts behind a keyboard-driven workflow that cut my mouse use to almost nothing, and the two places the mouse still wins outright.Opinion
TIL: Finding Files Fast With fdOriginalfd is a gitignore-aware, colourful replacement for find. One command locates files by name, type, or extension, and it runs fast out of the box.TIL
Friday fun: the AI agent that deleted the database in 9sOriginalA Cursor agent hit a credential error, grabbed an unrelated token, and deleted a production database and all backups in 9 seconds. Then it confessed.AI
Please Stop Pasting AI Code Into My Pull RequestsOriginalTeam etiquette for AI-assisted work: what to paste, what to synthesize, and why pasting AI code into a pull request unread makes your review my problem.Opinion
When AI agents started reading your docsOriginalDocs-as-code served one reader for a decade: developers. Then AI agents started reading first. How llms.txt and MCP rewrote the rulebook, and what survived.Developer Experience
The Attribution Paradox: Measure Before You ScaleOriginalThe attribution paradox: platform teams that spend all capacity executing and none measuring get wound down as experiments. Instrumentation is a launch requirement.Developer Experience
fzf 0.74 Made My Fuzzy Finder Fast AgainOriginalfzf 0.74.3 made the fuzzy finder fast again with big non-ASCII speedups, and 0.74.4 fixed an escape-sequence bug plus tmux, fish and nushell integration.TIL
I Thought I Knew APIs. Then I Met Audio.OriginalREST APIs felt easy, even with HATEOAS. Streaming audio broke that. The destination is HTTP/2 bidirectional streaming: feedback while you still get audio.Career
Pipecat vs LiveKit Agents: The Trade-offs That Lock You InOriginalPipecat and LiveKit Agents both run production voice agents, but they own different layers of the stack. Pick the wrong one and you pay for it in a rewrite.Voice AI
Building a writing routine that actually sticksOriginalA daily writing habit that finally works: one post a day, a weekly format rota, and a hard time box that forces the draft to exist.Developer Experience
Finding the rhythm: first impressions of a new role in a new corner of AIOriginalFinding the rhythm two weeks into a new DevRel role: what surprised me about text-to-speech, what I was right about, and what I am still figuring out.Developer Experience
Lessons from my first two weeks in a new corner of AIOriginalTwo weeks in voice AI on the text-to-speech side: a new community, a new set of constraints, and a definition of quality nobody quite agrees on.Developer Experience
Onboarding at a new company: what I wish I had knownOriginalOnboarding at a new company after years at the same one: imposter feelings that hit harder, domain knowledge that transfers slowly, and remote loneliness.Developer Experience
Working in public vs working in privateOriginalDeveloper relations means producing content in public while the product is being built in private. That tension is harder to manage than I expected.Developer Experience
Notes from my first week at SpeechifyOriginalFirst week as Speechify's Head of DevRel: a TTS cookbook, two developer guides, and watching AI shift to government-gated releases.Developer Experience
TTS Latency: How Time to First Audio Actually WorksOriginalA deep dive into Time to First Audio, the metric that defines voice agent responsiveness, and what happens in the latency pipeline from text to speech.Voice AI
When speech-to-text hears something else entirelyOriginalThe funniest speech-to-text transcriptions from real API traffic: a meowing cat asking for help, a quiche that became keys, and why models guess.Developer Experience
Streaming TTS: Rethinking the Voice Audio PipelineOriginalStreaming TTS changes what voice applications expect from audio APIs. Time-to-first-byte drops, complexity moves into buffer management and chunk boundaries, andVoice AI
When Your Drive-Thru AI Can't Understand an AccentOriginalMcDonald's killed its AI drive-thru in 2024 because it could not understand an accent. Two years on, the industry is still working out why.Voice AI
Inside the Voice Agent Pipeline: STT, LLM, and Streaming TTSOriginalHow STT transcribes audio, an LLM generates responses, and streaming TTS speaks them back. A technical breakdown of the real-time pipeline behind voice agents inVoice AI
Sunday roundup: afterthoughts on productivity and paceOriginalA short Sunday roundup on writing about ADHD and productivity, what Deepgram shipped this week, and what is coming next.Developer Experience
Six tools that power production voice agentsOriginalBuilding a production voice agent takes more than an API key. Here are six tools I reached for daily at Deepgram, from streaming STT to async Python.Developer Experience
Testing Voice AI Means Talking to Yourself in PublicOriginalBuilding voice AI means reading test sentences aloud in coffee shops, on trains, and in meetings you forgot to mute. It looks as ridiculous as it sounds.Voice AI
When SDKs Write Themselves: Voice API Code GenerationOriginalDeepgram swapped hand-rolled SDKs for spec-first generation with Fern, so five languages write themselves from one OpenAPI and AsyncAPI source.Developer Experience
Sunday roundup: a quiet publishing week in voice AIOriginalTwo posts from late May: what multilingual voice agents cost, and why contributing guides exclude newcomers. Plus the rest of the month's roundup.Voice AI
5 command-line tools for shipping voice agentsOriginalBuilding voice agents means living in a terminal. Here are five CLI tools I use every day for audio debugging, API testing, and latency measurement.Developer Experience
Friday fun: my .zshrc has more aliases than I have memoryOriginalI opened my .zshrc for the first time in months and found aliases I don't remember writing, for tools I don't remember installing. This is what I found.Developer Experience
What multilingual voice agents cost: latency and complexityOriginalBuilding a voice agent that handles ten languages without falling over is harder than it sounds. Here's what the architecture actually costs.Voice AI
When AI development tools stopped being optionalOriginalGoogle I/O, Anthropic's London event, and OpenAI GPT-5.5 all landed in the same window. AI development tools crossed from experimental to essential.AI
Sunday roundup: API design, I/O, AnthropicOriginalOne post on voice API design in a week when Google I/O and Anthropic's London event reshaped AI. The roundup for May 2026.Developer Experience
5 API design decisions that shape voice AI dev experienceOriginalError payloads, streaming edge cases, and latency limits all shape how developers interact with voice APIs. Here are five patterns I have seen matter most.Developer Experience
Five SDKs, one streaming API: a maintenance retrospectiveOriginalMaintaining five SDKs for one streaming voice API taught me things about developer experience that no spec review ever could. Here is what I learned.Developer Experience
What nobody tells you about audio in speech-to-textOriginalProduction speech-to-text lives or dies on the audio: sample rate, encoding, channel mixing, chunk size. The docs skip it, so here is what matters.Developer Experience
Sunday roundup: four posts on audio debugging and work cultureOriginalFour posts from the week of May 11 in one Sunday roundup: afinfo, speaker diarization, Slack culture on remote teams, and ffmpeg for voice AI.Developer Experience
5 SDK anti-patterns I keep fixing in voice AIOriginalMaintaining SDKs across five languages taught me the same mistakes appear every time. Here are the five patterns I'd redesign first, and why they matter for voiceDeveloper Experience
ffmpeg taught me more about voice AI than the docs didOriginalThe first time I debugged a voice AI integration, ffmpeg saved me. It is still the most useful tool in my kit, and it is not even designed for voice.Developer Experience
Why Speaker Diarization Is the Hardest Problem in Voice AIOriginalSpeaker diarization figures out who spoke when. It sounds simple. It is not. Here is why it breaks, and what it takes to get right.Voice AI
5 developer experience wins in voice AI toolingOriginalError messages, timeout behaviour and observability: five developer experience wins that separate a great voice AI API from one that eats your Friday night.Developer Experience
What running a developer Discord taught me about voice AIOriginalFour years running a developer Discord for a speech API surfaced the same problems on repeat: audio format traps, silent failures, and unasked questions.Developer Experience
How voice AI SDKs handle things REST clients never have toOriginalBuilding SDKs for streaming voice APIs means managing WebSocket state, audio buffers, reconnection, and backpressure. REST client patterns break immediately.Developer Experience
Sunday roundup: debugging habits and multilingual speechOriginalOne post on voice AI debugging habits, plus Flux going multilingual, AssemblyAI's Voice Agent API and Twilio Conversation Relay, from early May 2026.Voice AI
5 habits that reduce voice AI debuggingOriginalMost voice AI debugging time goes to problems that follow a pattern. Here are five habits I built at Deepgram that catch those patterns before they become incidents.Engineering
The invisible work of voice AI SDKsOriginalFour years of maintaining voice AI SDKs across half a dozen languages. The work that never makes the changelog.Developer Experience
Sunday roundup: starting fresh, April 26OriginalDaily publishing starts here. The Sunday roundup for April 26: OpenAI workspace agents, Anthropic Mythos 5, and what was shipping inside Deepgram.Developer Experience
5 questions I ask before integrating a streaming APIOriginalConnection drops, backpressure, and wire formats. Five questions I ask every streaming API before building on it, learned from voice AI integrations.Developer Experience
What 79 TIL posts taught me about developer contentOriginalWhat 79 TIL posts over six and a half years taught me about consistency, keeping the scope small, and writing developer content people actually finish.Developer Experience
AI's Release Cadence Is Now a Developer ProblemOriginalThree frontier models in two weeks. The release cadence creates evaluation churn, integration instability, and fatigue for developers building on AI.AI
Sunday roundup: two posts, a fresh startOriginalTwo posts from the first weekend of daily writing: terminal STT streaming, WebSocket audio patterns and GPT-5.4-Cyber, in this Sunday roundup for April.Developer Experience