justin․searls․co

I joined Twitter in 2007 and my brain slowly morphed over the next 15 years from hopelessly verbose to nihilistically pithy. I've kicked the Twitter habit, but the takes keep flowing. That's why I post them here and format them as a social network of one. They're also cross-posted to my Mastodon account. You're welcome to bookmark any of these takes, though I'm not sure why you would.

By the way, the hearts and like counts are fake. They're just there to make you feel safe.


The key to making friends as an adult is to identify people you want to be your friend and then acting like they’ve already been your friend for years and eventually they get used to it.

Realizing that the majority of clever Keynote slide tricks I’ve accumulated over the last 15 years have been to make intangible topics feel more concrete and easy-to-follow. Because my next talk is essentially an annotated demo of real, working software, I’m finding myself discard most of my own tropes to save time.

Writing Becky a feature for managing frequently asked questions but halfway through my editor crashed and I lost all my work so now I’m fresh out of faqs

When developers have to keep thawing and fixing code during a code freeze, it can cause code freezer burn, which can be REALLY costly to fix

In theory, I really like using generated columns in Postgres (which Rails supports with t.virtual migrations), but in practice it creates too many situations where persisted Rails models lie to you because generated columns are only updated if you think to call reload

I got so frustrated getting the runaround from my ISP that I filed an FCC complaint and… holy shit.

  1. Complaint triggers mandatory contact from ISP within a few days
  2. Got a call from Spectrum corporate, super kind and helpful/understanding guy
  3. Delegates to research team to look into the issue and have answers within 24 hours.

Government in action.

TIL that inline JavaScript handlers actually define an event variable for you:

This actually works:

〈a onclick="event.preventDefault(); this.closest('dialog').close()"〉

Maybe everyone else knew this, but it took me over 25 years apparently.

One thing I really dig about the AI/LLM boom is that it’s the first time since the 90s that otherwise "non-technical" people in my life have had any reason at all to get excited about computer-ass computing.

Seeing friends and family get interested in how ChatGPT works while improving at how they use it is way more gratifying than the last 15 years of the industry merely training the world how to doomscroll.