WWDC23 SALE: Save 50% on all my Swift books and bundles! >>

What is your approach to supporting old iOS versions?

Recorded – watch the full episode on YouTube.

How do you decide when to stop supporting older iOS versions – is it just pure user count, perhaps something else?

Jordanna Kwok: There are a lot of things that come into play. Certainly we're pretty aggressive on our team – we will cut off after the second last version, so we now support iOS 13 and 14. We decided to let iOS 12 go, although that one was a difficult one because Apple decided to not allow quite a few devices to upgrade to 13 from 12, so we did have to leave behind quite a few devices – that’s always a bummer for us.

But what we do is we do look at usage, we'll make sure that we're not leaving behind tons and tons of people. If there are a lot of people still using it, we're not going to just prematurely sunset it. But if a very small percentage of people are still going to be on there, I think it's a reasonable cost for us to be able to say there are new features in 13that we can take advantage of and make the experience even better. So, then you get SwiftUI.

"We do look at usage, we'll make sure that we're not leaving behind tons and tons of people."

I'm just giving that as an example. So we have to weigh these things and balance them out, if we're leaving behind these people, are we getting more out of it? And if not then let's maybe not move forward. Then also there's a cost to supporting all of these legacy versions, especially in terms of testing and validation. So, we have a test lab and it's a pretty cool lab – there are thousands of these devices running in the lab.

So the more iOS versions you have, the more devices you've got to throw in the lab, and the longer tests take. So, say we have an automated test suite that is running through and, I don't know, validating playback or something. Now you have to validate on three iOS versions, or four. And then how about the variations of devices too? So it starts to balloon, and so that's another cost that we have to take into account.

Paul Hudson: Well, not only that but you also have many, many localizations presumably around the world, because you've got a gigantic worldwide audience now, so I’d expect the number of possible variables is just vast.

"We do still need translators and very specialized localization folks to be able to tell us whether this even makes sense within the context of the UI."

Jordanna Kwok: Yes, and testing new experiences every time we do an A/B test, we will have to go and go through all 27 languages we support trying to make sure that they all look like they're rendering properly. So we do have a lot of automation around that, we have a lot of screenshotting and things like that, that help us. But we do still need translators and very specialized localization folks to be able to tell us whether this even makes sense within the context of the UI.

This transcript was recorded as part of Swiftly Speaking. You can watch the full original episode on YouTube, or subscribe to the audio version on Apple Podcasts.

Listen on Apple Podcasts

Save 50% in my WWDC23 sale.

SAVE 50% To celebrate WWDC23, all our books and bundles are half price, so you can take your Swift knowledge further without spending big! Get the Swift Power Pack to build your iOS career faster, get the Swift Platform Pack to builds apps for macOS, watchOS, and beyond, or get the Swift Plus Pack to learn advanced design patterns, testing skills, and more.

Save 50% on all our books and bundles!

BUY OUR BOOKS
Buy Pro Swift Buy Pro SwiftUI Buy Swift Design Patterns Buy Testing Swift Buy Hacking with iOS Buy Swift Coding Challenges Buy Swift on Sundays Volume One Buy Server-Side Swift Buy Advanced iOS Volume One Buy Advanced iOS Volume Two Buy Advanced iOS Volume Three Buy Hacking with watchOS Buy Hacking with tvOS Buy Hacking with macOS Buy Dive Into SpriteKit Buy Swift in Sixty Seconds Buy Objective-C for Swift Developers Buy Beyond Code

Was this page useful? Let us know!

 
Unknown user

You are not logged in

Log in or create account
 

Link copied to your pasteboard.