Disclaimer: I didn't go to WWDC, so chances are, this isn't the best of WWDC. That would be the people you - person who went to WWDC - met in the hallways, at the parties/cafe's/bars/backstreets/local Blue Bottle Coffee. But I can comment on the content and the external view. So I'm going to.
First of all, either grab a nice auto-download script, or get the fantastic WWDC iPad/iPhone app. Personally, I got the app, as I've been watching the videos on my horrible commute. Aside from one feature request (skip 30 seconds), it works great.
On to the sessions. This isn't an exhaustive list, just some of the ones I enjoyed enough of to make it worth mentioning. There is a full list here - I'm not sure if you need a dev account (which is free now!) or not.
- They Keynote is always worth watch, preferably live and with a nice cup of hot coffee (it's winter here in NZ, and it was on at 5am). The live stream worked perfectly, and the music section was timed perfectly with me having to go to the ferry. Win. However, the Platform State of the Union is the real developer keynote, so start there.
- What's new in Swift/CocoaTouch/Xcode are always worth skimming thru.
- App Thinning in Xcode is going to impact us a lot, especially Bitcode. There is a good, if a bit light, overview in here.
- ApplePay Within Apps is an eye opener for what you can do with ApplePay inside your apps. Tap to pay is only a small part of what ApplePay can do - it opens up a HUGE scope for mobile commerce. Wallet - the home for Apple Pay and more covers some more of this, mostly around passes/loyalty cards.
- Getting started with Multitasking iPad in iOS9 is a bit short on non-obvious content, but is a good overview.
So far, I've only watched What's new in Swift, which has some good insights into the language design. But on my "still to watch" list is:
- Improving your existing apps with swift, because we have a large app, and we want to move to Swift. Duh.
- Optimising Swift performance
- Protocol-oriented Programming with Swift.
- Swift and Objective-C interoperability. Because big app which needs Swift added.
- Swift in Practice.
I think that Apple have finally got Swift to 1.0 with the 2.0 release. It's definitely time to learn it, and it appears it might be stable enough to use in production.
I still think Swift is a Frankenstien's monster of different language ideas mashed together, compared to something like C#, Java or even Objective-C, but it's where Apple is going, so time to jump onboard.
Oh and Objective-C got generics. Awesome. I guess.
For me at the moment, this is the single most interesting thing Apple is doing right now. iCloud before it was a mess, as no one at Apple was using it. However, CloudKit is being used in a LOT of mainstream Apple products (mail, dialer, contacts, notes, photos amongst others), so it's going to get a lot of love internally. And I even have a project to use it on, which is a nice change for me.
- What's new in CloudKit have a good overview
- CloudKit JS and Web Services covers a lot of the new REST-based stuff. The only aspect I wanted to know, that they didn't cover, is if their JS library works out of the browser, eg in a NodeJS app. They did cover the fact that once the user had authenticated, you can pass the session token back to the server to do more processing, but not if (or not) you have to write the REST wrappers yourself. I'm hoping not. The API - mostly promise based - looks sweet too.
Security and Privacy
- Security and your Apps covers the new security stuff off, including App Transport Security.
- Privacy and your Apps covers the privacy side, including a huge middle finger to Twitter using url schemes to scrape what apps are installed on your device.
There is plenty of other good sessions, if you are into games, or animation, of web stuff, or... pretty much anything Apple. Finding the time to watch them all is the hard part. Thanks, Apple, for putting them all up so damn quickly (next morning, usually, if not that night). Made it feel a little like I was there, even if I was on the other side of the world.