Few occupations are so rigorously tied to an unknown calendar. Indie developers know only too well that around this time of year Apple will release the next major versions of its operating systems. While users of their products are vacationing far away, the indie developer is stuck in front of their Mac trying to make sense of presentations at the last WWDC, as they prepare their apps against this hidden calendar.
Apple’s internal schedule is applied most strictly to iOS and its devices, come what bugs or coronaviruses may. Its launch event had been decreed for 15 September, at which it was revealed that iOS 14 and its sisters (all except macOS 11) would be released the following day. The fact that Apple didn’t have time to release a Golden Master, nor to give third-party developers opportunity to submit mature releases to the App Store, didn’t even merit consideration.
In the normal run, once all the important bugs had been fixed in its betas, iOS 14.0 would have been provided to developers as a Golden Master, the version which Apple felt was ready for general release. After a week or so as a Golden Master, if no significant issues had been discovered, that would be deemed ready for the public.
Developers are thus given the opportunity to test their apps against the version which Apple intends for release, fix any remaining bugs, and build their intended release version. This is particularly important for iOS and iPadOS apps, which can only be distributed through Apple’s App Store. Once the developer has arrived at their release version, they then have to submit that app for review by Apple, and only on successful completion can they offer the new version to users.
In skipping straight from a beta-release to final release without a Golden Master, and in the space of just 24 hours, Apple was – albeit unintentionally, I’m sure – setting up its third-party iOS and iPadOS developers to fail.
At the same time, the crucial tool for those developers, Xcode, did an about face. What had been the beta-release of Xcode 12.0 suddenly forked into a release version of 12.0, which again never reached Golden Master and dropped support for Big Sur and Apple Silicon, and leaped forward into the next Xcode beta, now numbered 12.2 and released two days after iOS 14.
As millions of users were upgrading their iPhones to iOS 14, its third-party developers were in for another of Apple’s treats: suddenly, the first beta of iOS 14.2 was released to them for testing. Not 14.1, which presumably fixes some of the bugs already known to have missed the premature release of 14.0, but 14.2. In just three sleepless days and nights, iOS developers had been shot from 14.0 beta to 14.2 beta.
Somehow Apple managed to expedite product review for tens or even hundreds of thousands of apps, although I suspect that review wasn’t as thorough (pernickety, according to many developers) as usual.
On top of that, those developers who also have macOS products faced the release of the seventh beta of macOS 11.0, and the next beta of Xcode 12 – sorry, I mean 12.2 as it had now become.
Yet Apple ploughs on with its rigid adherence to a release calendar which it won’t share with its developers. It has just done its utmost to belittle every third-party developer in the eyes of users, and can’t even pause to apologise.
Despite the events of the last week, Apple still cares about its developers. That may seem a completely contradictory and incompatible statement, but there’s ample evidence from exchanges between its engineers and those encountering problems in Safari version 14.0, for example, which was also released suddenly in the midst of this maelstrom. We’re still being encouraged to file Feedback reports, although all too often those are apparently ignored, presumably because the engineers are just as confused as we are, and may already have fixed the problem in a beta to be released suddenly in a couple of days. Or maybe it’s in the surprise update long since scheduled for next week.
To summarise last week for the developer, in the space of just three days, Apple delivered:
- iOS 14.0, straight from a beta-release without any Golden Master, with less than 24 hours notice;
- iOS 14.2 beta 1, skipping 14.1 completely;
- iPadOS 14.0, straight from a beta-release without any Golden Master, with less than 24 hours notice;
- watchOS 7.0, likewise;
- tvOS 14.0, likewise;
- macOS 11.0 beta 7, which now needs to be tested against on both Intel and Apple Silicon Macs;
- Xcode 12.0;
- Xcode 12.2 beta 7;
- Safari 14.0.
With a total of over 130,000 employees, thousands of them engineers, that’s quite an achievement for Apple. For an indie developer, it’s a tsunami of work whose effects remind me of Tom Lea’s painting of a Marine during the amphibious assault on the island of Peleliu in 1944.
If they’re not yet comatose from exhaustion, iOS developers must have assumed that same 2,000 yard stare.