What is one of the best things about every WWDC conference? Talk with your colleagues about how exciting those changes are, so Fran and Davide iOS developers and enthusiasts at Karumi decided to gather around and give you their feedback on top tech talks to check out at WWDC’17.
Although they didn't discuss all the talks, they recommend you to have a look at them and, for that, you can use
WWDC for macOS (https://wwdc.io), which is the one they have been using for that. It's open source, you can see its code in Github and has plenty of features that make it super easy to track which talks have you seen, mark your favorites, see just the slides, etc.
Platforms State of the Union
A nice recap of everything that is new for this year, as it was machine learning, augmented reality and so. Consider it as a nice overview. Some interesting changes you can see in this talk is the deprecation of 32 bits apps by the beginning of 2018 or how the Chinese market is increasing year by year. In this talk, they also introduced all the changes in Xcode 9 (Yay!) and how it will perform way better than previous versions, especially with large Swift codebases.
What's new in Cocoa Touch
Another must-to-see talk after every WWDC event which, this year, brings us a new NavigationController with new titles and changes to the safe area; file management, that will make it quite similar to how we handle files in mac; and specially Drag&Drop, which lots of UIViews has built-in support for, like UICollectionView or UITableView.
Localizing with Xcode 9
Every single apps developer has struggled at least once in his life with localization and internationalization. In this talk, you can find some new things that will help you with that in Xcode. To point out the most important thing for us is how to deal with plurals.
What's new in Swift
Of course we have to talk about Swift. We love Swift here in Karumi and we were super excited to see what's coming new in Swift 4. Besides the changes related to Strings, FilePrivate, enhancements in Dictionaries and Sets; for us one of the most surprising things was how easy they have made it to use KeyPaths and the new Codable protocol, that will help us a lot to deal with, for instance, JSON encoding/decoding.
What's new in Foundation
Another of the main pillars in any WWDC. If you just have time for one talk, this should be it. In this part, we talk about how the new way to deal with KeyPaths and its observable capabilities could fit our needs every day when we are connecting presenters and ViewControllers. In this talk, Apple shows again how to deal with encoding/decoding in a really easy manner with
Codable without relying in any third party, a very promising feature but definitely, we need to see it in a production environment or with polymorphic APIs.
What's new in Signing for Xcode and Xcode Server
A really lightweight talk about how with Xcode 9, the automatic signing is moved into the command line toolset, something that definitely will help a lot in how we do continuous integration. Every step in tooling for iOS development is welcomed, the faster we are able to test, deploy and distribute our apps, the better.
Updating your app for iOS 11
Introducing new UI/UX patterns in iOS 11, even though any programmer could (and should) watch it, it's more design oriented, to know what usage patterns are being enforced by Apple. It's a complementary part for "What's new in Cocoa Touch".
Is interesting to see how Apple wants to bring machine learning capabilities to our apps. Some examples of that is image recognition, objects tracking, multimedia tagging, etc; but the most noticeable thing is how easy is to introduce any machine learning model in our app and how to use it with a couple of lines of code. Besides that, a translation tool is provided to translate between some of the main machine learning model specification to the one Apple is using for this.
Modernizing Grand Central Dispatch Usage
If you want to learn how to optimize threads usage, this is your talk. For a basic app that reads from an API and display some information to the user, it is interesting, especially the beginning that will explain you how to define in a proper manner those queues that your threads will be using.
Engineering for Testability
One of the main principles here at Karumi is to produce software that works and that is highly maintainable and, in order to achieve that, we need to write tests. In this talk, Apple shows how they want developers to do unit and ui tests, and what a nice surprise! It is what we have been doing here for a long time. If you are interested in writing tests for your app (you should be) watch this talk, it's quite easy to follow and definitely, you will learn a lot.
Besides these talks, we highly recommend you to watch some other talks from WWDC'17 because all of them are pretty interesting.
We wanted to record a video (it is in Spanish, sorry!) talking about all those talks and sharing impressions about how the upcoming changes will affect us. Watch it and subscribe to our channel.