26–28 October 2015
Amsterdam, The Netherlands

Programming with Swift 2: Solid fundamentals for iOS and OS X development

Paris Buttfield-Addison (Secret Lab Pty. Ltd.), Jonathon Manning (Secret Lab Pty. Ltd.), Tim Nugent (lonely.coffee)
9:00–17:00 Wednesday, 28/10/2015
Location: D404
Average rating: ***..
(3.50, 2 ratings)

Materials or downloads needed in advance

No experience is needed in any specific language, or in Mac or iOS development, but you should be reasonably comfortable in Java, C#, C++, Python, Ruby, or other similar programming languages. We expect attendees are quite competent programmers in a modern language. Attendees should preferably be confident navigating OS X as a user, but this isn't essential. You’ll need a Mac laptop running OS X 10.9.4 or later, and have Xcode 7 or newer installed.


In the next several years, Swift will become the language of choice for developing iOS and OS X apps and services. Introduced in June 2014, Swift is a new language designed for power, safety, and flexibility. By taking inspiration from a diverse range of languages including Objective-C, Rust, Python, C#, and Ruby, Swift provides you with an extremely capable toolkit for writing great code very quickly.

If you’re involved in, or interested in writing anything to do with iPhones, iPads, or Macs, you need to get familiar with Swift. In this training, you’ll start by getting up to speed with the language, and getting familiar with both the basics as well as exploring some of the more sophisticated language features. You’ll then start exploring the details of Swift and its standard library; finally, you’ll learn and start using the huge array of open source libraries and toolkits that already exist for Swift.

By the end of the day with us, you’ll be comfortable using Swift in your own projects, no matter what their size. You will have an in-depth understanding of advanced language features, and be able to use them to solve real-world problems extremely efficiently.

We’ll begin with the tools that you’ll use to write Swift code, and start working with the Swift syntax. We’ll then do a series of deep dives into how Swift handles common programming topics like object-orientation, access control, and interoperation with other languages. We’ll also explore using both Cocoa and Cocoa Touch as well as open-source libraries.

Among the many different topics that we’ll be covering in this training, you’ll find:

  • Playgrounds
  • Swift’s syntax
  • The niftiest little type system
  • Closures and functions
  • Classes and protocols
  • Generics
  • Custom operators
  • Literal convertibles
  • Integrating with C and Objective-C
  • Open-source Swift libraries
  • Working with Cocoa and Cocoa Touch
  • Solving common problems using Swift
Photo of Paris Buttfield-Addison

Paris Buttfield-Addison

Secret Lab Pty. Ltd.

Paris Buttfield-Addison is cofounder of Secret Lab, a mobile development studio based in beautiful Hobart, Australia. Secret Lab builds games and apps for mobile devices, including the award-winning ABC Play School iPad games, and the Qantas Joey Playbox. Paris formerly worked as mobile product manager for Meebo (acquired by Google) and writes technical books on mobile and game development for O’Reilly (most recently Learning Swift, 2nd edition, and The Kerbal Player’s Guide). He holds a degree in medieval history and a PhD in computing; he is currently studying law. Paris can be found on Twitter as @parisba online at Paris.id.au.

Photo of Jonathon Manning

Jonathon Manning

Secret Lab Pty. Ltd.

Jon Manning is the cofounder of Secret Lab and has worked on apps of all sorts, ranging from iPad games for children to instant messaging clients. He frequently finds himself gesticulating wildly in front of classes full of eager-to-learn developers. Jon has written a whole bunch of books for O’Reilly (and previously Wiley) about iOS development and game development. He recently completed his PhD, where his research studied how people manipulate the ranking systems of social media sites; this means that he literally has a doctorate about jerks on the internet. He wrote Yarn Spinner, an interactive dialogue system, which was used in the 2017 indie game Night in the Woods. Jon can be found as @desplesda on Twitter.

Photo of Tim Nugent

Tim Nugent


Tim Nugent pretends to be a mobile app developer, game designer, and PhD student, and now he’s even pretending to be an author. (He cowrote the latest update to Learning Cocoa with Objective-C for O’Reilly.) When he isn’t busy avoiding being found out as a fraud, Tim spends most of his time designing and creating little apps and games he won’t let anyone see. He also spent a disproportionately long time writing this tiny little bio, most of which was taken up trying to stick a witty sci-fi reference in. . .before he simply gave up. Tim can be found as @The_McJones on Twitter.

Comments on this page are now closed.


Picture of Paris Buttfield-Addison
Paris Buttfield-Addison
3/11/2015 4:11 CET

Code presented during this session is available on GitHub now: https://github.com/thesecretlab/oscon-ams-2015-swift

Blog post coming soon! Please don’t hesitate to let us know if you have any questions.

Picture of Paris Buttfield-Addison
Paris Buttfield-Addison
26/10/2015 12:36 CET

Attendees to this session should make sure to update to the latest non-beta Xcode available from the Mac App Store or from the Apple Developer site. We’ll be working with Xcode 7!