Posts in Training
Live Online Swift Training

This event has now passed, but we'll be doing it again in the future! Stay tuned. In the mean time, if you want to learn Swift, we recommend out brand new book, Learning Swift!

We're super excited to announce that, next week, we'll be running live online Swift programming training through O'Reilly Media. You can learn more and sign up over on the O'Reilly Media site.

The gist of it is: you'll join us live online for a day of Swift programming, where we'll teach you the language, how to use it for iOS (or OS X) programming, and where to learn more. Everyone will get a video of the training afterwards, as well as an ebook copy of our brand new Learning Swift book.

We're seriously looking forward to this! Please don't hesitate to contact us if you have any questions.

YOW! Connected 2015

We've been at YOW! Connected in Melbourne this week. It's been pretty awesome, and we've met lots of cool people doing awesome things with mobile and IoT. We gave two presentations!

The first was the latest update to our How Do I Game Design? session, covering just enough game design theory to make you dangerous. You can watch a video of this session from OSCON 2015:

The second was called Watch This Face, and covered the philosophical design differences between Android Wear and Apple's watchOS. You can grab the slides from Speaker Deck:

And, because apparently we can't get by without giving a plug for our books, don't forget to check out our new books; you can get them for 50% off with code WKIOS9.

Addendum for our Swift book

On 8 April 2015, Apple released Xcode 6.3, updating the Swift language to Swift 1.2. We spent some time working through our recent book, Swift Development with Cocoa, to make sure we knew how the changes impacted the example code, and to provide updated code as needed.

We're pleased to say that the required changes are minor! We've pushed a full set of updated example code to the GitHub repository, available here. We've also made a changelog, listing the differences between the code examples in the book, and the current best-practice with Xcode 6.3:

  • NSApplicationMain(C_ARGC, C_ARGV) has been replaced with NSApplicationMain(Process.argc, Process.unsafeArgv)

  • Several methods that were implementations of protocols had the optionality of their parameters changed. For example, the applicationDidFinishLaunching parameter originally had a parameter of type NSApplication!, which has now changed to NSApplication.

  • Several properties changed from being optional to non-optional, or vice-versa.

  • Swift now has a "forced cast" operator, as!, which is used when down-casting from a class. We've update the code to use as! when appropriate (such as when downcasting from NSObject to CLLocation)

  • Changed NSCalendarUnit.DayCalendarUnit (which was deprecated) to NSCalendarUnit.CalendarUnitDay

  • Changed "countElements" to its new replacement, "count".

You can also find the changelog in the GitHub repository. The changes are all very minor, thanks Apple! If you have any questions, don't hesitate to contact us! Thanks for buying our book, we love hearing from readers.