SwiftUI main thread hang detector

Illustration of the MacOS Spinning Pinwheel of Death cursor

This is just a little snippet that is quite useful for reporting when your GUI thread (the main thread / actor) hangs for a significant amount of time. There are numerous heavier-weight tools for analysing this sort of thing, but I’ve found that this simple monitor does what I need most of the time. You… Read more

The most unpopular popular websites

Screenshot of the Kagi Search home page, showing a very clean, simple page with essentially just the logo, the mascot Doggo, a text field, and a Search button. Very reminiscent of what Google Search's home page used to look like a long time ago.

Tonight I decided to give Kagi a try, after hearing John Gruber mention it a few times on Daring Fireball. I’ve used a mix of DuckDuckGo and Bing for over a decade now, and occasionally will still try Google in desperation. What I’ve noticed is a decade-long trend – accelerating in the last year or… Read more

Aussie student interns savour Cupertino

That was the curious choice of grabline for the article in Wheels for the Mind, the AUC’s magazine, about the Apple internship experience had by Ashley Butterworth, Brett Brooks, and myself. Wheels for the Mind 2006 (Autumn) (cached) They even put a picture of me on the cover, which seems mean [to their readers]. This… Read more

Mac app sandboxing interferes with drag & drop

Failed to get a sandbox extension Right from there, you know you’re going to have a bad day. 😔 Then you try to actually use the file dropped on your app, and you get: Upload preparation for claim 1C0F9013-4DEB-4E5D-8896-F522AA979BA6 completed with error: Error Domain=NSCocoaErrorDomain Code=513 ““Example.jpg” couldn’t be copied because you don’t have permission to… Read more

No more Dark Mode support

For about a month I was using WP Dark Mode. I don’t really recall how I thought upon it to begin with, but I vaguely recall choosing to install it because it seemed kind to support dark mode. Even though I don’t use it myself, it does seem to have a non-trivial following. And I… Read more