A unique 2 day
Swift Conference
in the heart
of leeds.



What are
we about

Adam Rush founded SwiftLeeds in 2019, born from over ten years of experience attending conferences. The inspiration was bringing a modern, inclusive conference in the North of the UK to be more accessible for all.

SwiftLeeds is now run with over ten community volunteers building the website, iOS applications and making sure we cover all the bases on the day. SwiftLeeds is entirely non-profit, and the funds make sure we can deliver the best experience possible.

In-person conferences are the best way to meet like-minded people who enjoy building apps with Swift. You can also learn from the best people in the industry and chat about all things Swift.


GET YOUR
TICKETS


Your full access ticket to SwiftLeeds
Code of Conduct


FREE
drop-in session

We are excited to reveal a new and exclusive add-on to SwiftLeeds. With every ticket purchased, you’ll be eligible to book a free drop-in session with one of our on-site experts. Sessions are available on a first come first served basis, so we recommend to get your ticket and book your free session now!


Book Now
(Requires a valid ticket purchase)
Ariel from Appfigures avatar image
App Store Optimization Review

With Ariel from Appfigures

Hidde van der Ploeg avatar image
App Design Review

With Hidde van der Ploeg

Jordi Bruin avatar image
Indie Developer App Review

With Jordi Bruin

Daniel Devesa Derksen-Staats avatar image
App Accessibility Review

With Daniel Devesa Derksen-Staats



Robin Kanatzar

Betclic Group

Pol Piella

BBC

Aryaman Sharda

Turo

Jessie Linden

Simon B. Støvring

Shape

Chris Vasselli

Indie Developer

Ibrahima Ciss

Makeba

Alex Logan

Unflow

Joel Kin

Handshake

Anna Beltrami

Spotify

Aviel Gross

Bēhance, Adobe

Alex Lee

Apple

Richie Flores

Northrop Grumman

Fawkes Wei

Forza Football

Zamzam Farzamipooya

Veo

Krzysztof Zabłocki

Independent

Tunde Adegoroye

tundsdev & Bally’s Interactive



Conference
Schedule

Day 1



The doors at The Playhouse will open at 8:30 AM and it's time to register, then once you have your badge you can check out the swag and T-Shirts. Please bring along your QR code ticket for prompt entry and nothing else is required. The SwiftLeeds team will greet you along with a fresh breakfast to start the first day.





Adam Rush will be hosting this years conference





In this talk, we’ll explore how good UX design can drive business results for iOS apps, and share best practices for integrating UX design into your app development process.

As iOS development continues to evolve and become more competitive, it's increasingly important for businesses to focus on creating great user experiences. In this talk, I will share real-world examples of how good UX design has driven business results for iOS apps, including increased user engagement, higher conversion rates, and improved brand perception.

I will also provide practical tips and strategies for incorporating UX design into your iOS development process, from conducting user research to designing intuitive user interfaces. Attendees will leave with a deeper understanding of the value of UX in iOS development, as well as actionable insights they can use to improve their own app design and development practices.



Richie Flores / Northrop Grumman



Apple recently made some major updates to StoreKit, by releasing StoreKit2. This is a new API that showcases the great updates available to us in StoreKit & the language updates with Swift Concurrency.

My talk ultimate goal is to show you how you can easily integrate the StoreKit2 API into your iOS apps by building a tip jar that you can easily integrate into your apps with minimal code with code samples.

Not only will I be talking about how to build a tip jar. But i’ll be going through a bit of a throwback & going over what in app purchases are, the different types so you understand which one meets your needs. Although my talk will focus on consumables.

We’ll also cover some of the new updates in Xcode that allow us to easily test in app purchases using the new StoreKitConfiguration file and other features for simulating purchases, handling failures and managing transactions.

After all of this we’ll discuss appstoreconnect & things you wanna look out for when submitting your in app purchases too. So you’ll have a full understanding of going from zero to having your own tip jar.



Tunde Adegoroye / tundsdev & Bally’s Interactive



It's easier than ever to be a part time indie.

Working on your own apps and ideas can both lead to success personally and have a huge impact on your day job, and it's a shame to miss out. More importantly, its fun!

In this talk we’ll look at strategies for keeping up with the latest tech from Apple, and how you can make something quickly. It takes way less time than you think, and we'll look at how even with a full time dev job you can get your dream app on the store.

Specifically, we'll look at how you can take advantage of sample code, optimise your learning during WWDC, and how you can leverage the community to do a lot of the hard work for you.



Alex Logan / Unflow



We have partnered with the venue to provide us with handmade food. The venue has an incredible chef who will produce food to cater to everyone. They have access to a stone-baked pizza oven to provide fresh pizza slices and handmade buffet food with a vast selection. Don't forget your handmade brownie or Bakewell slice 😋





Forza Football is a football live score app, and we are always working hard to bring the best native live score experience possible. When we saw the announcement of Live Activities and Dynamic Island we were super excited since it looked like a perfect use case for us.

In this talk I will be sharing some basics about how live activity works, the limitations and possibilities, also the journey of us trying to build a live activity for football live scores. This may include how we designed the UI, the struggles working with limited documentation, back and forth talking with Apple trying to figure out the best update mechanism and the final result.



Fawkes Wei / Forza Football



This talk takes a look at the theory behind some of the basic view transformations that most of us take for granted - translations, scales, and rotations. Time permitting I would love to also shed light on why the m3,4 element of a transformation matrix helps us perform that 'perspective shift' on a UI view!



Alex Lee / Apple



It's time to take a well-deserved break; there will be coffee, tea, water and more. You can take time to network, meet new people or relax and absorb all that information you have listened to.





SwiftUI is powerful and flexible, but sometimes confusing. Things like modifiers order, inline views, body complexity, and POD views, can all seriously affect our performance. In this talk, we will learn the best ways to use SwiftUI for resource-heavy and dynamic UIs, while maintaining the golden 60fps.

In 2022, we (Adobe Bēhance) rebuilt our navigation infra, and our main Feed, in SwiftUI. We also insisted the app must run great on the worst phone we support - iPhone 6S Plus. Getting there was a journey. We will start by comparing SwiftUI to UIKit: We know there’s no more View Controller, and views are mere “function of their state”, but what does it mean? Next, we will dive into specific scenarios and see how this new way of thinking is critical for achieving great performance. We will learn things like:

  • Avoiding redundant view diffing.
  • Controlling view update lifecycle.
  • How to “hide” complex state to improve performance.
  • Avoiding SwiftUI’s pitfalls, like nested publishers and environment memory leaks.
  • And more…


Aviel Gross / Bēhance, Adobe



Over the past few years and especially thanks to the introduction of async/await and open-source libraries such as the swift-argument-parser, Swift has become a very powerful language for making command-line applications. Despite this, when it comes to building an application of this sort, we tend to resort to other languages such as bash or ruby.

In this talk, I will share my take on why it might be a great idea to build tools with Swift by making a complex command-line application called MusiCLI. MusiCLI allows users to quickly search for songs in Apple Music using MusicKit and also display information about a specific song in a SwiftUI view launched directly from the command-line!

Along the way, I will also share my favourite libraries and tips to build command-line tools in Swift like a pro!



Pol Piella / BBC



I always loved creating apps and making things, and I still do. But while I worked on optimising my code and learning modern development techniques, I was always curious about what happens when you press that Build button in Xcode. What's going on behind the curtain? How does that turn your code into an app. I was fascinated by this, however, I never satisfied this curiosity until I jumped in the deep end, and started working as a mobile infrastructure engineer at Spotify.

I want to demystify the build process, explain build systems, and share my knowledge to help people form a solid foundation to build their build systems knowledge on.



Anna Beltrami / Spotify



We have booked the Box in Leeds, which is a Sports Bar with lots of fun games to be had. They have Darts, Shuffle, Photobooths plus lots more. You network with friends, have some drinks, play games and end the day with lots of laughter.

15 Infirmary St, Leeds LS1 2JS



Day 2



We have freshly prepared breakfast on arrival for Day 2





Adam Rush will be offering a warm welcome to Day 2 with lots of great talks and activities for the day ahead.





2 facts about me: I am obsessed with enums, and I am a professional drummer and percussionist 🎵

For this talk, I'd like to marry these great loves by

  1. sharing my curiosity about enums with the SwiftLeeds community
  2. leveraging my musical skills as the backdrop for a sample app called PocketPerc: Beat Generator

In the app, a user would be able to toggle on any number of instrument samples to build a unique groove all their own, with samples largely recorded by me 🥁

To build up to the beat part (obviously the Grand Finale), I’d like to showcase enums in all their glory, aka possibly/hopefully using them way too much and inspiring some wild ideas about what they can do 🤗 The static data we would need is a perfect opportunity to eclipse structs and classes as the go-to data types, and instead rely heavily on enums to build views and stay categorized! To make it extra fun, I plan to limit myself as much as possible to only that data type, see what boundaries we bump up against, and discuss where and why we might want to pivot to another structure for production.

Here’s a non-exhaustive list of the power moves I’ve been exploring:

Protocol conformance CaseIterable, Equatable and Comparable conformances Associated values (with and without default values) Pattern matching Screen management Static properties Computed properties Interaction with ObservableObjects Custom raw types



Jessie Linden /



The new navigation API introduced in iOS 16 is what was missing in SwiftUI. This talk will dive into the basics of SwiftUI navigation links and navigation stacks.

We will then explore how to implement deep-linking in a SwiftUI app, allowing users to open specific content or views directly from an internal and/or external source.

Finally, we’ll see how to model our domain to make the most of other SwiftUI presentation components like sheets, popovers, alerts, confirmation dialogues and custom views.

Throughout the talk, we will provide practical examples and code snippets to help attendees understand how to use SwiftUI navigation to build flexible and responsive user interfaces that support deep linking. By the end of the talk, you will have a solid understanding of how to supercharge your app's deep-linking capabilities using SwiftUI.



Ibrahima Ciss / Makeba



Ensure loose coupling in your codebase by adopting Pure Dependency Injection and injecting the dependencies using the Composition Root pattern. Learn how to create a Composition Root and use the loose coupling to create feature apps that let you iterate on features in isolated environments.

The talk explores the Composition Root pattern (originally presented by Mark Seemann in the book “Dependency Injection in .NET”) in the context of a mobile app. Through the talk we will explore how the pattern can be used to achieve loose coupling and how the Composition Root and Pure Dependency Injection can be used as an alternative to the Service Locator pattern. As a result, we will notice that using Pure DI results in honest interfaces that clearly states the dependencies they need.

While the concepts presented are mostly generic and applicable to all platforms, we will use an iOS app written in Swift as an example. Through the talk we will discover how Pure DI and the Composition Root makes it easy to mock parts of our codebase and create isolated apps that run a single feature, making it easy and fast to iterate on features without navigating through a large application.

After the talk the audience will be well-equipped to consider Pure DI and the Composition Root as an alternative to the popular Service Locator pattern, which is effectively what the @Environment and @EnvironmentObject property wrappers in SwiftUI uses.



Simon B. Støvring / Shape



Cloud functions; what is this really?

As Google describes it; Cloud Functions for Firebase is a serverless framework that lets you automatically run backend code in response to events triggered by Firebase features and HTTPS requests. Your JavaScript or TypeScript code is stored in Google's cloud and runs in a managed environment. There's no need to manage and scale your servers. I know what you’re thinking it is too good to be true, well I’m telling you it is true. It is very easy to set up and it is very well integrated into other firebase services such as Firebase Authentication and Cloud storage.

Are you interested already or should I go on?

So on top of it having zero maintenance and easy integration with the firebase platform, it keeps your logic private and secure. You don’t have to worry about having your code being reversed engineered, if you are doing something highly secure in the app you can easily move it to cloud functions and be sure that it is private and secure. Not to forget you can always change it without any app updated.

What to expect

This talk will take you through how to set up a cloud function, test it and deploy it 🚀 You’ll also see how you can trigger cloud functions with Firestore triggers.

You'll need a Node.js environment to write functions, but don’t you worry it is nothing that an iOS or Android engineer can not handle.

What you will take home

By the end of this talk, you’ll have an understanding of how cloud functions work and how you can take advantage of them for your specific use case, so that next time you come around to a situation where you wish there was a backend code somewhere taking care of this for you, you can be your savior and do it yourself.



Zamzam Farzamipooya / Veo



We have partnered with the venue to provide us with handmade food. The venue has an incredible chef who will produce food to cater to everyone. They have access to a stone-baked pizza oven to provide fresh pizza slices and handmade buffet food with a vast selection. Don't forget your handmade brownie or Bakewell slice 😋





In this talk, we'll delve into the world of XcodeKit and Editor Extensions, showing you how to streamline your workflow, improve code quality, and boost your productivity as a developer.

We’ll explore real-world examples and practical tips for creating your own extensions, integrating them into your workflow, and distributing your new tools with the larger iOS & macOS community.

This beginner-friendly code-along session will start by exploring the XcodeKit API and testing environment, then we’ll move on to covering best practices and seeing some real-world examples to help spark your creativity.

We’ll wrap up with a brief discussion on how to release your new extensions on the App Store or distribute them as open-source projects.

Whether you’re an experienced developer or just starting out, this talk is essential for anyone using Xcode who wants to personalize their workflow.

It’s also perfect for those interested in contributing to open-source or exploring new opportunities as an indie developer.

So, grab your laptop and join me for a deep dive into the world of Editor Extensions and XcodeKit!



Aryaman Sharda / Turo



With fantastic prizes on the line, have you got what it takes to win this year's quiz?

All questions will be about the talks from the previous two days, and the SwiftLeeds conference as a whole. Have you been paying attention? Will you be the winner of Swiftest Fingers First?

All attendees will be able to participate through their mobile device. Instructions will be provided on the day.





It's time to take a well-deserved break; there will be coffee, tea, water and more. You can take time to network, meet new people or relax and absorb all that information you have listened to.





As your app grows larger and more complex, so does its surface area for bugs and its need for robust testing. But this growth doesn’t all look the same, and the strategies for managing growing app complexity don’t need to look all the same either.

In this talk I’ll discuss the difference between what I think of as “additive” and “multiplicative” feature growth in my app Nihongo, how I tailor my quality and testing strategies based on those differences, and the tools I use to implement those strategies as part of my continuous integration system. I’ll also discuss how the quality strategies I’ve used on software teams do and don’t translate to my work as an indie.



Chris Vasselli / Indie Developer



Are you completely lost on how to make the navigation part of your application accessible? Maps and navigation can be made accessible just like any other UI component in your application. In this talk, you’ll learn the best practices for how to make your maps more accessible and what pitfalls to avoid. We’ll look at existing mapping applications as examples and discuss the limits of accessibility with MapKit and Google’s Maps SDK.



Robin Kanatzar / Betclic Group



The industry has a pretty clear idea of what a Senior Engineer is. But after that, expectations start to fall apart. Many companies don’t have Staff+ roles at all–if you want to advance, you’re headed to management. Some companies hire at those levels to lure talent but don’t promote to them internally, because they don’t have a clear track to get there. And even at the companies that do have a well-defined path from Senior to Staff and beyond, it’s usually built for generalist or web engineers, rather than iOS. Because mobile engineering is such an odd duck–kind of a deep niche, kind of a full stack–it’s hard to fit it into the standard categories that tend to define Staff+ engineering.

I’ve been a Staff or Principal-level mobile engineer for the past seven years. I’ve seen the ways that engineering leaders think about these categories, and how mobile engineers can wedge themselves into them. And at my current job I’ve had the opportunity to define, to a certain extent, what the role means, and how it differs for mobile. We’ll talk about the expectations for Staff+ engineers in general; how to adapt those expectations to the mobile world; and how to build your own role to where you want to be.



Joel Kin / Handshake



Krzysztof Zabłocki will be closing us out with some exciting and motivational experience from his decades of building apps and tools to help thousands of engineers.



Krzysztof Zabłocki / Independent



This after-party will be hosted inside the venue at the networking area, make your final friendships and discuss about the amazing days we have had at the conference.




The best
venue in Leeds



Travel
to Leeds

Leeds is one of the biggest cities in the UK, it contributes a major part of the UK economy with a huge technology presence. Leeds, has some of the biggest technology companies across the UK and is hugely accessible. Leeds is situated in the North Eastarn part of the UK.

Leeds has an International Airport which is approx 15 minutes from the city centre by car.

If you're travelling from outside the UK, you're likely going to fly in to Manchester or Leeds, if you're flying to Leeds your best onward travel is via local taxi which can take you directly to the city, and will cost you approximately £20. If you're travelling into Manchester, you can either take the Train which will have direct trains to Leeds City and will take approx 1hr.

If you're travelling inside the UK, you can take the train to our huge railway station and the venue is approx 15 minute walk from the station, alternatively you could hop in a taxi which will take 5 minutes.

The venue is situated near the major bus station, so a bus is also an option but this is for local travel around Leeds or surrounding areas only. The venue The Playhouse is situated on the eastern side of the city, and is walking distance to all that Leeds has to offer.




Previous
Conference


October 20th, 2022

View all


Watch the
Highlights



The best
sponsors