There are lots of ways to test email sending locally. My favorite for the last few years has been MailTrap.

Book: Outlive

Finished reading: Outlive by Peter Attia 📚

Outlive is about being proactive in your health and doing what you can to try and prevent the Four Horseman of Chronic Disease (heart disease, cancer, metabolic disorders, and neurodegenerative disease). It is a long and detailed read. I would recommend starting with the audio version, and if you want to dig deeper, grab a copy of the print edition later.

My biggest takeaways:

  1. Heart disease is mostly preventable, and it is baffling that it is still the leading cause of death in the US. The phrase no one dies of a sudden heart attack sounds so wrong initially, but when you realize it was likely 20+ years of bad habits that led to the sudden heart attack, you may want to kick yourself.
  2. Metabolic disorders, like heart disease, are mostly preventable and lead to other issues besides diabetes.

Still trying to make it easy for posts on my blog to show up on Twitter. My first attempt with Zapier and Buffer was disappointing. I am hoping this one goes better (without both of them).

I was surprised that multiple places at the mall with a more convincing Easter Bunny (anyone know the movie?) had vinyl albums for sale.

Just putting on an album and leaving it to play resonates with me—no 20-second clips to find the right song, endless scrolling, pop-ups, jumping around, etc.

But then I think back to not having access to just about every song recorded in the last 100+ years for $10 or so a month, and I am immediately out.

Vinyl For Sale

One of the best parts of coding with the help of ChatGPT is learning about built-in APIs that I never thought to look for.

Today I wanted to iterate over some links in a string, and ChatGPT turned me on this gem of an API: URI#extract.

Pass it a string with URLs and specify the schemes you want to extract.

I might have figured out (and built) a simple and cost-effective way for posts from Micro Blog to show up on Twitter again. It works if you see this and are under your Twitter allocation for the day. 😄

Harden will not be missed in Philly. It was hard to imagine him getting a big payday from Philly after the choke job against the Celtics (minus two amazing games).

I hope they ship him to the Clippers and give them another often-injured player for the end of the season.

AI is Killing the Old Web

I suspect things will get even worse once the AI-generated garbage content is what consistently gets submitted to sites like Reddit. This is going to be a vicious cycle. God help the gullible and those unwilling to think for themselves. Custom Footer For Local Development

If you want to develop/customize your theme locally, you will likely encounter an issue with a missing file called custom_footer.html. My guess is this file is dynamically added to my at build time.

To work around this, you can remove the use of {{ partial "custom_footer.html" . }} from your theme (either permanently or temporarily), or you can simply check that it exists first:

{{ if templates.Exists ( "partials/custom_footer.html" ) }}
  {{ partial "custom_footer.html" . }}
{{ end }}

I finally gave up on using my Apple Watch for zone 5+ training and picked up (via Father’s Day) and Polaris H10.

It is much more awkward to use (and yet another device), but I am impressed with the simplicity of syncing to machines like the Peloton.

Zone 5 training graph

SparkToro Year 3 Retrospective

This is a must-read if you run (or want to run) a SaaS business.

Can we just agree there is no longer a need to report on Macs with limited ports or upgradability? Right or wrong, this is just how it will always be.

No Upgradablity Headline

Instagram’s Twitter Competitor

The cost of switching for many is very high, especially for those on Twitter just to follow their favorite celebs. Getting some celebs on board is an interesting strategy, but a second app handicaps them.

If you could start writing and replying on Instagram today, I could see this being a much more viable alternative.

I have only dabbled in ActivityPub, but a handful of celebs with millions of followers feels like it could be criplling for many Mastodon instances.

While reading John Gruber’s initial experience with Vision Pro, the following stood out to me regarding our AI gold rush:

…you don’t make compelling products — let alone entire platforms — starting from advanced technology and working backward. You start with a vision for the product and platform experience and then create new technology to make it real.

There is a rush of apps. Some useful (co-pilot) and interesting. But most are obstructed API calls to data that is far from complete.

Other interesting things from the 2023 announcements

  1. Displaying your real-time workout details back on your phone is great. I do a lot of zone training these days, and not having to look at my watch will be great.
  2. The custom stickers via photos are going to be another item that makes those on Android feel left out
  3. See #2 for contact cards (NameDrop….great name!)
  4. iPhone horizontal mode is excellent but feels many years behind.
  5. Smart to see things like crash detection be repurposed for your gold swing.
  6. Smarter AirPod noise canceling (Adaptive Audio) - true noise canceling and being outside can be dangerous.
  7. Family Password Protection - A good step forward. See Apple Passwords Deserve an App

Apple’s app marketplace is such a massive competitive advantage for Vision Pro. The day it is released, having access to everything iOS (and iPadOS) is an enormous barrier to entry. I am trying to understand how anyone else remotely competes.

Coupled with access to the apps on your Mac and it feels like it is already game over. The price to start is steep, and there is that dangling cord in the back, but I am betting in the short run, this leads to even more Macs being sold as well.

Vision Pro Initial Thoughts

I had a chance to watch the Vision Pro video. I am far more into for work than entertainment. I rarely watch TV and don’t FaceTime/Chat/etc. often. But what I do for hours every day is stand at a desk and navigate many app windows across three monitors.

The thought of a simple desk with just a quality keyboard and my MBP on it is very appealing, even at the $3,500+ price tag (cheaper than the Pro Display 😄).

How to Migrate to Rails Encrypted Attributes

This post will show you how to migrate an existing attribute to a Rails 7 encrypted attribute.

Destructuring in Ruby 3

How improved pattern matching and rightward assignment make it possible to “destructure” hashes and arrays in Ruby 3.


Use classic Rails to build rich React Redux applications with NO APIs and NO client-side routing.

Interesting project. I enjoy React for UI, but once you start needing server side data I find it hard to continue. Probably not for me, but in a pinch…