Seeds and Signposts
The Past and Future of Development from WWDC 2019
Author Aaron Vegh builds software for iOS, Mac and Web. In his spare time, he codes and hangs out with his dogs and family somewhere in the wilds of Canada.
Apple’s annual Worldwide Developer Conference (WWDC) featured a host of announcements for both developers and users of Apple’s platforms.
Apple covered a lot of ground, such as the new (and super-high-end) Mac Pro with its Pro Display, advances in augmented reality and machine learning tech, and our first look at new versions of operating systems for iPhones, Macs, Apple Watch and Apple TV.
But there are some standout themes that emerged from the conference; moves that show both the seeds Apple has been planting, and clear signposts that show where the company is going. Let’s dive in.
iPad Comes of Age
Since its introduction in 2010, the iPad has defined the tablet category with 100 million users as of 2019. But iPad has been hamstrung by its foundation as the same operating system that runs iPhone. While a mobile phone is great for on-the-go computing, an iPad wants to replace a desktop computer with productivity features like keyboard support, multiple windows, file management and more.
Apple is putting a stake in the ground by giving iPad its own operating system, iPadOS, and releasing features just for the tablet. It’s mostly just a name this year — though we’re going to enjoy much greater multi-window support, and improved file management right away — but you can look forward to the iPad becoming more powerful and independent from the iPhone in the coming years, and I’m personally relieved to see it happen.
Swift Fulfills its Destiny
This year Apple’s new system programming language, Swift, turns five. In that time, the language has evolved dramatically thanks to its open source foundation: the community has contributed to its success. But many developers have chafed at having to learn a new language, which comes with associated changes to how developers think about how they build apps.
This week Apple dropped the other shoe by releasing a new framework for building applications, called SwiftUI. It’s a decks-clearing rethink of how developers will assemble applications, building in a host of features that are expressible in a format that’s dramatically simpler than before.
If the demos we saw bear out in day-to-day development, our lives are about to get a lot easier! SwiftUI could only be made with Swift, and is the clearest signal yet for developers to get on board; there’s no going back to Objective-C.
The advent of SwiftUI strikes me as a declaration by Apple that developer productivity is something they’re starting to take seriously. We’ve previously suffered through the early stages of Swift with a… difficult relationship with our tools. SourceKit crashes, mysterious debugger output and trippy Storyboard behavior have been hallmarks of the Swift experience.
With SwiftUI, Apple is making interface design easy enough for way more people to get involved. And it ties right in with both a live-updating simulator, and live-debugging on device! This is clearly the future Apple is pointing developers to: UIKit and AppKit are still extant and receiving updates, but if you are in Xcode building a new app for the new operating systems, you should use SwiftUI.
Privacy is Baked In
Privacy used to be a nice-to-have feature, but in this era of social networks gobbling the finest-grained details of our everyday lives, people are becoming aware of the cost of the free services we’ve been taking for granted.
Apple has the most credibility in the tech industry when it comes to preserving user privacy, because they make their money selling hardware, not access to users. With every feature Apple introduces, it includes statements about not collecting user data: processing is done on-device, and never pushed to Apple servers. Communication is end-to-end encrypted.
This year, Apple is going even further, letting users sign up for both native and web apps with a new service, Sign In With Apple. Like the Facebook and Google buttonsyou’re familiar with, Sign In With Apple provides a private way to register for services online. The owner of the service can request your name and email address, but your email is randomized and proxied by Apple for every service you sign up for, so you can’t be traced.
It’s a great way to gain more control over the information that you give away, and we can look forward to more of this from Apple in the coming years.
Taken individually, many of the goodies announced at WWDC represent incremental improvements. Over the long term it’s easy to see the incredible differences in the platforms we use every day. That’s a train that continues to roll, and you’ll notice all kinds of neat new features when you upgrade in the fall.
But there are also, sometimes, great jumps forward that change how developers work, and by extension, the kinds of apps users get. I think SwiftUI means we’ll be getting more people able to make apps, and that is absolutely a good thing.