October 28–31, 2019

Swift for TensorFlow in 3 hours

Mars Geldard (University of Tasmania), Tim Nugent (lonely.coffee), Paris Buttfield-Addison (Secret Lab)
1:30pm5:00pm Tuesday, October 29, 2019
Location: Grand Ballroom A/B

Who is this presentation for?

  • ML programmers who want to learn new skills, deep learning engineers, Python programmers seeking to diversify, users of TensorFlow wanting to learn Swift for TensorFlow, and anyone who wants to get into deep learning or Swift


New to TensorFlow


Mars Geldard, Tim Nugent, and Paris Buttfield-Addison are here to prove Swift isn’t just for app developers. Swift for TensorFlow provides the power of TensorFlow with all the advantages of Python (and complete access to Python libraries, as needed) and Swift—the safe, fast, incredibly capable open source programming language.

You’ll leave with the knowledge to use Swift, a programming language that’s great for everything from numeric computing to application development, and Swift for TensorFlow, the official TensorFlow project that brings new tooling, systems design, compilers, and features to the machine learning world, by way of Swift.



  • The basics of Swift and how to get started using a Jupyter notebook (yes, they fully support Swift)
  • Why Swift is a great language for scientific computing and deep learning
  • How Swift can match the performance of manually tuned assembly code in numerical computing
  • How Swift for TensorFlow works, what it’s capable of, and where it’s headed (learn the power of differential operators and being able to ask your types for their gradient)
  • Why Swift for TensorFlow is not just a port of TensorFlow to a different language (embrace differentiable programming)
  • How you can use all your favorite Python libraries, including NumPy, pickle, and beyond, easily and directly from Swift

Specifically, you’ll

  • Begin with a Swift programming tutorial covering how to use Swift as a programming language (Mars, Tim, and Paris use both Apple’s playgrounds, if you have a macOS device, as well as Jupyter notebooks)
  • Move to a Swift for TensorFlow tutorial exploring fundamental machine learning problem solving using TensorFlow and Swift
  • Explore and demonstrate common use cases for TensorFlow using Swift
  • Demonstrate the use of NumPy, the ubiquitous Python library from Swift, to perform common and useful data science operations and integrate the results with Swift for TensorFlow
  • Bring all the components together: Swift programming (in a notebook), showcasing common ML problem-solving processes using Swift for TensorFlow, and integrating Python libraries as needed in a pragmatic manner

They point to resources to build on during your journey through Swift, Swift for TensorFlow, and the future of deep learning, differentiable programming, and the future of programming languages.

Swift is a powerful, well supported, open, and now mature programming language. Swift for TensorFlow is brand new, solidly backed, and maturing rapidly. You can’t do everything with Swift for TensorFlow yet, but you can learn a lot and improve your thinking on how and why certain tool sets work. Learn the bleeding edge before it arrives, and pick up valuable Swift skills along the way.

This is a three-hour exploration of everything you need to know to work with Swift, Swift for TensorFlow, and beyond.

Prerequisite knowledge

  • Experience with Python (useful but not required)

Materials or downloads needed in advance

  • A laptop with any platform (You'll be provided with a link to Jupyter and optionally a local Docker container to run locally with minimal setup needed.)

What you'll learn

  • Learn how to program in Swift in depth, how to use that knowledge in Swift for TensorFlow to perform basic deep learning work, and how to get more knowledge to further both your Swift programming broadly and your use of Swift for TensorFlow specifically
Photo of Mars Geldard

Mars Geldard

University of Tasmania

Marina Rose Geldard (Mars) is a technologist from Down Under in Tasmania. Entering the world of technology relatively late as a mature-age student, she has found her place in the world: an industry where she can apply her lifelong love of mathematics and optimization. She compulsively volunteers at industry events, dabbles in research, and serves on the executive committee for her state’s branch of the Australian Computer Society (ACS) as well as the AUC. She’s writing Practical Artificial Intelligence with Swift for O’Reilly and working on machine learning projects to improve public safety through public CCTV cameras in her hometown of Hobart.

Photo of Tim Nugent

Tim Nugent


Tim Nugent pretends to be a mobile app developer, game designer, tools builder, researcher, and tech author. 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 his tiny little bio, most of which was taken up trying to stick a witty sci-fi reference in…before he simply gave up. He’s writing Practical Artificial Intelligence with Swift for O’Reilly and building a game for a power transmission company about a naughty quoll. (A quoll is an Australian animal.)

Photo of Paris Buttfield-Addison

Paris Buttfield-Addison

Secret Lab

Paris Buttfield-Addison is a cofounder of Secret Lab, a game development studio based in beautiful Hobart, Australia. Secret Lab builds games and game development tools, including the multi-award-winning ABC Play School iPad games, the BAFTA- and IGF-winning Night in the Woods, the Qantas airlines Joey Playbox games, and the Yarn Spinner narrative game framework. Previously, Paris was a mobile product manager for Meebo (acquired by Google). Paris particularly enjoys game design, statistics, blockchain, machine learning, and human-centered technology. He researches and writes technical books on mobile and game development (more than 20 so far) for O’Reilly and is writing Practical AI with Swift and Head First Swift. He holds a degree in medieval history and a PhD in computing. You can find him on Twitter as @parisba.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)

Contact us


For conference registration information and customer service


For more information on community discounts and trade opportunities with O’Reilly conferences


For information on exhibiting or sponsoring a conference


For media/analyst press inquires