Every year WWDC seems to grow bigger, and although 2018 didn’t provide the same astonishing new features we saw last year the event itself continues to be the greatest meetup of Apple developers in the world. You meet people you normally only see on Twitter, you get to ask questions to Apple developers who work on the frameworks you’re using, and you can meet a huge range of people at the many and varied social events in the evenings.
Let’s break it down…
By now you’ll have seen that the focus of WWDC this year is performance and stability, giving all of us a welcome break from the upgrade treadmill. That doesn’t mean it’s all quiet, though: new features in iOS 12 and macOS Mojave include Create ML, alert grouping, Siri Shortcuts, the Natural Language framework, and more.
Of all the new announcements, Siri Shortcuts is the one that has the power to change apps most dramatically. If you haven’t tried it out yet, Shortcuts allow you to direct the user to specific parts of your app based on custom voice commands. It’s not quite full Siri integration, but it’s a huge step forward and I’m looking forward to seeing what apps can do with it.
This year also saw the deprecation of
UIWebView, which has served us well for over a decade. I know that
SFSafariViewController provide full replacements these days, but I think we can all agree that
UIWebView has served us well and deserves an honorable discharge from UIKit.
With slim pickings on the new feature front, it won’t be a surprise to hear that some of the major sessions – ARKit, and Core ML – were packed to overflowing, so you either started getting in line early or you didn’t get in.
On the flip side, a lack of new features meant Apple had to up its game a little: there was little scope for “introduction to…” talks because they had all been covered in previous years, so as a result there were many more advanced talks: Accelerate and simd, Optimizing HLS performance, securing web content, high-performance Auto Layout, TextKit best practices, and more. Some folks were grumbling that this shifted the balance too far towards advanced talks, but it’s always going to be a difficult balancing act.
For me, three sessions stood out this year as being particularly memorable.
First, the what’s new in Swift keynote on Tuesday was always going to be good. I’ve said a lot that Swift 4.1 and Swift 4.2 are both huge releases, so it was great to see folks getting excited about them both.
Second, this year’s talk on debugging was the most advanced I can remember, including Python scripting, debugger commands in breakpoints, and accessing object pointers. You might not be able to use everything presented in the session, but these power tools are worth at least knowing about for the rare times you do need them.
Finally, my favorite talk this year was Create Your Own Swift Playgrounds Subscription. This is something I had dabbled with previously, but dismissed as being too much work. Well, this year Apple delivered a session that was exactly what I wanted to hear, showing exactly how it’s done and providing an Xcode template to smooth over the whole process.
One of my favorite aspects of WWDC is seeing folks get up on stage to present all the new things they’ve been working on – to present their work themselves and get the public credit they deserve. I realize there’s a whole team behind this at Apple, but if you watch the Playground Subscription video I think you’ll agree those are two developers who love what they do and are proud to be able to show it off – more like this, please, Apple!
Any experienced WWDC attendee will tell you that the labs are the main event, and it’s true: while you’re there you can meet folks from across all of Apple’s development teams to ask them questions directly, but as soon as it ends things go back to usual and you’re faced with trying to figure out bugs alone.
As someone who is constantly trying out a huge range of Apple’s APIs, this once-a-year opportunity is a regular source of frustration for me. However, I think I did a pretty good job of making the most of it: I spoke to folks from Xcode, Core ML, Natural Language, SiriKit, testing, accessibility, and more. I even (albeit jokingly, I think!) got invited to help out in the Swift lab – tempting!
This year Apple made the labs all standing only, much like an Apple Store experience. This should (in theory at least) have reduced the number of folks who sit around in labs once their questions are answered, although I can’t imagine it was a pleasant experience for the Apple folks working there.
One mitigating factor is that Apple made the labs look gorgeous – it really felt like they had always been there, rather than just appearing for a single week. There were monolith-style pillars identifying various divisions, Apple Store-like huge wooden tables to chat around, and a carpet so soft people it literally caused you to stop and look at your feet the first time you walk on it – although the lines were inevitably long, Apple has at least nailed the environment.
As WWDC has expanded each year, so has its social calendar: every single night has one or more social event taking place. Core Sushi and sjMacIndie kick off the week on Saturday and Sunday, but the week also includes James Dempsey and the Breakpoints on Wednesday, Apple’s WWDC Bash on Thursday, and more.
This year the WWDC Family app – now renamed “ConfFriends” – proved an indispensable way to keep track of other attendees in the area. Although its usefulness inevitably dipped during the main WWDC days when everyone congregated at the McEnery convention center, the rest of the time it was a fast and fun way to see what your friends were up to.
One of the highlights of WWDC every year is the opportunity to meet friends, both new and old. This year I got to meet so many folks for the first time, including Ankit Aggarwal from the Swift Package Manager, Brian Croom from XCTest, Quinn Taylor from Interface Builder, plus a fair chunk of the Swift team – these are folks who have helped me immensely in the past, so it was just awesome being able to meet them in person.
With only 5000 tickets available for WWDC each year, we all rely on a lottery to get a place. Inevitably this means thousands of people miss out, but that hasn’t stopped them converging on San Jose regardless – partly to meet friends, partly to attend social events, but partly also to attend the growing number of alternative conferences that take place at the same time.
This year AltConf, NextDoor, and Layers were joined by a fourth alternative: try! Swift San Jose. Together they provided a full week of presentations, workshops, and more, all within walking distance of the main WWDC activities. This allowed attendees to move freely between the events based on whatever talks interested them, and provided extra opportunities to mingle with folks.
I was lucky enough to be able to speak at both AltConf and NextDoor, but I particularly enjoyed attending the inaugural try! Swift San Jose. This took a different form from any event I’ve been to previously: by attending you were given the chance to meet and work alongside mentors from the Swift compiler community, with the goal being to help you learn about and even contribute to Swift yourself.
This was a lofty goal, but it really worked: it was incredible to see tables of people with laptops out, all hacking on various Swift improvements. Several people have tweeted out that they made their first contributions that day, so clearly this format has been a success.
As Apple prepares to lock its developers back in the secrecy of Apple Park for another year, most of us can get back to preparing our apps for iOS 12. That might be as simple as adding threaded notifications on the lock screen, but hopefully we’ll see brisk uptake of Siri shortcuts too.
Remember: if you haven’t already downloaded the beta you really ought to do so – filing radars using https://bugreporter.apple.com is the best way to help get things fixed up before the final release in September.
Paul Hudson is the creator of Hacking with Swift, the most comprehensive series of Swift books in the world. He's also the editor of Swift Developer News, the maintainer of the Swift Knowledge Base, and Mario Kart world champion. OK, so that last part isn't true. If you're curious you can learn more here.