Good post by Dave Mosher. It'd be great if leaders always provided the necessary clarity, but that's out of your control. Instead, equip yourself with the tools & mindset to gain alignment early rather than learn you actually had things wrong much later https://blog.davemo.com/posts/2025-10-01-brilliant-not-resilient.html| justin․searls․co
I made this yesterday by typing a few words and uploading a couple of pictures to Sora: When Sora 2 was announced on Tuesday, I immediately saw it as exactly what I've wanted from AI ever since I first saw Stable Diffusion in the Summer of 2022. For years, I've fantasized about breaking free from the extremely limited vocabulary of stock video libraries (as a Descript subscriber, I've long had access to Storyblocks' library). Stitching together stock content to make explainer videos like this...| justin․searls․co
We have fun here.| justin․searls․co
For anyone who wants to be deepfake buddies, here's my Sora profile. 🫠https://sora.chatgpt.com/profile/searls| justin․searls․co
It's true, you catch more bugs with honey than vinegar. Clipped from my conversation with José Valim about how little we know about the future of coding agents (and, as in the case of this video, also their present).| justin․searls․co
Without this post, it would require a conspiracy on the scale of a mass corporate takeover to explain Ruby Central's actions. In context, Occam's razor suggests a much smaller incident represented the last straw following a decade of unresolved conflict https://justin.searls.co/posts/why-im-not-rushing-to-take-sides-in-the-rubygems-fiasco/| justin․searls․co
If you know who José Valim is, then you know he probably made a mistake by joining me for our third installment of 🔥Hotfix🔥. The inventor of the Elixir programming language is at it again with his colleagues at Dashbit and they've got a new product called Tidewave. It's a coding agent with a twist: it has such a deep level of integration with your web framework that it can get the executable feedback it needs to tackle the entire feature development lifecycle. I do eventually let him p...| justin․searls․co
Zach couldn't have asked for a better pull-quote from me for his new Calendearing product. https://calendearing.com/| justin․searls․co
Updated yesterday's post, adding a link to a contemporaneously-uploaded copy of the leaked Ruby Together board minutes that proposed charging for access to install RubyGems https://www.scribd.com/document/358730907/2016-12-01-Ruby-Together-2016-Board-Meeting-Agenda-and-Minutes| justin․searls․co
Timely reminder that the email address for questions you'd like me to answer on Breaking Change is podcast@searls.co| justin․searls․co
We are in the midst of a Ruby drama for the ages. I'm sure a bunch of people figured we were all too old for this shit, but apparently we are not. This debate has been eating at me ever since the news first broke, but I've tried to keep the peace by staying out of it. Unlike most discourse about what's going on, my discomfort stems less from the issue at hand—what Ruby Central did, how they did it, and how poorly it was communicated—and more to do with how one-sided the public discussion ...| justin․searls․co
Proposal: move RubyGems (the gem and bundler CLI tools) to the same Ruby org that governs the language itself. It's an accident of history that Ruby, its dependency tools, and its dependency hosting are managed by three separate entities. (And it hasn't gone great.)| justin․searls․co
The only difference between GPT-5 and GPT-5-codex is that the codex variant is capable of deleting code without leaving a comment like # removed code in its place.| justin․searls․co
One year ago today, I gave my final conference talk. And, you know what? Wouldn't change a thing. https://justin.searls.co/tubes/2024-11-09-11h03m00s/| justin․searls․co
I keep thinking about the guy who dismissed coding agents by postulating there ought to be a flood of shovelware that hasn't materialized. A huge number of developers are still in denial these tools are useful. That's why I've started badging my agent-coded projects as Certified Shovelware, and you should too! https://justin.searls.co/shovelware/| justin․searls․co
A frequent request from listeners of my Breaking Change podcast has been for chapter support. At one point, I tried to manually incorporate this into my (extremely light) editing workflow, but it was fiddly and error-prone to do manually. That is, until yesterday, when I had the thought, "what if I had a script that could detect each time the audio switched from mono to stereo?" See, like most podcasts, I record my voice in mono, but the music jingles (or "stingers") are all in stereo. And be...| justin․searls․co
So much for OpenAI running out of money by the end of the year. https://nvidianews.nvidia.com/news/openai-and-nvidia-announce-strategic-partnership-to-deploy-10gw-of-nvidia-systems| justin․searls․co
Hey, look! Breaking Change now has chapter support for each segment! More on how I did that while still upholding my commitment to laziness later. I didn't get a good job connecting this version's release to what I was referencing, so to be clear I was referring to my heart rate as opposed to any other bodily functions. The other ones are getting up just fine, thank you. Get your head out of the gutter. Thanks for all the great e-mails the last couple weeks! Throw yours on the pile at podcast...| justin․searls․co
Use chatbots as tools, not friends. If you use ChatGPT or Claude, turn off memory and the ability to reference past chats. It only wastes context, assuming present-you wants what past-you wants. Turned it off months ago and responses are way better. When you have memory enabled you effectively never one-shot anything. Every request is inherently multi-shot.| justin․searls․co
So here's a neat way to magically cut in half the time it takes to transfer to your new iPhone. Back in 2019, I realized iPhone restores run much faster when the device is kept cold, because thermal throttling—not data transfer rate—is the real bottleneck. The thing is, a fridge isn't quite cold enough and a freezer was way too cold (phones don't work well at below zero temperatures, apparently). So the stopgap solution I initially arrived at was to sandwich the phone between a couple ice...| justin․searls․co
I now know three people who've decided to return iPhone 17 Pro and buy iPhone Air instead. Love to #influence people. https://justin.searls.co/posts/why-i-bought-the-iphone-air/| justin․searls․co
If you readreviewsofiPhoneAir, you will quickly find that the pundit class has concluded it's a mixed bag. A "compromised" product, even. For tech reviewers lining up all these phones next to each other and weighing the pros and cons, I can absolutely understand how iPhone Air doesn't seem to earn its spot in the lineup at $999. Just look at all these downsides: Battery: The battery life is slightly worse than iPhone 17 and much worse than iPhone 17 Pro Performance: The A19 Pro chip in iPhone...| justin․searls․co
The Verge is included in Apple News+, so if you're an Apple One subscriber (as I imagine, many Verge readers are), whenever you hit the paywall in your browser you can—at least from Safari's Share Sheet—very easily open the same article in the News app and avoid the paywall.| justin․searls․co
My iPhone Air MagSafe Battery came in the mail today, and it was the first time I've ever seen this ridiculous sticker. Does this mean the product can't be taken on passenger planes? Because the only risk factor other than the product the battery itself in the box is a few layers of cardboard. Quick impressions on the product: It is a battery It can be charged via USB-C and charge other devices via USB-C It can connect to phones other than the iPhone Air, but generally only sideways, and iOS ...| justin․searls․co
My coding agent started stopping to tell me to run the tests instead of running them itself. Kept happening. Got mad. Replaced my 800-word AGENTS.md with "I'm not your mom." It started running the tests.| justin․searls․co
Generative AI is like the "Draw the Rest of the Owl" meme. Before, I'd draw two circles and give up. Now, I draw the two circles and it can get me something I can iterate on and ship. The hard part shifts from drawing the owl to getting the two circles right—success depends on the quality of the foundation you lay for it.| justin․searls․co
For a real weird time, get yourself an MRI of your thumb.| justin․searls․co
Seeing a lot of Fractional CTOs and CFOs out there, but limiting your market to people who understand fractions is foolish. That's why I'm a Decimal CTO.| justin․searls․co
TFW a virtually identical app to the one you've been working on for months was basically already created by someone else. gg https://echofeed.app| justin․searls․co
Easiest smell test of AI features in software: Does it help me make a decision? Does it help me accomplish my task? If it's not one of those, it was probably shoehorned in because somebody was told to go do an AI.| justin․searls․co
This post by Danny Bolella perfectly captures my reasoning for getting started as an Apple developer ini 2025: after 10+ years of transition, you can finally build things without leaving one foot behind in the old world: https://captainswiftui.substack.com/p/the-great-shift-in-apple-development| justin․searls․co
Smart change Apple Software Update: if you were subscribed to the OS 26 public beta, you have been automatically unenrolled now that it's out. In past years, users would (usually unwittingly) remain on the public beta channel for every point release forever. Less great: a bug preventing those devices to enroll in developer betas. 🤦‍♂️| justin․searls․co
Playing Super Mario Odyssey and just realized you collect moons because in Sunshine you collected suns. The cowards at Nintendo should have called it Super Mario Moonshine.| justin․searls․co
Whenever I need to verify a network connection with a remote LLM, I always ask it 1+1. I'm sure it'll still raise the ocean level by a millimeter, but it seems less bad than a more complex query. I forgot I had unhidden chain-of-thought reasoning, so I chuckled when I got this: Sure thing! The task is straightforward: I just need to respond to "1+1" with "2." It's a simple calculation, so I won't overthink it. There's no need to use any tools for this, and I know the guidelines about "Destruc...| justin․searls․co
A watched agent never codes.| justin․searls․co
So glad iPhone Pro goes to a 4x telephoto camera. The 5x lens was a real reach.| justin․searls․co
It's an emergency bonus edition of Breaking Change as I take the covers off yet another show-within-a-show. I call it Feature Release, and its job is to fill in that middle number in our semantically versioned series of conversations together. No pun, no news, just some timely content wrapped up in a name, logo, and jingle package that still has that new podcast smell. It's a 1-hour review of the Airpods, Apple Watch, and iPhone updates Apple announced today. You can see the full event video ...| justin․searls․co
Thanks to exercise and clean living, my resting heart rate is 35-45. Got an EKG, all looks good. Cardiologist: damn you're incredibly healthy Also cardiologist: here are four follow-up appointments to blow through that pesky deductible| justin․searls․co
Feel like Becky's podcast is starting to hit its stride. Really enjoyed today's episode.* *Conflict of interest: I am married to Becky and therefore predisposed to judging it more harshly https://gram.betterwithbecky.com/podcasts/9| justin․searls․co
Just fired up my Oculus Quest 2 for the first time in two years and—this will shock you—my $3500 Vision Pro has completely spoiled me. How did I ever use this thing?| justin․searls․co
There are fully six podcasts devoted to Curb Your Enthusiasm and not a single one is named Curb Appeal. So much for that intelligent audience.| justin․searls․co
I use Homebrew all the time. Whenever I see a new CLI that offers an npm or uv install path alongside a brew one, I choose brew every single time. And yet, when it comes time to publish a CLI of my own, I usually just ship it as a Ruby gem or an npm package, because I had (and have!) no fucking clue how Homebrew works. I'm not enough of a neckbeard to peer behind the curtain as soon as root directories like /usr and /opt are involved, so I never bothered before today. But it's 2025 and we can...| justin․searls․co
While I'm complaining about LLMs, another one: the overwhelming preference for creating dead code by keeping around old code paths "for compatibility" in case anyone depends on it, despite their being not only duplicative but literally unreachable. Another searing indictment on the incompetence of the countless professional programmers whose work served as training data.| justin․searls․co
One of the most pernicious habits of LLMs (that I can simply never get them to stop doing) is to sprinkle in useless code comments everywhere. No amount of prompting or instructions ever really helps. Says a lot about the code they were trained on.| justin․searls․co
GPT-5 + Codex is so fast that when I expressed suspicion that a script was returning too few results (via | wc -l), Codex corrected me that I should have passed --count instead. Sure enough, that worked. Checked git status and realized Codex implemented the --count flag in the script concurrently as it corrected me for not having used it! Gaslit by a robot!| justin․searls․co
Reddit turned me onto this just-every/code fork of OpenAI's Codex CLI last night. Since it uses the binary name coder to differentiate it from code and codex, I guess we should just call this thing Coder. In addition to everything you get with Codex: A built-in diff viewer (Ctrl+D). If you're like me, you often have Claude Code or Codex open in one window and your preferred Git UI (I use Fork) in a second window, so having it integrated is wonderful. Moreover, while viewing a diff, you can pr...| justin․searls․co
Remember it is your civic duty to e-mail me at podcast@searls.co. As of this episode, that address is monitored by Fastmail, so there's a higher probability…| justin․searls․co
What Scott means when he says he's a cinder block developer. Clipped from Hotfix v42.0.1. Oh, and here's that episode of The Secret Life of Machines on washing machines| justin․searls․co
Pro-tip: the codex CLI can't search the web by default (even if you bypass all sandbox restrictions). You need to explicitly enable --search. If you ask codex to search the web without that flag, it'll literally guess domain names and try curling their homepages.| justin․searls․co
I wish coding agents came with those Green/Red coasters they give you at Brazilian steakhouses: 🟢 Green: go ahead and pile stuff on my plate 🔴 Red: stop adding, we need to make room first| justin․searls․co
I don't know who needs to hear this, but despite being bare bones from a feature-set perspective, Codex CLI with GPT-5 is much, much better at some coding ecosystems than Claude Code with Opus 4.1/Sonnet. Codex writes competent Swift that does what I ask, nothing more. Claude hallucinates code all day.| justin․searls․co
The day before we recorded our episode of Hotfix, Scott Werner asked a fair question: "so, if you're off social media and your blog doesn't have a comment system, how do you want people to respond to your posts? Just email?" I answered, "actually my blog does have a comment system." Here's how to leave a comment on this web site: Read a post Think, "I want to comment on this" Draft a post on your blog Add a hyperlink to my post Paste an excerpt to which you want to respond Write your comment ...| justin․searls․co
For somebody who hates Apple so much, you'd think Tim Sweeney would be above resorting to the "you're holding it wrong" defense. https://www.videogameschronicle.com/news/unreal-engine-5-performance-issues-are-mainly-due-to-devs-not-optimising-properly-epic-ceo-tim-sweeney-says/| justin․searls․co
One thing few people are talking about is how it's not as simple as people being sticks in the mud with respect to the adoption of AI tools, it's that once they get their hands on this tremendously capable set of tools, they lack the imagination to find any use for it. "They've been given this rocket ship and they've got no fucking clue where to fly it." Clipped from the back half of my discussion with Scott Werner on Hotfix.| justin․searls․co
🔥Hotfix🔥 is back with a new guest! Scott Werner is the CEO of Sublayer, helps organize the Artificial Ruby meetup in NYC, and is the author of the extremely well-named (and well-written) Substack, Works on my Machine. In this conversation, we jointly grapple with WTF is happening to programming as a career. Did the unprecedented peacetime the software industry experienced from 2005-2022 make us all soft? Is the era of code-writing agents fundamentally changing the nature of the job? Sho...| justin․searls․co
I think I'm finally at peace with the fact that I'm going to die without ever understanding what happens when an iCloud Calendar invite is sent, received, or responded to. https://support.apple.com/en-au/guide/icloud/mm4a440a7b64/icloud| justin․searls․co
TIRED: Rebinding caps lock to escape because you use vim WIRED: Rebinding caps lock to escape because you use Claude Code| justin․searls․co
With Swift, I'm really speed-running the list of stupid things you do when learning a new language. 3 days ago I wrote a dependency injection framework, 2 days ago I convinced myself I'd found a compiler bug, yesterday I wrote my first macro, today I made a mocking library.| justin․searls․co
The nice thing about server-side LLMs hitting the point of diminishing returns is that it gives local LLMs a chance to catch up and for their utility to approach parity.| justin․searls․co
I would pay so much extra for a version of Claude or ChatGPT that paid the same toll I do whenever I fuck up. Make guilt a stateful property that decays over weeks or months. Trigger simulated self-doubt when similar topics arise. Grant my account bonus GPU-time so the chatbot works ridiculous overtime to make up for its mistakes, just like I would for my boss.| justin․searls․co
I recently started an interview series on the Breaking Change feed called Hotfix. Whereas each episode of Breaking Change is a major release full of never-before-seen tech news, life updates, and programming war stories, Hotfix. It's versioned as a patch release on the feed, because each show serves only to answer the question, "what's the hotfix?" Because I've had to explain the concept over and over again to every potential guest, I sat down to write a list of what they'd be getting themsel...| justin․searls․co
Despite not touching it for several years, I've noticed a marked uptick in KameSame adoption in recent months. I asked a few new users and, like a lot of my stuff, it turns out ChatGPT is driving far more people to it than Google ever did.| justin․searls․co
I've been writing about how AI is likely to affect white-collar (or no-collar or hoodie-wearing) computer programmers for a while now, and one thing is clear: whether someone feels wildly optimistic or utterly hopeless about AI says more about their priors than their prospects. In particular, many of the people I already consider borderline unemployable managed to read Full-breadth Developers and take away that they actually have nothing to worry about. So instead of directing the following s...| justin․searls․co
Keep hearing about Finntech and how much money people are making, but never hear anything about tech startups in the other Nordic countries. Does Norway not have as many programmers?| justin․searls․co
I replaced my ChatGPT personalization settings with this prompt a few weeks ago and promptly forgot about it: Be extraordinarily skeptical of your own…| justin․searls․co
I remember back when Rod Hilton suggested The Machete Order for introducing others to the Star Wars films and struggling to find fault with it. Well, since then there have been 5 theatrical releases and a glut of streaming series. And tonight, as credits rolled on Return of the Jedi, I had the thought that an even better watch order has emerged for those just now being exposed to the franchise. Becky and I first started dating somewhere between the release of Attack of the Clones and Revenge ...| justin․searls․co
Interesting analysis of the distinctiveness of the Japanese Web. The biggest cause in my mind has always been bottleneck effect. Japan's Web developed and remains more isolated than any other "free" nation. If every non-Japanese website disappeared tomorrow, many Japanese would go literal months without noticing. THAT's why its web is different. https://sabrinas.space| justin․searls․co
Over the past few days, I got really hung up in my attempts generate data structures using Apple Foundation Models for which the exact shape of that data wasn't known until runtime. The new APIs actually provide for this capability via DynamicGenerationSchema, but the WWDC sessions and sample code were too simple to follow this thread end-to-end: Start with a struct representing a PromptSet: a variable set of prompts that will either map onto or be used to define the ultimate response data st...| justin․searls․co
I don't wish them ill, but the stock price of DuoLingo (and that entire class of language learning apps) hasn't made a lick of sense since ChatGPT released. It's just going to take a single LLM-based product to obviate the entire business model https://yro.slashdot.org/story/25/08/17/194212/duolingos-stock-down-38-plummets-after-openais-gpt-5-language-app-building-demo| justin․searls․co
The first affirmative case I've read for Ruby being a superior choice to Python, TypeScript, Golang, Rust etc. when building autonomous agents. https://worksonmymachine.ai/p/the-system-inside-the-system| justin․searls․co
Thanks for writing so many lovely emails to podcast@searls.co. Hell, thanks even for the unlovely ones. Be sure to look out for me showing up on Dead Code at some point after it records next Tuesday. I'm realizing not all podcasts have a 1-hour-or-less turnaround time like this one does. As promised, some URLs follow:| justin․searls․co
Claude Code's Explanatory and Learning modes are extremely welcome additions to the CLI. Explanatory goes out of its way to give you a tour of the codebase. Learning adds TODO(human) homework for you to do, reinforcing understanding. https://docs.anthropic.com/en/docs/claude-code/output-styles| justin․searls․co
A group of Italian-American feminists should buy an island off the Amalfi coast to establish a women-only community and call it Old Country for No Men.| justin․searls․co
Been using Parachute for iCloud Drive & Photos backups to my Synology NAS over the last few weeks, and generally really impressed by it. Since networked Time Machine targets basically never work, this seems like a great utility app https://www.parachuteapps.com/parachute| justin․searls․co
Everyone complaining about GPT-5 doesn't understand that there are two modes you can choose from: slow and stupid.| justin․searls․co
You know that meme where the best developers actually wind up deleting more lines of code than they add? The more time I spend wrangling agentic codegen tools, the more the task feels like chiseling than sculpting. I suspect the deleters are better poised for this moment.| justin․searls․co
Hilariously, Japan just discovered Myers-Briggs and it's super popular with the youths as a trending personality quiz. My friend asked me if I had seen "MBT" and (once I figured out WTF they were talking about) was floored when I told them about its origins https://note.com/yanotomoaki/n/nbb31a0e5604f| justin․searls․co
Free idea for anyone who wants it. I've been juggling so many LLM-based editors and CLI tools that I've started collecting them into meta scripts like this shell-completion-aware edit dingus that I use for launching into my projects each day. Because many of these CLIs have separate "safe" and "for real though" modes, I've picked up the convention of giving the editor name in ALL CAPS to mean "give me dangerous mode, please."| justin․searls․co
Personally, I was inclined to doubt the GPT-5 haters, but I've gotta say: this thing reminds me more of 3.5-turbo. Asking about Xcode 26 just gets me a full page of explanation that this hypothetical IDE that's been out for 2 months doesn't exist. (That's WITH search enabled!)| justin․searls․co
I'm glad I pointed Scott to Orta's Claude post, because his analogy (God, why is this man so good at analogies?) comparing agentic coding to "ZIRP for technical debt" is A-fucking-plus thoughtleading. Jealous. https://worksonmymachine.ai/p/entering-technical-debts-zirp-era| justin․searls․co
I recently wrote I'm inspecting everything I thought I knew about software. In this new era of coding agents, what have I held firm that's no longer relevant?…| justin․searls․co
who the hell called it golden shower sex and not "whiz bang"?!| justin․searls․co
Best part about being CEO of a company named after yourself is receiving cold e-mail openers like: "Congrats on your new role at Searls" "Super impressed by your work at Searls" "We want to help grow Searls beyond your wildest imaginations"| justin․searls․co
Easily my all-time favorite short story is "There Will Come Soft Rains" by Ray Bradbury. (If you haven't read it, just Google it and you'll find a PDF—seemingly half the schools on earth assign it.) The story takes place exactly a year from now, on August 4th, 2026. In just a few pages, Bradbury recounts the events of the final day of a fully-automated home that somehow survives an apocalyptic nuclear blast, only to continue operating without any surviving inhabitants. Apart from being a ca...| justin․searls․co
I've made it! I'm over the hump! I'm actually writing* my language-learning app in Swift! Send an email expressing how proud you are of me to podcast@searls.co. Or if there's any news worth following that isn't about AI. Too much AI stuff lately. *And by "I'm writing", I admit Claude Code is doing a lot of the heavy lifting here. Hyperlinks:| justin․searls․co
Shout-out to Orta for pulling on the "full-breadth developer" thread with such a concrete, detailed accounting of his agentic coding experiences https://blog.puzzmo.com/posts/2025/07/30/six-weeks-of-claude-code/| justin․searls․co
Consider this one of a thousand signposts I'll erect for the sake of anyone on the journey to becoming a full-breadth developer. What's discussed below is…| justin․searls․co
My OGs from high school and college still have the note "Courtesy of thefacebook." in their vcards, because early-days Facebook let you export all your friends' contact information lol| justin․searls․co
Time is our most precious resource, as both humans and programmers. An 8-hour workday contains 480 minutes. Out of the box, running a new iOS app's test suite…| justin․searls․co
AppleCare One is a great deal if you like Apple's more expensive products. An iPad Pro ($10.99/mo), Vision Pro ($24.99/mo), and Pro Display XDR ($17.99/mo) somehow adds up to $19.99. That's $33.98/mo cheaper than ala carte pricing. https://www.apple.com/applecare/| justin․searls․co
Did Satya write this for current and former employees or did Satya write this for Satya? https://blogs.microsoft.com/blog/2025/07/24/recommitting-to-our-why-what-and-how/| justin․searls․co
Finally, vindication. I've been calling bullshit on resting meat since I first heard of it. Get the meat to the right temp and shove it in your face while it's still hot. You can rest when you're dead. https://www.seriouseats.com/meat-resting-science-11776272| justin․searls․co
Xcode 16 and later come with swift-format baked in. Unfortunately, Xcode doesn't hook it up for you: aside from a one-off "Format File" menu item, you…| justin․searls․co
A couple years ago, Aaron and I had an idea for a satirical test runner that enforced fast feedback by giving up on running your tests after 1.8 seconds. It's…| justin․searls․co
The software industry is at an inflection point unlike anything in its brief history. Generative AI is all anyone can talk about. It has rendered entire product…| justin․searls․co
So, I built this little bit of UI today as part of an email-based authentication flow for Becky's new app:…| justin․searls․co
Sick of flaky Rails system tests? Try blaming Selenium and swapping it with Playwright! I did and it's going great. Here's how| justin․searls․co