“Pfizer Lyme vaccine shows more than 70% efficacy but misses key statistical goal”

Finally Finishing Our Cord-Cutting Project

Last time on…

You might remember my post from a couple years ago about “cutting the cord”, but needing a source for watching Jeopardy!, which is a non-negotiable for our household. Since then, Jeopardy! has started being streamed on Hulu and Peacock, although the episodes are only available the day after they air, and they only keep a week’s worth of shows available. Being a completionist, this is, of course, unacceptable.

I left that previous post having purchased an antenna and HDHomeRun, which is a four-tuner receiver that takes over-the-air broadcast signals, decodes them, and makes them available on a network. I also use Plex, which provides a channel guide, live TV capability, and which can record those broadcasts like a completely digital DVR. Plex has apps for the Apple TV and other Apple devices, which is what we primarily use at home.

An incomplete installation leads to tears

After that, I failed to make a good, permanent antenna installation, and the whole thing was too flaky to count on. We live just below the top of a decent hill, but unfortunately on the wrong side of it, as far as reaching our local station goes. We recently had a shed/office built in our backyard, and it is positioned as far up that hill as is possible. As part of the shed project, I ran cat 6a cable to the shed, connected to our home network, so there was now connectivity up there. To top it off (no pun intended), a friend who knew of my antenna project donated an antenna mast that he no longer needed to the cause.

A mast on a hill, PoE, and joy

Finally, a couple of weeks ago, we installed the mast and antenna on the new structure. While there is power available in the shed, the network switches in question provide power-over-ethernet (PoE), which I wanted to use; it’s just one less thing exposed to the elements if I could eliminate the HDHomeRun’s power plug. Unfortunately, the HDHomeRun doesn’t accept PoE as a power source, so I found an appropriate PoE splitter on Amazon. The splitter takes ethernet in, splits the data and power, providing a data-only ethernet cable and a separate DC output. There was a minor issue of the barrel plug not being quite right, which a small adapter took care of.

And it finally works reliably! We now get a much more stable signal, have a clean installation with the fewest cables I could muster, and as much Jeopardy! (and other shows, of course!) as we can record, all stored on my network-attached storage. Now we can not only continue enjoying our cable-free situation, and are not beholden to whatever service does or does not carry our favorite dinner-time game show.

Now that I have that mast…

This has sparked a couple of other projects that can take advantage of that mast. First, a friend has started experimenting with MeshCore, a chat layer implemented on a mesh radio system. She gave me a receiver (I’m stmpjmpr on there, if you want to say hi), and I now have some parts coming to build a repeater that I’ll hang up on that mast. After that, I need to pick back up on a weather station in bought awhile back. It’s still in its box…that will need to change. More to come!

MacBook Pro with M5 Max (Early 2026)

IMG_1337.jpeg

As I mentioned earlier, I ended up ordering a new MacBook Pro. I got the 14″ model with the M5 Max, 64GB RAM, and 2TB storage. I’d have loved to go to 128GB and/or 4TB, but I just had to draw the line somewhere—this was $4300 as it was. But never mind that: This machine is a beast.

I previously had a Mac Studio with M1 Ultra and, purely subjectively, this MacBook Pro beats it hands down. The only thing the Mac Studio did better was keep quiet—the fans on this one do spin up when I’m building and running the test suite on my app in Xcode. But remember how I said that the Xcode work was kicking my MacBook Air’s ass? Well, while the MBP does spin up its fans and get all of its cores going at 100%, it does so for just a few moments, whereas the MBA took minutes at 100%. The MBA is a great machine—more than enough for just about anything, really—but this machine trounces it when the going gets rough.

I just read Antonio G. Di Benedetto’s review of the MacBook Pro at The Verge, and came away a little confused. The report card is almost all “A”s, and the review itself is very positive, but the review score is an 8. Based on my week of owning it and putting it through its paces, I’d call it a 9. If they allowed fractional reviews, I’d probably even go to 9.5.

The new MacBook Pro is still fast as hell

How big of an upgrade is it for M1 Pro / M1 Max owners?

www.theverge.com

The only dings I’ve come up with are the cost, which is significant, especially once you really start to get to the top spec in RAM and storage. But this machine really is at the top of its class. And I don’t mean that just as a Mac, but compared to anything out there: there’s not a Windows- or Linux-based machine I’ve come across at any price that matches this quality of this thing physically, with its Retina display, its dare I say perfect rtrackpad, the excellent keyboard, and solid, tank-like aluminum unibody. And the performance is up there with the absolute best as well. So, of course it commands a premium. Still, I’d be willing to knock some tenths of a point off for its eyebrow-raising price tag.

The fan noise and heat are likewise worth a minor deduction, but the machine stays cool and quiet until you’re really pushing it to its limits, so I find it acceptable. The higher-end Windows machines I’ve used spin up their fans way more quickly and loudly than the MBP does, and they just don’t feel nearly as solid or premium.

I might argue, if I were picking nits, that the design is getting a little long in the tooth, and there’s a rumored redesign coming with the M6 generation, that might bring an OLED-based screen among other changes. That would be a welcome update, but this current form has been refined to near perfection, and I can’t bring myself to even consider deducting any credit due to it.

And that’s about it for the cons list. I don’t have a ten-point ratings scale, and I don’t give fractional stars, so I have to call it five stars. It’s truly the best Mac I’ve ever used (and I’ve used a lot of Macs), and there’s a strong argument to be made that it’s the best laptop ever made, period.

“Hundreds of Millions of iPhones Can Be Hacked With a New Tool Found in the Wild”

“The Shingles Virus May Be Aging You More Quickly”

“Codegen is not productivity”

Troubleshooting Hangs and Lag in a Native Mac App

As I’ve written, I’ve been creating a Mac app to create and manage this site, and I’ve been dogfooding it here for about a week. Because, of course there’s nothing better than using your own software day-to-day to find out exactly what needs to be done to make it better. I’m an experienced developer, but a relative novice at making Mac apps. I’ve been having places where the UI lags or hangs for a bit, and I’ve not used Instruments, Apple’s profiler, before. I asked Codex to walk me through how to troubleshoot these, and thought I’d write some notes in case it would help anyone else out (and I’m sure I’ll come back to these notes myself).

The general process is: initial set up of the build, running for profiling, recording a run of the behavior in question, and giving that run result to Codex (or whatever, including looking at it yourself, of course) to improve. Here’s more detail:

Setup

  1. In Xcode, select the scheme for your project.
  2. Go to Product -> Scheme -> Edit Scheme….
  3. Select Profile on the left.
  4. In Info, make sure Build Configuration is Release.
  5. Close the scheme editor.
  6. Save any work and quit any extra copies of the app.

Start a Trace

  1. In Xcode, choose Product -> Profile.
  2. Instruments will open and show a template chooser.
  3. Pick Time Profiler.
  4. Click Choose.
  5. Click the red record button in Instruments.
  6. Instruments will launch your app.
  7. Reproduce the lag or hang behavior in your app.
  8. Stop recording.

Read the Trace

  1. Optionally, use the Hangs track to identify Hangs by severity and focus on one, or a region.
  2. In the main Instruments window, click the Time Profiler track.
  3. Open the bottom pane if needed so you can see the call tree.
  4. Turn on these options in the call tree area:
    1. Invert Call Tree
    2. Hide System Libraries
    3. Separate by Thread
  5. Click the Main Thread row.
  6. Look at the hottest entries by Self Weight and Weight.

Round Trip With Your Favorite LLM

Or do it yourself, of course! In my case, I started giving screenshots of the Instruments window with the Main Thread row details revealed to Codex. Codex has been doing a great job of identifying and eliminating hangs, and getting the app feeling snappy again. I had one time where a session went through too many back-and-forths and I had to abandon and start over, but I’d learned enough from the first session to guide Codex more effectively the second time, and got to the bottom of the issue.

Conclusion

Doing this with me driving the loop is time consuming, but illustrative. I’ve learned from Codex as I’ve been driving Instruments and my app, closing in on the next hang or lag, one after another. It’s been a great way to get to the bottom of those things that make the difference between a frustrating interaction and a delightfully quick one.