Archive for March 12, 2019

Tuesday, March 12, 2019

What’s Wrong With iOS Multitasking

Fraser Speirs:

Now that we have four operations that are essentially the exact same physical gesture but differentiated by the length of time the gesture is performed for, I am concerned that many users will become quite confused.


I have already had several very savvy iOS users tell me that they simply thought it wasn’t possible to multitask an app that wasn’t in the Dock.

I know that there are a number of ways to do this but none are very discoverable and some are very difficult to execute.


I have observed a number of friends on Twitter posting screenshots of their iOS 11 app arrangement which can probably best be described as “everything in the dock and a junk drawer folder at the end” just so they can be guaranteed that the first path to an app (going via the Dock) will always yield a result.


In practice I found that, too often, I needed to create arbitrary pairs of apps and this caused all my bespoke app pairings to be dismantled in the background. This gave me a sense of instability in the iOS 11 UI. Things I had built were being dismantled invisibility and they were not the way I had left them. This is another of these “functional cliffs” - a short term use of an app leads to the invisible dismantling of a pairing in the background.

Software-ICs, Binary Compatibility, and Objective-Swift

Marcel Weiher:

Swift recently achieved ABI stability, meaning that we can now ship Swift binaries without having to ship the corresponding Swift libraries. While it’s been a long time coming, it’s also great to have finally reached this point. However, it turns out that this does not mean you can reasonably ship binary Swift frameworks, for reasons described very well by Peter Steinberger of PSPDFKit and the good folks at instabug.

To reach this not-quite-there-yet state took almost 5 years, which is pretty much the total time NeXT shipped their hardware, and it mirrors the state with C++, which is still not generally suitable for binary distribution of libraries. Objective-C didn’t have these problems, and as it turns out this is not a coincidence.


Swift is designed as a programming language, not as middleware with language features. Therefore its modularity features are an add-on to the language, and try to transport the full richness of that programming model. And Swift’s programming model is very rich.


Did I mention that Objective-C is middleware with language features?


Update (2019-03-13): Peter Steinberger:

Given the above constraints, PSPDFKit will likely never fully move to Swift. First and foremost, we still have many clients with applications built in Objective-C. There’s rarely a good reason to do a rewrite of battle-tested code, and we cannot force our partners to rewrite just for the sake of rewriting. Secondly, moving to Swift would heavily limit our subclassing system — currently, developers can register almost any exposed class and offer a subclass that PSPDFKit will initialize internally in place of our default base class. But seeing as Swift classes can no longer be subclassed in Objective-C, these capabilities would be greatly restricted if we switched to Swift.

This limits us to using Swift internally — which is the worst kind of Swift usage.

Bad Release Notes

Bad Release Notes:

Bug fixes and performance improvements

Dedicated to shaming apps for their bad release notes.

Submissions are welcome by email or Twitter.

Damien Petrilli:


“The goal is to use this site as a reference when Apple deny your App update because of the release notes being not descriptive enough”


Update (2019-03-22): Jeff Johnson:

* We had to ship an update to change the Description field in App Store Connect.

Update (2019-04-10): Tanner Bennett:

Why are App Store change logs even mandatory if companies can put whatever the hell they want in them? Just make them optional so we can be spared the frustration of wasting our time reading these void ramblings.

Update (2023-03-02): Adam Chandler:

It’s official. 2023 is the year the App Store ChangeLogs are dead.

Over 45 updates today and none of them indicate what changes were made. This has been getting worse for years.

My pet peeve is when I update which is a destructive action only to discover a feature I used is missing or there are new ads or features that I don’t want. Time to turn off auto updates. If you don’t publish what changed, I’m not going to update.

Update (2023-07-26): Jesse Squires:

why put official release notes in the App Store when a random employee can share them on social media

Update (2024-02-07): Paul Haddad:

I had 30+ app store updates pending. A whopping 2 of them had release notes that weren't some form of “bug fixes and performance improvements”.

Classical Music on Apple Music

Mitchel Broussard:

Last August, Apple Music was updated with a new section in Browse curated by Deutsche Grammophon, one of the biggest classical music labels in the world. While classical music fans welcomed the specific focus of the area, many of our readers quickly pointed out the numerous issues that remain for classical listeners on a daily basis within Apple Music, and the fact that they've been there since the launch of the service with seemingly no correction in sight.