• 🔗 Greg Morris: Envy: The Only Sin That Never Feels Good

    Someone’s life looks better than yours on Instagram and suddenly you’re either tearing yourself down or posting something designed to make them feel worse about theirs. You see someone’s project launch and instead of starting your own, you either convince yourself you’re not good enough or you start picking holes in what they’ve built. Both responses come from the same uncomfortable place. Neither helps you.

    Yep, envy sucks. It comes unbidden and leaves you feeling crappy. This resonated with me.

  • That’s the second time this week that I forgot that the i in a for (let i in array) loop in JavaScript is set to a string, not a number. It’s for enumerable string properties, not for providing a fancy way to iterate using the index.

  • I’m going to defend the use of “util” packages. No standard library is perfect, and no-one knows which utilities are useful and worth sharing until they’re used. A local “util” package is a perfect testing ground for such things. The alternative is just more copy-pasting.

  • This is something set up for the Australian Open, yet the sight of a tennis court on water does have some significant references to a few people I grew up with.

    Auto-generated description: A floating tennis court is set up on a body of water, surrounded by railings and supported by a metal framework, with trees and buildings in the background.
  • Good morning, everyone. This is a reminder that the orange seats are priority for passengers with special requirements.

    Oh, so the orange coloured seat fabric indicates that it’s a priority seat?! I had no idea. I just thought it was because the seats are different. TIL.💡

  • Just spent 5 minutes waiting for an OTP email. An email which will never come because I forgot to enter my email address and password. 🤦

  • It just just occured to me that those logic puzzles where you need to work out an order from a series of predicates (John came in before Jane, Anthony was first, etc.) is exactly the same exercise as working out the deployment order for a prod release. Here, John is the backend.

  • 2026 could be the year of the TUI: rocking computers like it’s the 1980s.

  • It’s so satisfying seeing the run of a large Go test suite reveal itself as a tree when executed in an editor. IDEs should lean into this, allowing execution of subtests to any depth (not just the top + 1 level), and offering features like find.

  • Just discovered that when you open up the page picker in Obsidian after typing [[ , you can bring up the header picker after selecting the page and typing # instead of pressing Tab or Enter. Saves moving the cursor back to the left of ]] to set the header link.

  • Some More Thoughts on Apple's Ability to Make Vision Pro Content

    Apple may struggle to produce the innovative Vision Pro content desired due to its reliance on established production practices and the pressure to justify substantial investments in video production. Continue reading →

  • Oof! Just heard Ben Thompson’s article about the Vision Pro. Seems to me that Apple’s budget and culture of producing these pitch-perfect videos is at odds with what actually works on the Vision Pro. What would be interesting is seeing someone without a budget get hold of one of these cameras. See what happens after they set it up by the court or oval of a local game (or if it were me, besides a railway line). Having those constraints that breed creative works may be the thing that’s lacking here.

  • Trying out this new coffee establishment that’s opened about a week ago: Coupette. Quite a small establishment, located beside a new hotel that’s opened along my commute.

    A coffee shop with a glass facade, with a man standing at the counter inside.
  • I’ve forgotten how hot the Intel Mac Minis ran. I turned off the one I’m using as a home server yesterday to reduce the number of heat sources in the house (it was a really hot day). I turned it back on about 30 minutes ago and already it’s hot to the touch, despite the constantly running fan.

  • I Heart M Down

    I ❤️ M ⬇️ Continue reading →

  • Too Much HTML

    Components, reusability, and cues from existing code in an unfamiliar project. Continue reading →

  • I’ve grown into that person that wishes “happy new year” to everyone I meet. I guess that’s what you’d call learning from social cues.

  • I think I’ve selected a word for 2026: less. Less time in front of a screen, less consumption of unhealthy foods, less anxiety about things I can’t control. We’ll see how it goes this year.

  • I pity frontend developers. I’d come away hating code and computers too if I was tasked with trying to get anything done using their awful toolchains.

  • Johnny Five will return in Avengers: Doomsday

    (With apologies to @robb@social.lol)

    Johnny Five from Short Circuit, a robot, peeks around a corner in an urban setting next to a fictional Avengers: Doomsday logo.
  • Apparently Metro trains impose speed restrictions on very hot days, like today. Good. I was hoping they would. When it comes to public transport in hot weather, better late than never is a good principal to operate by.

  • I got around to putting together that walkthrough video of Alto for that person I’ve shared it with. Reposting it here for posterity and for anyone who’s curious. Fair warning: don’t expect amazing video production quality.

  • A potentially useful feature for IDEs would be to open up the same file in a two-pane split, then “freeze” one of the panes such that it won’t change while you’re making edits in the other one. That way, you can refer back to the file as it was before you’ve started changing it.

  • One of these days we’ll have a World Wide Web where all the HTTP servers will return the correct MIME types of their content. Maybe (Definitely) not today, maybe not tomorrow, but some day. Hopefully some day before we get flying cars or fusion power. 😛

  • Bit strange seeing Goland suggest the IdeaVim plugin. I’ve never used Vim mode in Goland.