

AppForce1 Worklog
Jeroen Leenarts
Bi-Weekly or weekly podcast. I'm going to share my journey as an iOS developer in real-time. The wins, the struggles, the lessons learned, and the code that actually works. No fluff, no corporate speak, just honest developer-to-developer conversations.
Episodes
Mentioned books

Jan 22, 2023 • 20min
Fake hardware, Makefiles, protocols and churn... Lots of iOS and Swift content too.
Send me a textIt has been a while since my last episode. But no worries, I am not gone. January has been a super busy month and I have been working on some exciting things this month. Hopefully I can share a bit more on that soon. It involves setting up a new project using a micro framework architecture using Tuist.io. If you never checked out that too, make sure you do.Also, you can now support my podcast with a subscription directly through my podcast hosting provider. I love Buzzsprout for the way they keep raising the bar as a podcast hosting provider.I did part of the recording and editing after the surprise wedding of my nephew. The surprise was on us, the guests, do if I missed something in editing, now you know why.In this episode I am going to talk about many things:Fake hardware and my my quest for a new microphoneReading hardwareUtilizing Makefiles for Swift projectsShift in the protocol paradigmDebouncing with Swift concurrency5 Techniques to Effortlessly Send Data from UIKit to SwiftUIUsing JavaScript in a Swift appCreating App Prototypes from Low to High-FidelityThe Tyranny of the Churn EquationText modifiers in SwiftUIApplying Built-In Image Filters In SwiftMaking a serverless Swift function with Fastly and UpstashJoin me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.Support the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Jan 4, 2023 • 25min
New year, new microphone.
Send me a textIn this episode, I’m going to talk about:A new microphone for podcasting, the Shure 87A2022 in reviewHow to Run Stream’s Docs on a Multipass VMXcode Cloud scripts: Fastlane and CocoapodsSwift async/await in AWS lambdasLooking back at my 2022Using CallKit - How to Integrate Voice and Video Calling Into iOS AppsHTTP/3 support for URLSessionTesting Apps with an iPhone and the CarPlay SimulatorTrap exit code (SIGINT, SIGTERM etc) in a Swift Package Executable CLIThe day my app got thousands of downloads and in-app unlocksIt has been a while since my previous episode. Recovering from Do iOS and then December happened. Holidays, some family illness. But I kept going in some capacity. Getting a new microphone is a big incentive to get going again.But I need your thoughts and input.Join me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.PodMatchPodMatch Automatically Matches Ideal Podcast Guests and Hosts For InterviewsSupport the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Dec 26, 2022 • 47min
Azam Sharp on his Aggregate Model Architecture
Send me a textAzam and I discus some architectural ideas Azam has developed over the course of over a hundred sample codebases.Azam's blogAzam's article mentioned in the episode: Practical Mv Pattern CrudAzam's Udemy course: MV Design Pattern in iOS - Build SwiftUI Apps Apple's WayAzam on TwitterJoin me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.PodMatchPodMatch Automatically Matches Ideal Podcast Guests and Hosts For InterviewsSupport the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Dec 21, 2022 • 52min
Marin Todorov on 2022 and "dataTile"
Send me a textMarin and I discus how 2022 went for him and what his plans are for early 2023.(It is dataTile, a smart developer tool that reads your app's logs from the Xcode Simulator in real time and displays your debug data in a beautiful, bold UI.You can find Marin online at:https://underplot.com/On Mastodon: https://mastodon.social/@icanzilbLearn more about dataTile https://underplot.com/dataTile/Join me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.PodMatchPodMatch Automatically Matches Ideal Podcast Guests and Hosts For InterviewsSupport the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Dec 15, 2022 • 33min
Pol Piella Abadia, Senior software engineer at the BBC
Send me a textPol, a senior iOS developer working on the iPlayer app by the BBC. He loves sharing content and writing about all things mobile development and Swift.He also writes on his blog. https://www.polpiella.dev/Follow him on Mastodon. Or Twitter.He did his first conference talk at Do iOS in 2022. I'm sure Pol will share that link once it becomes available. He did an amazing talk titled "Fantastic Swift Tools and where to find them".Join me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.PodMatchPodMatch Automatically Matches Ideal Podcast Guests and Hosts For InterviewsSupport the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Dec 6, 2022 • 1h 2min
Alexander Griekspoor, co-creator of Agenda.com
Send me a textThis is Alexander, he and Drew created the note taking app Agenda. A Mac and iOS focussed App.Learn more about Alexander, how he got to creating Agenda and what motivates him day to day.To learn more about Alexander and his product:Visit Agenda.com (referral link, it extends my Agenda update window)Learn more about PapersOn TwitterJoin me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.PodMatchPodMatch Automatically Matches Ideal Podcast Guests and Hosts For InterviewsSupport the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Nov 19, 2022 • 12min
Recovering after a conference
Send me a textIn this episode, I’m going to talk about:When does a SwiftUI Environment get retained?Animated Launch Screen in SwiftUIA Guided Tour for SwiftUI ForEach StructureWhat is the difference between List and ForEach in SwiftUIHow Does Swift Concurrency Prevents Thread Explosions?Building custom layout in SwiftUI. BasicsUsing SwiftUI Effects Library: How to Add Particle Effects to iOS AppsIntroducing - Swift cheatsheet - The.Swift.Dev.This episode is something special. According to the stats of my podcast hosting provider, this is my 200th episode. And what a ride I had between this episode and my previous one. My last episode was published two and a half weeks ago. And a lot of things happened since then.I was still preparing for Do iOS on November 3 and 4.Had a weekend I kept going over my notes for Do iOS.Then the Do iOS workshop started with Daniel Steinberg and I was collecting and bringing some of the material we needed for Do iOS to Amsterdam. For lunch, I stopped at the workshop to check in on things and talk to a few people to get the vibe of the crowd at the workshop. It was pretty good.Then it was November 8. Do iOS day. I was the stage host the entire day, but we started with onboarding everyone at the door. I spoke a few words with all attendees at registration. Then an entire day of talks, making sure catering was taken care of, taking care of little issues. And making sure we kept a good pace. At the end we had a nice social drink with all attendees and a typical small Dutch snack.Evening of the first conf day, we had a sort of casual diner, and it got a bit out of hand. We raided a restaurant and stressed out kitchen staff with such a big unannJoin me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.Support the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Nov 2, 2022 • 9min
Time constraints are big the last couple weeks
Send me a textIn this episode, I’m going to talk about:Introducing Rollouts by RunwayA menu bar only macOS app using AppKitHow to check for network connection and present an alert in SwiftUIUnderstanding different cache policies when working with URLRequest in SwiftHandling never finishing async functions in Swift package testsHow to Get Push Notification while iOS App is in ForegroundDon’t forget, you can buy me a coffee. Marco Eidinger did just that, buy me a coffee. Thanks a lot Marco.Join me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.Support the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Oct 26, 2022 • 7min
Do iOS home stretch and I am trying to get back on my regular schedule again
Send me a textCounting down to Do iOS. At the time of this recording, I have almost two weeks to go, but it sure feels like it is happening tomorrow. Sending out messages to all attendees and speakers, making sure roll-up banners are ordered, putting together staff briefings for the Do iOS team and for the catering team, and preparing "filler" slides for when speakers are switching. Hotel bookings for team members. It is just a lot of small bits that all need to happen. I must say I feel very well organized and prepared. I think in large part that's due to my note-taking in Obsidian. Recently I showed what I have for notes to a colleague of mine and he was quite taken aback by the amount of stuff I write down. And I feel like I only capture half of all I want to capture.In this episode, I’m going to talk about:Thoughts on SwiftUI vs UIKitThree Ways to Refactor Massive SwiftUI ViewsMastering NavigationSplitView in SwiftUIHow to create NSManagedObject subsclasses for Core Data entities in XcodeRefactoring Swift: Best Practices to succeedJoin me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.Support the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer

Oct 17, 2022 • 10min
SwiftLeeds, ready or not...
Send me a text...here I come. KLM permitting.Getting ready to go to Swift Leeds.Finally received that Model-100 keyboard I kept on talking about. This thing is just amazing. More on that when I have used the device a bit more.Also, the video of my talk at 360iDev is now available too. And if you are still looking for training on aSync/Await, Daniel Steinberg will be in Amsterdam on November 7th.Now I am off to SwiftLeeds, if you are there too, come say hi, I'll most likely be near the Stream table.In this episode, I’m going to talk about:How to add Keyboard Shortcuts in SwiftUIMastering NavigationStack in SwiftUI. NavigationPathUsing the dismiss action from the SwiftUI environmentSwiftUI View That FitsAccordion in SwiftUI - DisclosureGroup ExplorationsApple’s use of Swift and SwiftUI in iOS 16System Programming Interfaces (SPI) in Swift ExplainedMemory management for async/await and tasks in SwiftDeveloper guide on the iOS file systemAlternate App Icon Configuration in XcodeWhere View.task gets its main-actor isolation fromJoin me in Amsterdam for Do iOS 2025, tickets and details available now. Lead Software Developer Learn best practices for being a great lead software developer.Support the showDo iOS: https://do-ios.com Rate me on Apple Podcasts. Send feedback on SpeakPipeOr contact me: Mastodon: https://hachyderm.io/@appforce1 X: https://x.com/appforce1 BlueSky: https://bsky.app/profile/appforce1.net LinkedIN: https://www.linkedin.com/in/leenarts/ Support my podcast with a monthly subscription, it really helps.My book: Being a Lead Software Developer


