There were a ton of developers on Twitter upset with Apple's decision to ship iOS 14 today, with one day's warning. My initial reaction was confusion, because as Matt Gemmell clearly shows, this is the same time Apple has released the previous 8 versions of iOS. From one perspective I could see why you would think, "they should be ready to go, right?"
I agree with the sentiment that if you are nowhere near ready to ship for iOS 14 then I don't know what your plan was this year. How much more would you have been able to get done if they said it was shipping Monday next week that you couldn't get done in the 3 months since iOS 14 development started?
But on the other hand, there is more to this and it's more complicated than developers effectively waiting 'til the night before the essay is due to start writing.
Why do devs want to have updates out on the day (and ideally time) new iOS versions come out? Well, customers are going to install the update and hear about things like widgets that are flagship features. Customers are going to look for apps that have widgets, and Apple is going to feature apps that did updates to use the new features. Major sites like 9to5Mac and Techcrunch are going to feature lists of apps that use the new features, also driving sales.
So from a marketing perspective, being there on day one is huge.
So what do devs need to do to release an update? The tools have been available since June, right? Well, sort of.
iOS 14 updates need to be built using the final build of Xcode, which was also released yesterday afternoon. That means even if you were done weeks ago, you need to rebuild your app with the new version of Xcode. Odds are everything will work fine, but maybe not, and if nothing else it's more work.
Now let's talk about the development process. Companies do this slightly differently, but for many, a new build means restarting the peer review, QA, and UAT process. It doesn't matter if things worked great weeks ago, all this needs to happen after the final build is created. Asking for this to happen in less than 24 hours is a tall order for many shops.
And finally, once you've downloaded the new Xcode build, rebuilt your app and patched any new issues, run it though review/QA/UAT, and got your marketing team ready to send out materials, now you need to send the app over to app review.
Fools upload their app a day before their intended release dates, but this time it's everyone's only option. Thankfuly, app review seems to be going pretty quick today, but that's not a guaratee, and I know of a few apps who have apps in review and have not been able to release their updates yet, despite doing all the above work.
I guess what I'm saying is to have a little empathy for companies releasing apps on the App Store right now. Even if you were ready to go and just had to get your completed app ready to ship, it's still not a fun week, especially compared to what it's been like for the past decade.