WWDC 2016

WWDC 2016

On Monday 13th June, Apple kicked off its annual developer conference by announcing new versions of each of its 4 platforms; iOS, macOS (formally OS X), watchOS and tvOS. The remainder of the week is dedicated to a series of presentations highlighting all aspects of what’s new in iOS 10 and its siblings.

Keeping It Private

privacy There are some great features coming to users of all of Apple’s devices. Photos gets some great improvements across all platforms, bringing photo searching up to date with its competitors by scanning images and learning the faces and objects found in your photos. Predictive text will be powered by Siri to give contextual suggestions based on other apps you’re using, for example addresses from a website you’ve been browsing become suggestions in Maps.  Apple News and Apple Music both get redesigns visually and internally to make getting to your content easier, and give better suggestions about new content you might like.

All of this relies on new AI/machine learning techniques to help your devices provide you with more relevant content at relevant times.

The Cupertino based outfit were keen to stress throughout all of these announcements that user’s privacy was paramount. Differential Privacy, a way of sampling, anonymising and aggregating collected usage statistics, was mentioned multiple times. There’s even two developer presentations dedicated to privacy on iOS scheduled for later in the week (“How iOS Security Really Works”, “What’s New in Security”). Capitalising on not having to bow to the FBI in the recent privacy battle with the supreme court, they are seeking to distinguish themselves as a leader in defending user’s individual privacy rights.

Opening It Up

With all the emphasis on privacy, it might seem like iOS is inevitably becoming a more locked down platform, especially compared with Android which gives developers much more flexibility to leverage system functionality and allow more interactions between apps. The main thing I took away from the Keynote and State of The Union which followed it, was that Apple have tried to combat the inherent sandboxed nature of iOS by allowing parts of your app to sit alongside content within system apps.

An App Extension is a snippet of an application that does one specific function, and can be launched from all over the system. Originally introduced in iOS 8 you have probably seen how you can share more things to more social networks, open files in non-system apps, or upload to Dropbox with UI from the Dropbox app. More technical extensions were added in iOS 9.

Chatterbox

catterbox A large part of the Keynote focussed on the most used app on iOS – iMessages. The team at Apple have created plenty of new features for users to play with, but they’ve also opened it up for us developers. iOS 10 will add new types of extension. An iMessage app can live within a user’s messages stream – but those extensions only see a restricted amount of information about the conversation of and those involved.

We developed Interchange – an app for managing a shared office space. In iOS 10 we can create a messages extension that will allow user’s to collaborate on which rooms they wanted to book, the time to book it for and any choose any extra resources they think they need.

We are working on a feature for Camden Market that will allow users to plan a visit around the market, choosing which stalls they want to go to and view it all on a map. In iOS 10 a great extension would be to allow users to launch that part of the app in a messages extension, so a group of friends planning a trip to London can collaboratively plan a visit around the market whilst chatting about it in a message stream.

It would even be possible for other apps to add features like choosing, booking and paying for train tickets with Apple Pay. In this way Apple is trying to open up the iOS experience to make end-to-end experiences, such as deciding to take a trip away, researching it, booking and paying for it, seamless.

Hey, Siri

SiriKit Since Siri’s introduction in iOS 7 it has continued to provide more functionality with each release, but only for system apps. I love making calls and dictating texts while I’m on the go, and switched from Spotify to Apple music so I could use to control music as I drive. SiriKit is brand new to iOS 10 and grabbed quite a few headlines but its not quite as open as they might imply.

Apple is dipping its toe in the water, allowing only apps which offer certain functionality a chance to integrate with Siri. Rather than just allowing you to control to your phone through a series of set phrases, Apple wants to keep Siri conversational to try and distinguish it from Cortana and Google. In this way you can create message in multiple stages: “Draft a WhatsApp saying I’m running late” – “Who shall I create it for?” – “Jonny”.

Right now this will work for messaging, VoIP and a select other few ‘intents’ and Apple will continue to add more over time. Whilst can’t get on this for our customers right now, it’s a good start and will hopefully keep the Siri experience as high quality as it can be.

Do More in Maps

The native Maps app can also be extended in iOS 10. The example they showed off in the Keynote allowed you book a table at a restaurant, book an Uber to take you there, and check its progress right from the Maps app. It’s all about providing the best experience for that service without the friction of switching back and forth between apps. As this is likely to only be available in Apple Maps, it may also help lead users away from Google Maps back to Apple’s offering.

Wrap Up

I’ve only scratched the surface here. iOS 10 introduces some great new developer tools, more functionality in Today extensions, and that’s without the advances on watchOS, tvOS and macOS. I initially came away from the Keynote lukewarm, thinking iOS 10 was predominantly a redesign of system apps with more 3D touch features for those of us shelling out for the latest kit. But as I watch more of the sessions and dive deeper into the APIs I’m seeing plenty of opportunities for us developers to stretch ourselves and help give users the most seamless experiences throughout all of the OS. I can’t wait to get started.