All Posts (5,293)
The Developers Who Came in From the Cold
Paul Kafasis: In 2020, the disaster foreshadowed literally one sentence ago struck. Beta versions of MacOS 11 broke ACE, our then-current audio capture technology, and the damage looked permanent. When we spoke briefly to Apple during WWDC 2020, our appeals for assistance were flatly rejected.[…]With this in mind, we engaged in further discussions with the […]
Issues Adopting Swift Testing
I’m in the process of migrating from XCTest to Swift Testing. The basic stuff is pretty easy to translate, and in many cases I don’t even need to change the code inside my test methods. I’ve long been writing what Swift Testing calls expectations in terms of my own helper functions such as eq(), unwrap(), […]
One Minute Park
Need a bit of a break. Can’t go outside? Try One Minute Park.
To Create A Magic World
The Fediverse
I am excited for what the Fediverse promises: A diverse community of interconnected social platforms. More in this blog post about the open social web.
Always Go To The Funeral
“Always go to the funeral” means that I have to do the right thing when I really, really don’t feel like it. I have to remind myself of it when I could make some small gesture, but I don’t really have to and I definitely don’t want to. I’m talking about those things that represent […]
Take Control of Apple Media Apps
Take Control (via Kirk McElhearn): Back in 2019, Apple replaced iTunes for Mac, iOS, and iPadOS with three apps—Music, TV, and Podcasts—with audiobooks handled by the Books app. Take Control of Apple Media Apps is your guide to this post-iTunes world. Covers macOS 15 Sequoia, iOS 18, and iPadOS 18 or later, plus Apple Watch, […]
Forked
Drew McCormack (Mastodon): I’m launching a new Swift framework called Forked for working with shared data, both on a single device, and across many.[…]The merging that @ForkedModel provides is pretty powerful. It does property-wise merging of structs, and if you attach the @Merged attribute, you can add your own custom merging logic, or use the […]