Download our Apple TV app:

    Watch to watch all our meetups from your couch? Subscribe to youtube (links below) or simply download our Apple TV App.



    Most recent videos on Youtube:

    Elevating UI Tests with network mocking, by Tieme van Veen (English)

    Posted on August 30, 2024


    How do you perform UI tests when you app is heavily dependent on a backend API? Tieme shows the use of the Mountebank and his own open source library MountebankSwift to make use of Mountebank very easy from Swift code. Direct links to parts of the video: 01:25 - UI Tests & stability 02:59 - Stub the network 07:08 - Mountebank overview 10:56 - MountebankSwift 12:24 - Demo integrating MountebankSwift 26:12 - Advanced usage 28:00 - Proxy mode 29:22 - Demo proxy mode 38:03 - Summary MountbankSwift: https://github.com/MountebankSwift/MountebankSwift Tieme van Veen can be found on Twitter/X at: https://twitter.com/tiemevanveen


    CocoaHeadsNL Meetup, 10 April 2024

    Posted on August 24, 2024


    Live stream of the CocoaHeadsNL meetup at Triodos Bank in Driebergen. Schedule: 19:00 - Presentation by Tieme van Veen: Elevating UI Tests with Network Mocking 20:00 - Presentation by Mathijs Kadijk: Apple Vision Pro live demo for iOS developers Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    CocoaHeadsNL Meetup, 22 May 2024

    Posted on August 23, 2024


    Live stream of the CocoaHeadsNL meetup at Adidas HQ in Amsterdam. Schedule: 19:00 - Presentation by Eduardo Bocato: Adidas Apps Architecture 20:00 - Presentation by Rafael Marcén: Managing our large iOS App Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    Managing our large iOS app, by Georges Jamous and Rafael Marcén (English)

    Posted on August 22, 2024


    George and Rafael show the problems adidas is facing in maintaining and building their large iOS app. They show how they improved their build process to not only improve build time but also cut on costs.


    Apple Vision Pro live demo for iOS developers, by Mathijs Kadijk and Tom Lokhorst (English)

    Posted on August 18, 2024


    In this live demo Mathijs and Tom show the capabilities of the new Apple Vision Pro and what they already developed for it.


    adidas Apps Architecture, by Eduardo Bocato (English)

    Posted on August 06, 2024


    Eduardo gives us an inside view on how adidas is structering their apps. How they manage dependencies and how and when code is shared between apps and when not.


    A Tour of Xcode Cloud, by Jerry Tromp (English)

    Posted on January 03, 2024


    Jerry takes us for a tour of Xcode Cloud and shows how the NOS now utilitizes this cloud based CI/CD system by Apple.


    Frameworks and libraries demystified, by Mathijs Bernson (English)

    Posted on December 28, 2023


    Static vs. dynamic libraries? What are frameworks and what is the role of a package manager? Mathijs demystifies it all and gives us a primer on frameworks and libraries.


    Concurrency of SwiftData, by Donny Wals (English)

    Posted on November 27, 2023


    This talk saw the light by accident but Donny explores the concurrency features of the SwiftData API and shows us what does and what does not work.


    CocoaHeadsNL Meetup, 20 September 2023

    Posted on November 22, 2023


    Live stream of the CocoaHeadsNL meetup at Q42 in The Hague. Schedule: 19:00 - Mathijs Brenson: Frameworks, libraries & packages demystified 20:00 - Mathijs Kadijk: A Mac-tastic Indie Adventure You can watch both talks via this live stream but it's even better if you join us in The Hague and meet with fellow Apple developers. Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    A Mac-tastic Indie Adventure, by Mathijs Kadijk (English)

    Posted on November 16, 2023


    Mathijs founded a new company together with fellow CocoaHeadsNL member Tom. In this talk he shares how that came about, what they have been doing and what their experiences are in being a small indie developer team.


    CocoaHeadsNL Meetup, 18 October 2023

    Posted on November 16, 2023


    Live stream of the CocoaHeadsNL meetup at NOS in Hilversum. Schedule: 19:00 - Jerry Tromp: A Tour of Xcode Cloud 20:00 - Donny Wals: Concurrency of SwiftData Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    CocoaHeadsNL Meetup, 19 July 2023

    Posted on August 25, 2023


    Live stream of the CocoaHeadsNL meetup at Flitsmeister in Veenendaal. Schedule: 19:00 - Two talks by Flitsmeister 20:00 - Tom Lokhorst: SharePlay: Turn your app into a shared experience You can watch both talks via this live stream but it's even better if you join us in Veenendaal and meet with fellow Apple developers. Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    CocoaHeadsNL Meetup, 25 May 2023

    Posted on August 24, 2023


    Live stream of the CocoaHeadsNL meetup at Maxdoro in Amersfoort. Schedule: 19:00 - Bram Kolkman: Tuist, the tool you missed 20:00 - Dima Kalachniuk: The journey from learning to creating an opensource tool You can watch both talks via this live stream but it's even better if you join us in Amersfoort and meet with fellow Apple developers. Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    SharePlay - Turn your app experience into a shared experience, by Tom Lokhorst (English)

    Posted on August 08, 2023


    SharePlay is fairly new feature in iOS that allow app developers to have their apps used by multiple users at the same time, to collaberate or to play or watch a video together. Tom explains how to implement this in your app and shows a demo shopping app he created as an example.


    Kotlin Multiplatform Mobile @ FM, by Frans van Grunsven (English subtitles)

    Posted on August 01, 2023


    English subtitles: In this talk Frans talks about how they tested Kotlin Multiplatform Mobile to possible start using it for Flitsmeister. He explains what it is and what problems they ran into.


    Kotlin Multiplatform Mobile @ FM, door Frans van Grunsven (Dutch only)

    Posted on August 01, 2023


    Dutch only: In deze presentatie vertelt Frans hoe zij Kotlin Multiplatform Mobile hebben getest om het eventueel te gaan gebruiken voor Flitsmeister. Hij legt uit wat het is en tegen welke problem ze aanliepen.


    The journey from learning to creating an opensource tool, by Dima Kalachniuk (English)

    Posted on June 12, 2023


    While learning to create a Mac app for his own development purpose Dima turned a simple small project into an opensource utility that has been forked multiple times and has received almost 200 stars on GitHub.


    Tuist, the tool you missed, by Bram Kolkman (English)

    Posted on June 10, 2023


    Bram shows how Tuist can be used to easily manage multiple targets for a white label app using very little code.


    The Mythical Hands On Manager - Leah Vogel - Do iOS 2022 (English)

    Posted on March 14, 2023


    In this talk, we'll explore the delicate balance of being an active contributor to your code base while leading a team of developers and the challenges that ensue. I will highlight some of the conflicts of interest that arise, like personal priorities versus company priorities, which can be mitigated by open lines of communication and aligning mutual expectations. Hearing the whole story can help you achieve personal and professional clarity to navigate your career path.


    Time traveling with Swift - Ben Proothi - Do IOS 2022 (English)

    Posted on January 25, 2023


    Ben is the youngest speaker ever on Do iOS. He is a 16 years old college student from New York. In his talk he will explore the complex roots of Swift, its current applications, and its future.


    Building Swift Packages in VSCode - Tim Condon - Do iOS 2022 (English)

    Posted on January 15, 2023


    In this talk you'll see how to write Swift packages and apps in Visual Studio code using the new Swift for VSCode extension. We'll go through code completion, package dependencies, testing and even debugging a Vapor app! Finally we'll go through how to run your apps in Remote Containers and Codespaces to standardise your development environment.


    Fying Solor - Jeremy Barger - Do iOS 2022 (English)

    Posted on January 14, 2023


    In this talk Jerenmy will share a simple four step process, with real-life examples, that can be implemented to accomplish any goal. At the end of this session, you will be able to apply this process to ensure that your first project as part of a new team is a success!


    Roll your own networking stack - Frank Courville - Do iOS 2022 (English)

    Posted on January 11, 2023


    Does your network layer need some love but you don't know where to start? In this talk, we'll look at how we can create our own small library of composable tools to make network a joy to work with.


    Don't forget about the wrist - Hidde van der Ploeg - Do iOS 2022 (English)

    Posted on January 09, 2023


    These days, it's so much more fun to build for the Apple Watch. This talk will help you understand what it takes to design and build great apps for watchOS.


    Increase Product Impact With This One Simple Trick - Maxim Cramer - Do iOS 2022 (English)

    Posted on January 09, 2023


    In this talk, I walk you through the tools and techniques to conduct effective user research to easily find problems and design solutions that will make your users/your boss/your bank account happy.


    Fantastic Swift tools and where to find them - Pol Piella Abadia - Do iOS 2022 (English)

    Posted on January 09, 2023


    In this talk, I will give an explanation and examples of how Swift can be used to write code way beyond app development. I will also be talking about why it would be a good idea to use Swift and what features make Swift a suitable language for each use case.


    Charming Swift Charts - Betty Godier - Do iOS 2022 (English)

    Posted on January 09, 2023


    Whether you are in the health, finance, or mobility sector, Swift Charts gives many ways to communicate patterns or trends in your data. Let me show you during this talk the power of delighting and fascinating that offers this new iOS16 Framework.


    Supercharge your app with Firebase and Stream - Stefan Blos and Peter Friese - Do iOS 2022 (English)

    Posted on January 08, 2023


    In this talk Peter and Stefan take a look how you can enhance your application with the power of Firebase and Stream. Specifically they will talk about how you can leverage the power of Firebase Extensions to give your applications superpowers with pre-built enhancements to the Firebase ecosystem.


    Previews and Package Oriented Programming - Daniel Steinberg - Do iOS 2022 (English)

    Posted on January 08, 2023


    In this talk you will be encouraged to combine an aggressive use of Preview and Packages to simplify your individual views and develop a data flow and app navigation that will be cleaner and simpler to understand.


    Managing Combine, your existing code, and async/await - Donny Wals - Do iOS 2022 (English)

    Posted on January 08, 2023


    More and more companies are looking at adopting SwiftUI, and as a result they're digging into Combine as well. But how do we integrate Combine into an existing codebase? And what about async/await? In this talk, we'll explore these questions and explore what the future of Combine and async/await will look like.


    Do iOS Panel, hosted by Antoine van der Lee - Do iOS 2022

    Posted on January 08, 2023


    What can we expect of future Swift version? Should I still learn UIKit as a new engineer? Is there still reason to use Combine while we have async/await? Those and other topics will be discussed in the Do iOS panel hosted by Antoine van der Lee.


    Swift your personal website using Publishj - Danijela Vrzan - Do iOS 2022 (English)

    Posted on January 08, 2023


    Publish is a framework created by John Sundell that allows you to build static websites using Swift. In this talk by Danijela you'll learn everything you wanted to know about Publish to get started building your own website. It's so Swift!


    Swift Package Manager Plugins, by Tom Lokhorst (English)

    Posted on December 03, 2022


    In an improvised last minute talk Tom shows how he takes advantages of a new feature in Xcode that allowed him to add a Xcode plugin to a Swift package. This plugin can be run during the build process of your project.


    CocoaHeadsNL Meetup, 23 November 2022

    Posted on November 24, 2022


    Live stream of our monthly CocoaHeadsNL meetup at Pinch in Amsterdam. Schedule: 19:00 - Presentation by Maarten van der Velden: Live Activities and ActivityKit This month we only have one talk. Do you want to give a talk at a future CocoaHeadsNL meetup? Did you implement a nice new feature? Or did you learn a new framework or a set of APIs? Give a talk about it! Contact any of the CocoaHeadsNL Team members and they are there for you to help you.


    Live Actvities, by Maarten van der Velden (English)

    Posted on October 01, 2022


    A new feature in iOS 16 is Live Activities. Maarten explores what it is and what it can do for their Catawiki app. He shares his learnings and shows how they implemented it.


    My path to freelance, by Eugen Martynov (English)

    Posted on October 01, 2022


    A few years ago Eugen decided to go freelance. In this talk he shares his learnings and talks about a lot of things you should think about when you go freelance.


    PassKeys and WebAuthN, by Jeroen Leenarts (English)

    Posted on July 08, 2022


    Jeroen introduces and demonstrates how Apple has implemented the WebAuthN with PassKeys. This authentication mechanism of the FIDO2 project is supported in the new iOS 16 and macOS 13 that Apple announced at WWDC 22.


    Cryptography, by Bram Kolkman (English)

    Posted on July 08, 2022


    In this talk Bram will introduce you some fundamental terms, concepts and techniques that every developer should know about cryptography and hashing. He will e.g. explain what hashing is and what the difference is between symmetric and asymmetric encryption


    Building custom SwiftUI property wrappers, by Donny Wals (English)

    Posted on July 06, 2022


    Donny demonstrates how to implement a custom made property wrapper for SwiftUI views to fetch data from a JSON feed. He also shows how to test it and shares his learnings and some valuable tips.


    Async Await, by Jeroen Bakker (English)

    Posted on March 24, 2022


    Jeroen shows how to implement the recently introduced Swift Async Await feature. He demonstrates how to rewrite a simple Corona app that uses completion blocks to async await.


    Introducing Feather CMS, by Tibor Bödecs (English)

    Posted on February 21, 2022


    Tibor Bödecs is the developer of Feather CMS and he introduces you to this Swift-based content management system powered by Vapor 4. Feather can be used in many different ways, for example to create blogs, websites, RESTful APIs, back-ends for mobile apps and much more.


    How AppClips can evolve your architecture to the next level, by Jeroen Bakker (English)

    Posted on February 20, 2022


    AppClips are powerful to introduce new users to a flow in your app, but where do you start and what are the limitations? In this talk Jeroen will teach you the possibilities, how to reuse code, make use of multiple flows in 1 AppClip, tips to stay under the 10MB limit and perhaps rethink how you should architect your main app.


    Micro/feature frameworks, by Jeroen Leenarts (English)

    Posted on December 24, 2021


    Jeroen gives you a introduction on how to get started with a Micro Framework or even a Micro Feature architecture. You will get some hands-on guidance on how to get started with Tuist and apply it on your (next) project.


    CocoaHeadsNL Online Meetup, 15 December 2021

    Posted on December 16, 2021


    Live stream of our monthly CocoaHeadsNL meetup. Due to the corona virus we are still not able to host a regular meetup. Instead we are hosting an online meetup via our regular YouTube live stream. This month we have talk from Jeroen Leenarts about Micro/feature frameworks. Please note: we start at 20:00 Hrs CET (19:00 UTC).


    Developing iOS Apps with an Accessibility Mindset, by Dani Devesa (English)

    Posted on September 08, 2021


    Accessibility should part of the job for any developer. But as user can have very diverse disabilities it can be challenging to know what features the platform has available for them and how to use them effectively. Dani explores the API's and highlights features like VoiceOver, Switch Control and VoiceControl.


    1 Year of CoronaMelder, by Roel Spruit (English)

    Posted on July 23, 2021


    In May 2020 work began on building CoronaMelder, an experimental contact tracing app. In this talk Roel will take a look at the development of the app, the work that has been done since its initial launch and the lessons that can be learned from such a public software project.


    Accessibility Snapshots, by Tikitu de Jager (English)

    Posted on June 26, 2021


    In this talk Tikitu de Jager, a mobile lead at Minddistrict, will show you a test utility they use to refactor view layers with confidence that they haven’t broken VoiceOver support, even in complex custom layouts. The tool itself is quite simple but it touches on more general accessibility best practises and on snapshot-testing techniques that go beyond pixel-perfection.


    Firebase for Apple Developers, by Peter Friese (English)

    Posted on May 21, 2021


    In this talk, Peter Friese is going to walk you through the building blocks for creating modern applications on Apple’s platforms using SwiftUI and Firebase.


    Architecture Considered Harmful, by Manuel Meyer (English)

    Posted on April 26, 2021


    In this extra long talk Manuel Meyer shares his ideas about reducing complexity in our code to create easily extendable and maintainable systems.


    From Paper to Audiokit: Teaching math through audio, by Jaap Mengers (English)

    Posted on March 28, 2021


    Jaap Mengers of Q42 shares the story of SenseMath: an app that lets you hear - rather than see or feel - a graph. A story about sound design, advanced VoiceOver features, and user testing in times of Corona.


    The Making of a Blackbox Challenge, by Ryan McLeod (English)

    Posted on February 25, 2021


    Ryan is the creator of the Apple Design Award winning game Blackbox. In this talk he takes us through the steps he took to design and built one of the almost 80 unique levels paying special attention to animations, audio but also accessibility.


    F*ck Clean Architecture, by Frank Bos and Fouad Astitou

    Posted on January 27, 2021


    In this presentation Frank and Fouad describe how they have stepped away from what is generally considered best practices in app development. Without the burden of having to use certain frameworks for a so called clean architecture or full blown CI/CD pipeline they've managed to release feature of feature and increased their App Store rating and now have more happy users.


    Using Core NFC to scan and verify identity documents, by Maxim Tsvetkov (English)

    Posted on December 24, 2020


    Discover what is possible with the Core NFC to scan and verify identity documents. Which data you can extract from documents and how you can verify the authenticity of these documents.


    Server Driven UI, Tom Lokhorst (English)

    Posted on December 03, 2020


    From the garden of his own home Tom explains how they implemented a server driven UI for the Primephonic app. Tom shows examples of screens of the app and how they implemented that as server generated JSON.


    Full stack Swift with Arduino, Axel Roest (English)

    Posted on November 22, 2020


    Axel will present how Swift can be used on the Arduino platform to read sensor data. He collects the data on a Raspberry-Pi and display it on a website built using Vapor, a server-side Swift framework.


    Our path to microframeworks with Tuist.io, by Jeroen Leenarts (English)

    Posted on November 08, 2020


    Jeroen shows how they at Achmea changed the architecture of their app to use microframeworks with Tuist.io. He demonstrates how to create a sample app and shows the new structure of the 'Even Appen' app.


    Adopting a reactive mindset, by Donny Wals (English)

    Posted on October 30, 2020


    With an example-driven approach, Donny helps you adopt a reactive mindset and explains what is all about and what it means.


    Real Refactoring, by Jon Reid (English)

    Posted on October 10, 2020


    Jon takes you step-by-step through a simple example app and shows you how to refactoring the code.


    Building Combine-powered APIs, József Vesza and Juan Carlos Ospina Gonzalez (English)

    Posted on August 26, 2020


    József and Juan talk about how to wrap iOS built-in or custom APIs using Combine. The topics covered are: - Anatomy of a subscription (Subscriber/Subscription/Publisher) - Making a custom Subscription - Generalizing KVO or NotificationCenter-based wrappers into Publishers - Unit testing a custom Publisher


    Functional Fundamentals and SwiftUI, Daniel Steinberg (English)

    Posted on August 25, 2020


    Daniel talks about the fundamentals of functional programming and Combine and how that can be used with SwiftUI and why he believes this is becoming more and more important for a Swift programmer.


    Implementing fastlane from nothing to App Store, Josh Holtz (English)

    Posted on August 24, 2020


    During a live coding session from Chicago (USA) the lead maintainer of fastlane demonstrates how easy it is to set up fastlane to automate the process of building, signing and uploading your app to the App Store.


    Server driven UI, by Tom Lokhorst

    Posted on August 24, 2020


    From the garden of his own home Tom explains how they implemented a server driven UI for the Primephonic app. Tom shows examples of screens of the app and how they implemented that as server generated JSON.


    Building an Experimental Localization System with Combine, SwiftUI and callAsFunction, Donny Wals

    Posted on August 22, 2020


    From all new technologies and features that Apple announced at WWDC '19, Donny picked three and set himself to build something useful with it. His experiment ended in a localization system that uses Combine and callAsFunction in a SwiftUI app.


    Asynchronous programming with operations in Swift, Antoine van der Lee (English)

    Posted on August 20, 2020


    In this first ever online-only CocoaHeadsNL meetup Antoine takes us for a deep dive into operations in Swift and how it can be used for creating asynchronously executing tasks or operations. The Playground file can be found at Antoine's GitHub: https://github.com/AvdLee/AsyncOperations