NEW: Start my new Ultimate Portfolio App course with a free Hacking with Swift+ trial! >>

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

Hacking with Swift is sponsored by Stream

SPONSORED Check out Stream's cross-platform open source chat SDK on GitHub! Write once and deploy your app with fully featured chat UI on iOS and macOS.

Go to GitHub

Sponsor Hacking with Swift and reach the world's largest Swift community!

BUY OUR BOOKS
Buy Pro Swift 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 (Vapor Edition) 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 Server-Side Swift (Kitura Edition) 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.