Top 10 WWDC 2015 Videos

Wondering which WWDC 2015 videos are best to watch? Here are our top picks! By Tim Mitra.

Leave a rating/review
Save for later

If you weren’t lucky enough to get a “golden ticket” to WWDC this year, catching up with the videos can be quite a challenge.

There are over 90 videos available on the WWDC 2015 site; but only so many hours in the day!

You may be wondering which videos are the best “bang for your buck” with your limited amount of learning time.

To help with this, the Tutorial Team and I have compared notes, and put together this list of what we consider the Top 10 WWDC 2015 videos.

To get up-to-speed, we recommend you start with video #1 on this list and watch as many as you can after that. Let’s dig in!

Pro Tip: To watch more videos in less time, we recommend you download the videos off the WWDC site and then use the VLC media player to speed up the videos to 1.5x or 2.0x speed. Trust me, you’ll thank us later! :]

1) Platforms State of the Union

[Video Link]

Platform State of the Union

If you just have time for 1 video, this is it!

For developers, the real start of WWDC is the Platforms State of the Union session. The Keynote is a fluffy offering to surprise and delight the general public, investors and Apple faithfuls. The State of the Union, in contrast, is where the really interesting details come out.

This talk surveys the new technologies and outlines which sessions will provide more details on each technology. Highlights of the 2015 Platforms State of the Union include:

  • New features in Xcode 7 such as testing, layout, App Slicing, On Demand Resources, and Bitcode.
  • New features in iOS 9 such as Search, UIStackView, Multitasking, GameplayKit, and more.
  • New features in watchOS 2 – most notably that apps are now native, which brings a host of new opportunities and changes.

There are many more new items covered in the Platform State of the Union than I can address in this article. If you watch no other WWDC 2015 session video, this is definitely the one to watch.

2) Protocol-Oriented Programming in Swift

[Video Link]


Of all of the sessions that caught the attention of the team, Protocol-Oriented Programming in Swift stands out. Nearly every member mentioned this talk as their number one choice. Apple engineer Dave Abrahams asks us to put aside our “regular” ways of developing and follow along as he tells a story using protocol-oriented development rather than classes.

After listing off the benefits of classes, he counters those benefits with the revelation that Swift is a protocol-based language. By trading dynamic polymorphism for static polymorphism, he contends that protocols and the new protocol extensions are much better than superclasses for abstraction. Protocols add new magic and lead into the use of value types as outlined in Building Better Apps With Value Types in Swift.

3) Building Better Apps With Value Types in Swift

[Video Link]


“OOP developers are used to mainly dealing with reference types, but value types have become much more useful in Swift, and this is a great session to explore their capabilities.”Jozsef Vesza

This follows up on our #2 session video, Protocol-Oriented Programming in Swift, and demonstrates how protocols and value types are used in Swift development. The talk covers the distinction of reference types from value types and how they can be used together.

Through examples, the presenters describe how Adobe employs value semantics in practice. Several members of the team felt that this session was a must-see for all developers.

4) Advanced NSOperations

[Video Link]


“This was a surprise one for me. Basically it seems you can turn anything into an operation, which simplifies dealing with dependent processes. It also comes with a crazy example project which is definitely worth exploring.”Jozsef Vesza

This session explores NSOperations, which have been around for a long time in iOS development. This session was still helpful nonetheless, as it discussed how to use them effectively in practice.

In this video, Dave DeLong explains how NSOperations are used extensively in the official WWDC app. Login, videos, alerts and several modal operations in the WWDC app are also implemented as NSOperations.

Block Operations can be further enhanced with NSOperations and dependancies to control the flow of the app. For instance, a user could be prevented from providing feedback until they log in with their developer account. Using blocks with NSOperations ensures that this cannot happen.

Creating a single operation also creates its own dependencies, and operations can also be composed to work in concert with each other. By putting your logic inside operations, it makes it extremely easy to change your app later.

5) UI Testing in Xcode

[Video Link]


This year Apple moved UI Testing out of Instruments and into Xcode 7. Previously, testing the UI required use of Javascript and UIAutomation. Now in Xcode 7, you can perform UI Testing natively so you can find UI elements and validate their positions and attributes.

XCTest is integrated along with Accessibility, which allows XCTest to interact with your apps in the same way that a user would. It seems to me that Xcode 7 makes it relatively painless to adopt testing as a regular part of your development cycle.

The demo from this presentation shows how easy it is to record and create tests in Xcode 7 using XCTestElements and XCTestQueries. Chaining queries together can create powerful tests for your app. Including Accessibility in your apps lets less able-bodied users get the most out of your app.

Test Reports lets you review the tests run on your app. If you’ve been at all curious about creating tests for your apps, or creating better tests for your apps, then this session is for you.

6) What’s New in Swift

[Video Link]

New In Swift

Swift will undoubtedly play a huge role in the future of Apple development; and open-sourcing the Swift language in the fall of 2015 can only aid in further adoption.

This session is hosted by one of the originators of the Swift project, Chris Lattner, and engineer John McCall covers the enhancements in Swift 2.0. Of note is improved error handling as well as a host of other new features. They also cover features of the Swift Migrator to assist in moving your code to the new language version.

Compound conditions add improved pattern matching and the new guard statement builds in rich conditionals. Improvements like inline coding make switch statements and pattern matching even better in Swift 2.0. The new #available statement aids in testing for compatibility between a new feature and whether it’s available in a particular OS.

To learn more, check out the video or Greg Heo’s What’s New in Swift 2.0 for a great overview of the changes to Swift.