There’s no getting around the fact that this year’s iOS and macOS software releases have been much buggier than normal. But why?
David Shayer, a former Apple software engineer who spent 18 years at the Cupertino tech giant, has a few ideas that could explain the problems with iOS 13 and macOS Catalina.
To be clear, iOS 13 and macOS Catalina aren’t “breaking” for every user. But if you haven’t experienced any significant bugs on the platform, consider yourself lucky.
While it’s impossible to track how many users are actually impacted by serious bugs and glitchy behavior, there are enough reports to suggest that Apple’s 2019 software updates are much buggier than normal.
If you need evidence of that, just consider the company’s rapid-fire release for iOS 13. We’re now on iOS 13.1.3 and the software has only been out for about a month. That’s a pretty compressed timeline, especially when compared to iOS 12.
Many users also ran into problems even during the installation phase of macOS Catalina, which lead Apple to release a Supplemental Update a week after its initial launch.
But there are still ongoing problems with macOS Catalina, such as significant syncing issues with both iCloud Photos and Contacts.
This Might Be Why
So iOS 13 and macOS Catalina are buggy. But in a post for Apple blog TidBITS, Shayer gave his thoughts on why that might be the case.
Here are some of his points.
- Too Many Features: As Shayer points out, Apple was pretty “aggressive” with the number of features in its new updates. That leads to many features, like iCloud Drive Folder sharing, being postponed. But it can also lead to features that simply don’t work as intended when the update is actually launched.
- Crash Reports May Be Inaccurate: Apple’s crash reporter can alert the company of significant bugs. But, as Shayer notes, it only tracks bugs that actually crash the system. The crash reporter won’t catch less “significant” bugs, like the iCloud photo sharing — leaving that responsibility to human testers.
- Bug Triaging: Apple organizes the bugs it catches based on the severity. But it also fixes those bugs based on development cycles. Close to a shipment date, that can lead to only the most serious of bugs (like those that can cause crashes or data loss) actually getting fixed in a timely manner.
- Old Bugs May Slip Through: On a related note, Shayer says that older bugs — ones that aren’t a “regression” — may not get patched at all as the software moves forward.
- Automated Tests Aren’t Used Very Often: Apple uses automated testing for some system features, like battery performance. But Shayer says it’s ultimately “highly” and “probably too” reliant on manual testing.
- Apple’s Ecosystem Is Complicated: This one goes without saying. Apple sells a lot of different products and services and they’re all vastly complex things. This makes both development and testing harder.
What Can Apple Do?
First off, Apple is likely to deal with the problem by issuing more bug fix updates this year than in past years. That should help to tighten up the systems in the short term.
But the company needs some other way to address buggy software over the long term, especially since slipups can end up hurting Apple’s reputation for quite a while.
What that could look like is anyone’s guess. Maybe Apple could extend the lifecycle of a software release past 12 months to allow more testing of new versions. Alternatively, Apple could only release significant new features every other cycle — leaving the ones in between for stability improvements like iOS 12.
In any case, Apple’s new software updates have a bug problem. The company is clearly aware of it. The only question is how it’ll ultimately choose to fix it.