With the dust still settling from WWDC 2016 here is my guide to the must watch sessions for iOS covering what is new in App Frameworks, Swift, Xcode 8, Adaptability and Design, System Frameworks, Security and Networking and Media. There is a lot to learn and I did not even include watchOS or tvOS.
State of the Union
- Platform State of the Union If you did not watch it yet start with the platform state of the union for an overview of the changes across iOS, macOS, tvOS and watchOS.
App Frameworks
-
Session 205 What’s New in Cocoa Touch After you have watched the platform state of the union this would be a good second session. It summarises the key changes in Cocoa Touch and tells you which sessions to watch to dig deeper.
-
Session 213 Improving Existing Apps with Modern Best Practises A mix of topics with the aim of reducing technical debt. From dropping support for old versions to filing bug reports and using dependency injection.
-
Session 219 What’s New in UICollectionView in iOS 10 Making collection and table views smooth with a new life cycle for cells and cell pre-fetching. Improvements to self-sizing cells. UIRefreshControl also now works on collection views and scroll views.
-
Session 242 What’s New in Core Data Query generations, concurrency, NSPersistentContainer to remove the boilerplate setting up a stack, NSFetchRequestResult protocol, NSFetchedResultsController with data source prefetching, automatic subclass generation and more.
-
Session 228 A Peak at 3D Touch UIPreviewInteraction for custom peek and pop UI
-
Session 216 Advances in UIKit Animations and Transitions Still looks complicated to me but you can build more interactive and interruptible animations.
-
Session 225 Extending Your Apps with SiriKit The long awaited Siri API.
-
Session 226 What’s New with CloudKit Share private data between iCloud users.
-
Session 224 iMessage Apps and Stickers, Part 2 Not sure I will be creating any stickers but I expect the iMessage app store will be popular when iOS 10 launches later this year.
Swift
A lot has happened with Swift in the last year. What is interesting is that given the open source nature of the language we knew most of the news with Swift 3 and the great API renaming before WWDC. Now we can listen as Apple engineers including Chris Lattner explain it all:
- Session 402 What’s New in Swift
- Session 403 Swift API Design Guidelines
- Session 207 What’s New in Foundation for Swift
- Session 408 Introducing Swift Playgrounds
- Session 419 Protocol and Value Oriented Programming in UIKit Apps
- Session 416 Understanding Swift Performance
- Session 720 Concurrent Programming with GCD in Swift 3
- Session 415 Going Server-side with Swift Open Source
If you are familiar with Swift you can skip this one but if you want a good Swift tutorial video start here:
Developer Tools
Another WWDC means another version of Xcode. The sessions covering what is new in Xcode 8:
-
Session 401 What’s New in Xcode App Signing Apple has heard the disturbance in the force and has rebuilt the code signing infrastructure.
-
Session 406 Optimizing App Startup Time The first half is heavy going but
DYLD_PRINT_STATISTICS
looks useful. -
Session 410 Visual Debugging with Xcode Debugging memory leaks and retain cycles is now integrated into the Xcode debugging workflow.
-
Session 414 Using and Extending the Xcode Source Editor Xcode Extensions
-
Session 412 Thread Sanitizer and Static Analysis New thread sanitizer and improvements to the static analyzer to find localization and nullability violations.
Some extra sessions if you have time:
This last one is for those looking for an introductory video tutorial on Xcode:
Adaptability and Design
These sessions are easy to overlook in the search for new API’s but I think they are some of the most interesting. The highlights:
-
Session 801 Inclusive App Design Great tips you can use when designing apps for everybody including the color contrast calculator.
-
Session 803 Typography and Fonts Introduces SF Mono the new default font for playgrounds and Xcode. It also walks through how to use a custom font with the dynamic type system.
-
Session 407 Auditing Your Apps for Accessibility The new accessibility inspector for checking your app for missing accessibility.
-
Session 233 Making Apps Adaptive, Part 2 These two sessions don’t cover much that is new in iOS 10 but are a solid background in the techniques you can use to build adaptive apps.
-
Session 236 What’s New in Auto Layout There is not so much that is new with Auto Layout in iOS 10. The main news is the NSGridView on macOS which maybe will come to iOS in the future. In fact this session starts surprisingly with a demo of how to incrementally adopt Auto Layout using springs and struts for simple resizing. More interesting is the layout feedback loop debugging tool.
-
Session 238 Measurements and Units New Foundation classes for measurements and units.
To go further but with some duplication with earlier sessions:
- Session 201 Internationalization Best Practices
- Session 202 What’s New in Accessibility
- Session 805 Iterative UI Design
Also don’t miss the updated iOS Human Interface Guidelines
System Frameworks
-
Session 708 Advanced Notifications A new API that unifies local and remote notifications and adds service and content extensions.
-
Session 701 Introducing Apple File System This one is not directly for iOS yet but worth a look to get a preview of what is coming to all Apple platforms next year:
Security and Networking
-
Session 706 What’s New in Security ATS will be mandatory by end of 2016 and can now also enable certificate transparency.
-
Session 711 NSURLSession: New Features and Best Practices NSURLSession support for HTTP/2, network statistics delegate
-
Session 709 Engineering Privacy for your Users All access to protected data must now be declared in Info.plist with a purpose string. Apps will crash in iOS 10 if access is not declared.
-
Session 705 How iOS Security Really Works If you prefer not to read the iOS Security Guide
Media
I am most interested in experimenting with the new speech recognition API but there are also changes to the photo and audio frameworks:
-
Session 509 Speech Recognition API Live or pre-recorded audio speech recognition using same technology as Siri and keyboard dictation for over 50 languages and dialects.
-
Session 501 Advances in iOS Photography New AVCapturePhotoOutput includes ability to capture live photos.
-
Session 503 Advances in AVFoundation Playback Automatic waiting for buffering, loop playback, wide color and some best practises.
-
Session 505 Live Photo Editing and RAW Processing with Core Image New built-in Core Image filters, performance controls, raw image processing, editing live photos.
That is a lot of work!
Watching WWDC Videos takes a lot of time even if you run them at 2x! I hope this has given you some pointers on where to start based on your own interests and needs. Stay subscribed as I dig deeper into iOS 10 in the coming weeks and months.