00:00

Check-in 💻 for the Workshop participants!

Rise and shine! Ready to learn something new?

00:50

Workshop Kick-off ⚽️! - Participants with Workshop tickets

01:00

Level up your Swift and SwiftUI

You're already writing good SwiftUI apps, but you're coming to iOS Conf SG because you want to write great SwiftUI apps, right?

In this workshop we'll walk through an existing SwiftUI project that could use more than a little improvement, and together we'll make the code faster, clearer, and smarter too.

03:00

Break ☕ 🚻 💬

03:15

Level up your Swift and SwiftUI

The workshop continues with more suggestions from you, and lots of live coding and discussion from Paul. Come prepared to learn, and prepared to work too – make sure your laptops are fully charged, with Xcode 16 installed!

05:15

Lunch 🍱 for Workshop participants

06:00

Swift Concurrency Workshop

We’ll start off with the basics of Swift Concurrency by exploring the async/await syntax.

After that, we’ll quickly see that async/await is only the surface of Swift Concurrency. We’ll move on to explore Structured Concurrency and how we can reason about where code runs once we mark functions as asynchronous or when we spawn new tasks.

Once we’ve got these basics down, we move on to advanced concepts like actors and sendable. You’ll learn about Swift Concurrency’s promises of compile-time data race protections and how this benefits us in the long run. We’ll also see how this is a major shift from the way that we write code in GCD, and how this means that migrations can sometimes be more involved than just translating syntax.

08:00

Break ☕ 🚻 💬

08:15

Swift Concurrency Workshop

We’ll wrap the workshop up by carefully considering our options for moving to Swift 6. How can we make the migration as painless as possible? And should we prioritise migrating or are there more important things to focus on?

By the end of this workshop you’ll have gained a lot of Swift Concurrency knowledge and you’ll have a much better understanding of the more complex details that power Swift’s modern concurrency features.

Heads up: the schedule might do a little dance and change without warning! 💃🏻