WWDC 2017: Helping You Get Things Done
This year at Apple’s Worldwide Developers Conference (WWDC), we saw the continued evolution of Apple’s operating systems. Pundits are often quite critical that the announcements aren’t revolutionary enough, but the annual tradition of steady improvement is perhaps their biggest competitive advantage. These easy-to-adopt yearly OS releases give consumers confidence that whatever they bought in the past few years is always going to get better, and it gives us as developers the timely insights we need to continue to build towards the future.
Here are a couple of highlights:
- The iPad continues to become a more compelling productivity device.
- iMac is finally going Pro and will be getting a workstation-class upgrade later this year.
- The whole lineup of Macs received the latest Intel processors.
- External graphics processing enables AR and VR, and maybe even gaming.
- We’re intrigued by what might be possible with the HomePod. (When do we get developer access?)
- 32-bit apps are being removed. It’s all 64-bit only now, so it’s time to update anything old.
- We’re seeing major changes to the App Store to increase discoverability.
You can see the whole keynote on Apple’s website.
Xcode 9 Improvements
For developers, including our Nerds, the real excitement came a couple of hours later at the Platforms State of the Union. The major focus for Apple was on underlying technology and refinements, which means that the tools we work with all day every day received lots of love. If Apple delivers on the features they showed, it is not just hype: Xcode 9 might truly be the best version ever.
Let’s start with the source editor, which was rebuilt entirely in Swift with an eye toward performance. It brings support for Swift 4, giving us improvements to Strings, the Encodable protocol, keypaths and more. This delivers orders-of-magnitude-level performance improvements in everything from compilation times to build sizes.
Xcode 9 allows a relatively painless migration to Swift 3.2, and promises the upgrade to Swift 4 should be much less painful than the upgrade to Swift 3. We ran a couple of test runs, and so far that looks to be true.
Fewer Pain Points
This latest release of Xcode also removes some pain points from debugging by giving us more convenient errors, warnings and fixes. Seamless scrolling and instant jumps were a couple of highly touted features to make the interface feel much snappier. Plus, we now have the ability to intelligently highlight blocks of text—a great feature borrowed from Swift Playgrounds.
The biggest applause from the whole event was from something many developers have been begging for: refactoring.
- Xcode will finally allow extracting code into new methods, renaming methods and classes, and generally keeping code more readable.
- There are significant debugging improvements to help us visualize the view hierarchy.
- There are also new sanitizers and compiler tools to detect mistakes.
- Apple even plans to open-source the refactoring engine.
Then, just to show they love us, Apple created deep integrations with GitHub, which might tempt a few of us away from the alternatives. Maybe.
The integration looks promising for simple usage, but advanced users are likely to stay committed to the command line in order to access the full power and danger of Git.
You can now have multiple simulators going at the same time, so testing a build across a variety of devices won’t take nearly as much time. Did I mention that you can now build, install and debug your apps wirelessly?
Xcode 9 also lays the groundwork for first-class, native support in Xcode for Swift packages, thanks to the preview version of its new build system.
Taken as a whole, these are significant productivity gains that should greatly improve your day-to-day work flow. Xcode is going to be far less painful to learn, teach and use. We can’t wait to start building with it. We’ll be kicking the tires on Xcode 9 this week, and let you know how it goes.
Every year, we can also count on a number of new APIs and Frameworks, and this year didn’t disappoint.
A few of the highlights that we’ll be learning more about this week include:
- Continued expansion of SiriKit and all new intents
- Support for Drag and Drop (which looked quite easy to add)
- Native Camera support for QR codes to allow deep links in your app
- Metal 2 both for graphics and for advanced AI
- Vision to support face, object, depth and other advanced image detection
- Core ML to integrate machine learning models into your app
- ARKit for making virtual objects in the real world
Anything You Can Do, You Can Do Better
In my opinion, if you can summarize all these improvements, you need only to look at the partnership between Apple, SAP and IBM. Most all of these improvements affect one key thing: helping people get things done. The tagline for the iPad is “Anything you can do, you can do better.”
Productivity seems to be Apple’s focus going forward. The presenters made a case that everything from drag and drop to advanced AI powered vision detection and augmenting reality, will enable new ways of working and perhaps even new categories of apps.
The workplace is the next great frontier for mobile transformation. You can create new workflows, improve old ones and automate mundane tasks for your customers. The amazing consumer experiences that Apple has delivered have finally pushed their way to a world where a DOS order screen can still be found.
This holds great promise for significant improvements to productivity. Apple is building the technology, SAP is unlocking the data, IBM has the servers, developers have the tools, and we all are going to get to continue to ride the wave that powerful, connected, mobile devices have brought us over the past 10 years.
We will be here at WWDC all this week and our Nerd team will have more details as we find out more about everything that Apple is announcing. Stay tuned.