Archive for December 29, 2022

Thursday, December 29, 2022

Options in macOS Update Notifications

Isaiah Carew:

Whoever is in charge of updates, really likes dark patterns.

  • It asks a Yes-or-No question that it does [not] allow you to answer with Yes or No.
  • It doesn’t provide any sort of “snooze” feature -- so non-techy users who might not know how to update manually are faced with now-or-never situation.

I’m pretty sure Apple knows they’re doing this and it’s done to “trick” users into updating even when they don’t want to in attempts to artificially drive up numbers of people that stay up to date.

The iOS alert for new OS versions also seems like it’s trying to trick me. There is a way to decline without scheduling the update for later in the day, but it feels like a puzzle that I have to figure out each time.


I wish “auto-update” weren’t a binary switch, mostly because for apps I care about, I want to know there’s an update and read the release notes (but if I turn off auto-update, there’s just a constant huge list, and a lot of apps are jerks about telling you what’s new anyway)


It’s Often Memory That’s Killing Your Performance

Rob Napier:

My first mistake was trying to make it parallel before I pulled out Instruments. Always start by profiling. Do not make systems parallel before you’ve optimized them serially. Sure enough, the biggest bottleneck was random number generation.


Huge amounts of time were spent in retain/release. Since there are no classes in this program, that might surprise you, but copy-on-write is implemented with internal classes, and that means ARC, and ARC means locks, and highly contended locks are the enemy of parallelism.


I rewrote update and all the other methods to take two integer parameters rather than one object parameter and cut my time down to 9 seconds [from 40].

Steve Canon:

pet peeve: using “big-O” to refer to abstract algorithmic complexity. Big-O is the technique of looking at the leading term and ignoring constant factors. It is usually the right tool to analyze memory use or cache misses as well!


Apple Watch’s Camera Control

Dan Moren:

To the rescue flew the Apple Watch’s Camera app. I’ve probably used this feature a handful of times since the first Apple Watch, and probably not at all since I got my Series 7, and frankly I was blown away with just how much better the experience is than I remembered. A modern Apple Watch is now more than capable of showing a live, full-frame video stream with almost zero lag, and the screen is large enough that you can actually use it to tell if everything’s framed the way you want. You can easily take a shot and quickly check it on the watch to make sure that everybody’s eyes are open.

My experience has been different. The non-configurable 3-second delay makes this feature unusable for me. It simply isn’t enough time, and, frankly, I think it must start shooting before the 3 seconds are even up because I’ve captured photos at the start of the burst with my finger still touching the watch.

So, in practice, I use the 10-second timer initiated from the iPhone. Somehow, after walking back into position I end up without about 5 seconds of time before the photo is taken, whereas after pressing the button on the watch it feels like I have about half a second.

The photo on the watch screen is useful to make sure that everyone is in frame, and that small children are looking at the camera, but I find it too small to see whether eyes are open.

I’d like to see a 10-second option for the watch, and (for watch and phone) a way to schedule a series of 5 shots with a couple seconds in between, so that I don’t have to keep starting the timer manually and having everyone wait 10 seconds each time.

Louie Livon-Bemel:

I’ve also used this feature while doing electrical work at home. If you’re the only one home but need to turn off the breaker for a particular circuit, leave your iPhone in a room with the selfie cam pointed at a light (or under an outlet tester with an indicator light), open the Camera Remote app on your watch, then check it after flipping each breaker switch.

Saves you from running up and down the stairs to check every time.