Doordash Couture
Who is this for? STEM majors realizing they're better off running Uber Eats?
Followed Ruby type systems for years. Spent a month of my life porting my meta-programming-heavy library Mocktail to Sorbet, only to realize zero tooling lift. No idea if it works, but I gotta say T-Ruby's pitch is the first that makes intuitive sense type-ruby.github.io
TIL if you want Safari to render 120fps, you need to go to Settings -> Advanced -> WebKit Feature Flags and TURN OFF "Prefer Page Rendering Updates near 60 fps". You can test it here—big difference! testufo.com/
Merry Christmas! I made a little present for any of my fellow Japanese learners out there. 🎁
Today I'm pleased to share this ChatGPT-powered Shortcut for Apple platforms I've been working on with you.
Here are its headlining features of the Ingest Japanese shortcut:
- Render Furigana - ChatGPT tokenizes words and produces readings for kanji and okurigana, which are then assembled into an HTML page with proper
<ruby>and<rt>tags (copyable as an HTML file) - Show Kana Reading - ChatGPT tokenizes the words and converts them their kana pronunciations, separating each word with a space, so you can understand word boundaries at a glance
- Translate to English - Uses whatever additional context has been provided to give an accurate translation of the text
- Speak Aloud - Pronounces the selected text (copyable as an audio file)
- Show Definitions - Generates dictionary definitions of each distinct word found in the text, highlighting the most likely meanings based on the surrounding context (copyable as an HTML file)
It also exposes these utilities:
- Copy Input - copy whatever input you passed into the shortcut to your paste buffer
- Copy Last Result - copy the result of the last operation (whether a string or a file)
- Provide Additional Context - explain the situation or your goal in understanding the text so that ChatGPT will provide more useful translations and definitions
- Add to Word List - Appends the selection and the dictionary-form of the words contained within it to a CSV file in your iCloud Drive's
Shortcutsdirectory (seeShortcuts/ingest-japanese/word-list.csv)
Additionally, the Ingest Image companion shortcut uses ChatGPT to extract the image and analyze the surrounding context by either:
- Passing in a photo, scan, or screenshot via a share sheet
- Triggering the shortcut some other way, which will capture a screenshot of your screen
In either case, it will extract the selected or primary text it finds and forward it (as well as any additional circumstantial context present in the image) to Ingest Japanese so you can study it.
Installing
You can install and follow these shortcuts on RoutineHub. You can read more about them here:
I hope you check it out and find them useful in your studies!
Voters don't intuit that bond yields affect currency valuations affect foreign tourism, but Japanese populists now depend on low yields to depress the yen to maintain the supply of obnoxious foreign tourists to buoy their agenda. robinjbrooks.substack.com/p/japanese-denial-on-debt
Is Apple Shortcuts functional programming?
I'm working on an inadvisably complex Apple Shortcuts widget for studying Japanese language, and just realized two things that may save you some time in the future:
- If statements are expressions: the value of the "If Result" is available and evaluates to the final value of whatever branch was traveled at runtime
- Repeat blocks may say "each" but actually double as map functions: they return a "Repeat Results" value, which evaluates to a List of the final value of each iteration
Because Shortcuts exposes such a gobsmackingly-frustrating UI for actually building programs, it's easy to assume that you're hobbled by the conventions of something like BASIC, but there are some surprisingly modern conveniences lying under the surface!
Merry Divestmas
This is a copy of the Searls of Wisdom newsletter delivered to subscribers on December 20, 2025.
Hey everybody, we've almost survived another year! Just ten days to go—I hope we all make it!
Looking back on the home stretch of 2025, this is all I have to report since our last issue:
- I built a sexy new gaming PC over 3 days, 120 teeny-tiny M3 screws, and at least ten cups of coffee
- I got my first nose job. I've always had a huge fucking nose, and I'm relieved to finally be able to breathe out of it
- I talked about both of the above on my podcast
- I'm so sick of bracing for the AI bubble to pop, that I've decided to look forward to it instead. Buy popcorn futures, everyone 🍿
- I released POSSE Party, which I'll talk a bit more about later. Also these bits:
- I spent a couple days documenting the hell that is other people's API keys.
- I recorded a tutorial video in 1, 5, 10, 15, and 20 minute variations. It's a Choose-your-own-attention-span adventure.
- The first stop on my promotional tour was Aaron's livestream for a tour of the codebase, which you can peruse on GitHub
The day of my surgery, Becky insisted on taking a picture of me after I was told to put on a hairnet but before the drugs kicked in. I was very anxious going into the operation and she was very supportive throughout.

As 2025 winds down, the Searls of Wisdom LT (which stands for "Leadership Team", an acronym I'll be using from now on to amortize the time it took to write this parenthetical) has decided to evolve how it approaches our monthly newsletter operations. Change is hard for many of us, so in lieu of a normal essay about how my feelings inspired certain thoughts that led to valuable insights, I'm just going to explain what you can expect from this newsletter going forward before wishing you better luck next year and sending you on your way.
Merry Divestmas
Some time in June, my brother called me from the U.S. while I was riding a Shinkansen bullet train, at which point I realized I'd never actually taken a call while moving faster than 150 mph before. I remember a certain unease—unsure what the proper etiquette was—so I stepped into the hall between train cars to take it.
Argument isn't airtight, but this is the best link I currently have to send non-tech people who are worried about AI killing their job: maxberry.ca/p/how-to-not-be-replaced-by-ai
Andy Waite thought to have Sonnet 4.5 analyze the POSSE Party codebase. Good habit to get into for anyone looking at sizing up a new project: reddit.com/r/rails/comments/1psbh26/claudes_architectural_analysis_of_posse_party_by/
Mike McQuaid recently blogged that he's joined the POSSE Party. He reached out a couple times to say he was scraping my own site to figure out how I accomplished certain things (like the iMessage previews for my takes section, but in general it must have been straightforward enough, because he didn't need me at all to get up and running. Kind of cool to see that he can teach his 20 year old blog new tricks.
In his LinkedIn post sharing it:
In practice, this looks like building your own version of a single-serving social network on your own site and exposing RSS/Atom feeds to other services to consume. Justin recently released POSSE Party which makes this easier by cross-posting to various social networks. I've complained for a while about (anti)social networking so I'm always up for new ways to use social networking less.
Naturally, he does a better job than me summarizing what the hell POSSE Party is for. When I'm too close to a project, it's hard to zoom out and talk about it like a normal fucking person.
Now that POSSE Party is properly "done", I'll be on Aaron's live stream tomorrow at 1 PM eastern / 18:00 UTC to show him how the sausage is made by… uhh, peeling back the casing, I guess? It will be gross and/or fun! youtube.com/live/YkMpfAnu6Z8
A week or two after soft-launching POSSE Party, I'm ready to call this the HARD launch. In addition to new docs for setting up all 8 supported social platforms, I took a choose-your-own-attention-span approach to tutorial videos that I'm really proud of: posseparty.com
The scope and scale of this leak is unprecedented in Apple's history. I almost can't believe it. macrumors.com/2025/12/15/apple-leak-unreleased-devices-codenames/