
Sign up to save your podcasts
Or


Ep #237
🤖 agentic dev
💬 prompt engineering
🦞 OpenClaw
🎼 orchestration, harnesses, and models
💀 leet code interviews
🕹️ Pokemon Go
🥃 whiskey & whatnot
⤷ whiskey.fm · youtube · spotify · apple
Try the latest concept
(I think it's hella rad)
⚓️ anchor() progressive enhancement
🤖 workers for color compute
🙈 new animations & interactions
🎨 gamut boundaries, mapping, stretching
☯️ contrast scores
& much more
QA and comment on GitHub if you may.
Ep #236
Robbie and I chat with guest Amelia Wattenberger about:
📄 Why specs still aren't taking off
🤖 Being managed by your own bots
🛠️ Amelia's rad project Intent
🦆 Rubber duck debugging with Claude
🥃 A little whiskey & whatnot
⤷ whiskey.fm · youtube · spotify · apple
My CSS Day 2025 talk is out!
📼 youtube.com/watch?v=vPb7d28RFNE
Slides, demo links, & more here.
Join us tonight at 5pmPT for a 🍀 St. Patrick's Day 🍀 live collab with the ShopTalk Show folks!
Twitch · YouTube
Ep #235
Robbie and I chat OpenClaw, token optimizations, liberating data from walled gardens, burn windows, and of course some whiskey and some whatnot.
⤷ whiskey.fm · youtube · spotify · apple
Like Zoolander who can't turn right, I thought View Transitions couldn't swoop.
I had been under the impression that they couldn't curve towards the destination, and it was one of those things that you like can't unsee. All view transitions going in straight lines…
CodePen
All my prior attempts had failed, til now.
When you give something a view-transition-name like:
The browser creates keyframes with a predictable naming pattern:
If you pause a view transition, you can see the keyframes and the keyframe name applied to the pseudo elements:
Anticipating that naming consistency, add a comma to the ::view-transition-group() element and include some keyframes of our own:
The special sauce, the THING THAT TOOK FOREVER TO FIND, is that you can only use individual transforms, NO transform shorthand:
If you try to change the transform, things fail. And if you try to add animation-composition, things fail harder (don't know why).
BUT, using individual transforms, and just like that, you can blend a scale, translate, or whatever in combination with the browser native transition.
The trick also shows you how you can add a blur to a view transition.
CodePen
The key to the unlock was individual transforms.
Below is a demo you can try that makes a simple wiggling view transition.
The green ball uses custom keyframes and animation composition, and the pink ball uses view transitions. They dont perfectly match either, which is interesting (exaggerated with a scale added). There's a perspective difference at play I don't fully understand.
You can stop reading here if you want, but I'm about to rant about how this was lame as crap to discover.
While I'm glad there's a little bit of a way for it to work, there's plenty to still want.
I really just wanted to change the X easing to be ease-out and the Y easing to be ease-in. That would give a nice swoop. Or even add a slight delay the X and not the Y, another way to create a swoop.
None of these more normal and better ergonomic ways are available. Just this narrow case with individual transforms and trying to piggy back on a browser keyframe naming convention.
But hey, now we can add swoops to a native view transition and we learned a trick that can make motion blur view transitions. That's coo.
Ep #234
Robbie and I chat latest agentic workflows with the CEO of Warp, digging into our favorite features, cloud agents with Oz, some delicious smokey whiskey and some whatnot.
⤷ whiskey.fm · youtube · spotify · apple
First off, I call my OpenClaw assistant "Punk Ass," short for "Punk Assistant." It's been great so far having a punk ass for various projects. I hadn't been using my gaming machine much; now it's a work horse.
But, when you're running an AI assistant that handles Discord messages, cron jobs, and various projects; costs add up. But where exactly?
I directed a simple dashboard to find out.
OpenClaw stores session logs as JSONL files. Each assistant response includes token counts and costs. I had a Node.js script written that extracts this data, cross-references it with Discord thread metadata embedded in each conversation, and aggregates everything by thread, day, model, and session type.
The output is a single static JSON file that powers an Astro dashboard. No backend needed, just parse, deploy, and refresh when you want updated data.
I track a few things that help me make keep costs low:
The data was immediately actionable. Two threads accounted for 60% of the total spend: a Shopify web store project ($73) and the #general channel ($70).
The store project made sense, I've been async art directing it alot. It's looking sweet. But #general? That's just a catch-all channel accumulating context from random conversations. Expensive by accident.
Now I know: long-running threads in Discord are context traps. Each message carries the full conversation history. The solutions:
The dashboard cost less than a dollar to make. But now, knowing where tokens go changes how I work with OpenClaw, I'll earn all that buck back quick; I can stop guessing and start optimizing.
scroll-driven geometric orbit experiments
Featuring billboarding, center of mass pivoting, and CSS trig functions.
From the publisher's feed