|< What drove Netflix to implement autoplay when viewing a movie detail view?||Do you ever borrow ideas from competing apps? >|
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.
SPONSORED Fernando's book will guide you in fixing bugs in three real, open-source, downloadable apps from the App Store. Learn applied programming fundamentals by refactoring real code from published apps. Hacking with Swift readers get a $10 discount!
Link copied to your pasteboard.