This morning Apple announced the next versions of their desktop operating system OS X “Yosemite” (10.10) and iOS8 at the keynote of their annual Worldwide Developer Conference in San Francisco. There were several BIG things that make this keynote special but I’m going to focus on just three.
Continuity
I have an iPad, iPhone and Macbook Air (yes Apple love people like me) and I utilise them all in different use-case scenarios. Regularly I’ll be working on a Pages document on my Mac only to have the kids invade the study to work on a school assignment and I have to leave the room for my own sanity. At that point firing up the iPad and continuing on the couch works but you have to wait for the Mac to Sync to iCloud then the iPad to sync Pages to iCloud etc. When running Yosemite and iOS8 it will show an icon on the lock screen that allows instant access to the app and document you are currently working on so you can instantly keep working back and forth. Of course it demos well, but time will tell just how well it works in the real world.
More than that though, an idea implemented a few years ago with the ill-fated TouchPad and Palm/HP-Pre was the ability to make and receive phone calls between different devices. That plus SMSs integrated into iMessage will also come to the Mac/iOS such that it’s possible to make/receive phone calls at your Mac, iPad or iPhone as you desire. This sort of integration shows that Apple is trying to pull their pieces together and help users, but as always, excited though I am, the true test of how well it will work will be when it gets out into the real world.
Metal
Although not a consumer-facing feature it has been a long complaint that navigating the OpenGL|ES layer robbed some performance from hard-core gaming engines on iOS: this despite having phenomenal CPU/graphics hardware on the devices themselves. “Metal” reduces the overhead significantly and has allowed either a partial or full port of desktop gaming engines onto iOS. In the longer term this will mean more desktop-class games can more easily come across to iOS. That can only be a good thing especially when you consider an AppleTV with an A7 chip in it at some point in the future. I’m certain there are improvements to the game controller situation in the works as well however there was no mention of that during the keynote it’s clear enough to me that Apple is stacking the deck and preparing for a push into serious gaming. It’s only a matter of time.
Swift
Saving the best for last. There is ZERO doubt that this is the biggest news of the day and it’s not a consumer facing feature.
Objective-C is dead.
After 20 years of use and abuse, Objective-C moves aside and Apples brand-new programming language for their platforms was unveiled and it is called “Swift”. They’ve been working on it for years (as you would expect) and it can compile alongside Objective-C libraries and uses the same XCode development tools that are getting better all the time. Key features that jump out at me: Multiple return types, Namespaces, Operator overloading and best of all: concise syntax. The less code you write the better and ultimately since it’s built on LLVM and ARC, development should get a lot easier and a bit shorter. Add to that the new “Playground” feature in their IDE it’s possible to now look at the resultant output of your software in near real-time.
Of course I’ve downloaded Apples guide to Swift and am now excited to blow the dust off some old software projects I never finished and recode them in the new shiny shiny. That said, it’s all just a typical Apple keynote reaction where everything looks amazing, but in reality it’s going to be a long road to walk down for everyone.
No Nonsense, Minimal Touchy-Feely, All Business
Finally what struck me was Apples focussed, compressed 2 hour keynote. There was SO much content and SO many features they barely scratched the surface. This was perhaps the most impactful keynote since the iPhone in 2007. And just like the iPhone its impact will take years to be fully felt. Now then, get me XCode and let’s go.