
AppForce1 Worklog
Bi-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.
AppForce1 Worklog
AppForce1 Worklog: Real Developer, Real Problems: No More Polished Perfection
Jeroen returns to AppForce One with a pivot to a new format focused on his journey back to iOS development after working in developer relations at Stream.
• Now working at Dawn Technology (formerly Egeniq), returning to hands-on iOS development
• Introducing "AppForce One Work Log" - a bi-weekly, 25-minute show sharing real development experiences
• No corporate speak or fluff - just honest developer-to-developer conversations about real coding challenges
• Each episode will include: week in review, code deep dives, tool discussions, and lessons learned
• Currently working on refactoring an 8-year-old UIKit app for emergency response (bedrijfshulpverlening)
• Excited about modernizing legacy code while keeping the app running for users who depend on it
• Organizing DoiOS 2025 conference in November with practical, real-world iOS development content
• Actively seeking listener feedback on what topics would be most valuable to cover
Reach out with your iOS development challenges on X, Mastodon, LinkedIn or through my website. I'm genuinely interested in your feedback and may feature your questions in future episodes.
A self hosted email newsletter, send emails via Amazon SES without sacrificing deliverability.
Riverside.fm
The easiest way to record podcasts and video interviews in studio quality from anywhere.
Buzzsprout
Start your own podcast and get a $20 Amazon Gift Card (sent after 2nd paid invoice)
Backblaze Cloud Backup
Never Lose a File Again with the World's Easiest Cloud Backup. Back up your Mac or PC just $6/month.
Lead Software Developer
Learn best practices for being a great lead software developer.
Disclaimer: This post contains affiliate links. If you make a purchase, I may receive a commission at no extra cost to you.
Rate me on Apple Podcasts.
Send feedback on SpeakPipe
Or contact me on Mastodon: https://hachyderm.io/@appforce1
Support my podcast with a monthly subscription, it really helps.
My book: Being a Lead Software Developer
Let's see if I can do this in a single take. It's been a while and this is going to be episode 104. So, hey there, ios developers, welcome back to AppForceOne. My name is Jeroen Leenarts and if you've been following this podcast for a while, you might have noticed it's been quite a while. Well, today I'm excited to share something new with you. You see, life has a funny way of throwing curveballs at you.
Jeroen:Some of you might know that I was working at Stream for a while doing developer relations work, speaking at conferences and helping build that community. I was speaking at events like NS Spain, swift, heroes, techorama, appdevcon and 360iDev. I was helping developers discover new tools, writing content about developer experience and, honestly, I love that work. Past tense. You probably know where this is going, but, as many of you probably already know, the tech industry can be very unpredictable and sometimes things just need to change and when those things happen, they affect someone personally and it can be jarring, but there's the thing Sometimes these curveballs lead you exactly where you need to be. So here I am, back to what I love most building iOS apps. I'm now working at Dawn Technology, which some of you might know as eGenic, the company behind the AppDevCon conference and, honestly, I couldn't be happier about it. There's something deeply satisfying about writing Swift code, solving complex problems and creating something that real people will use. It's the kind of work that gets me excited to wake up in the morning and start coding.
Jeroen:But here's the thing Today marks a significant shift for this podcast. Instead of the weekly developer news format, you might remember, I'm pivoting AppForce One into something more personal, more authentic and hopefully more valuable to you as an iOS developer. I'm calling it the AppForce One into something more personal, more authentic and hopefully more valuable to you as an iOS developer. I'm calling it the AppForce One Work Log. Here's what this means 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.
Jeroen:Why the change? Well, after spending time in developer relations, I realized something important. While I loved helping developers discover new tools and technologies, what I missed most was the actual building, the moment when your code finally works after hours of debugging, the satisfaction of shipping something that real people will use. Let me give you a concrete example. Just like last week, I was working on some SwiftUI view that needed to handle complex state management. I spent three hours trying to get the animations right, debugging why my addState variables weren't updating properly and figuring out how to make the UI feel responsive. When I finally got it working, that feeling of dissatisfaction was incredible. That's the kind of real, messy development experience I want to share with you, and I think there's value in sharing that journey with you. Not the polished, perfect version, but the messy, real version of what it's like to be an iOS developer in 2025.
Jeroen:You know what I've noticed? There's a gap in the podcasting space. We have plenty of shows about the latest iOS news, about new frameworks and libraries, about what Apple announced at WWDC, but there aren't many shows that dive deep into the day-to-day reality of building iOS apps. The debugging sessions that will take hours, the architectural decisions that keep you up at night, the moments when you realize you've been approaching a problem completely wrong that's what this work log is going to be. It's going to be raw, honest and hopefully useful. I'm not going to pretend I have all the answers because I don't. Hopefully useful. I'm not going to pretend I have all the answers because I don't. I'm going to share my mistakes, my learning and the solutions I discover along the way. And here's the thing I think this format will be more valuable to you as listeners as well. Instead of hearing about tools and technologies in the abstract, you'll hear about them in the context of real projects, real problems and real solutions so what you can expect.
Jeroen:So what will those work log episodes be like? I'm not entirely sure yet. I do know I aim to do a bi-weekly format, so every other week you will get a new episode. Why bi-weekly? Because I want to give each episode the attention it deserves and I want to make sure that the content is solid and is actually based on complete problems and things that I did. I'm not going to rush content just to hit a weekly deadline. I want each episode to be packed with real value, not just filler content. Each episode will be around 25 minutes. That shows it specifically, because it's perfect for your commute, your workout and that coffee break when you need a mental rest from coding. It's long enough to deep dive into topics, but short enough that you can listen to the whole thing without feeling overwhelmed. Each episode will follow a consistent format the week in review what I actually worked on what shipped, what didn't.
Jeroen:I'll be honest about the challenges, the wins and the moments when I got stuck, code deep dive, a specific technical challenge I faced and how I solved it. This might be a SwiftUI animation issue, a core data problem or figuring out how to integrate a new API. I'll share the actual code as far as my employer allows, the debugging process and the final solution. And if there's new tools or libraries or techniques that I discovered or revisited, I will also include a section that I would like to call tool talk. But here's the key I won't just tell about them. I'll tell you how I actually used them in real projects and what worked for me and what didn't work for me, and why I made those choices. And, of course, there's lessons that I'm learning. So let's share the lessons learned as well, the mistakes I made and what I'd do different the next time. This is crucial because we all make mistakes and there's so much value in learning from someone else's experience I've noticed over the years.
Jeroen:I will also be looking ahead a little bit. So what's coming up in the next sprint, what I'm excited about, what I'm working on in the long run? So, overall, it will be about real examples, that I'll be sharing actual code snippets about real project challenges and honest assessments of what's working and what isn't. No fake demos or oversimplified examples. If something is complex, I'll try and explain it properly, and if I don't, or if you don't understand something, please let me know and I will revisit it in a later episode, because feedback is important and I want to make sure that the things that I share, that people actually understand what I'm talking about, and for me it's also a learning experience to discover how I actually talk about these technical, challenging topics in a spoken format. Also, I want things to be interactive.
Jeroen:I'll be sharing challenges. I'll be sharing the challenges that I'm facing and I might actually even ask for your input occasionally Because, let's be honest, the best solutions often come from a community. So multiple people, multiple minds, thinking and giving input, and that's where I need your help. I want to know what you want to hear about, what topics interest you most, what challenges you are facing in your own ios development, so maybe together we can come up with nice solutions that work for everybody who's listening to this podcast. I want to know what this podcast makes it most valuable for you. So if you give me that input, I can do things that really help you as an individual. You can reach me on Twitter Sorry, it's called X nowadays LinkedIn Mastodon or through my website with your suggestions. Tell me what you'd like to hear about, whether it's SwiftUI, best practices, core data optimizations, testing strategies or anything else related to iOS development. Your input will help shape the content of future episodes. So let's dive in a little bit. Let me tell you a bit where I'm coming from, because context matters.
Jeroen:I've been doing iOS development for over a decade now software development in general. For over 20 years now. I've worked at startups, scale-ups and larger companies. I've been through the great Swift migrations, dealt with the app stores' ups and downs and seen the ecosystem evolve dramatically. I remember when we were all excited about AutoLayout when Swift first came out and we were all trying to figure out optionals, and when SwiftUI was announced, we wondered if it would actually work because, let's be honest, when SwiftUI was just around the corner, it didn't really work so great. So my time at Stream taught me a lot about developer experience, about what makes tools actually usable versus just flashy. I learned that the best developer tools are the ones that solve real problems, not imaginary ones. I learned that developers are incredibly smart and you can see through marketing fluff in about two seconds. I'm one of them. I learned that the most valuable content is the stuff that helps developers get their job done faster and better, so you want to get information that actually helps you tomorrow and today. So now I'm back to building apps full time and it feels like coming home.
Jeroen:There's something deeply satisfying about writing Swift code, solving complex problems and creating something that people will actually use. And let me tell you about the project I'm working on. It's an app for bedrijfshulpverlening, which translates to company emergency response or corporate first aid. It's essentially an app that helps companies manage their emergency response procedures that's a difficult word, at least for me as a non-native speaker First aid protocols and safety compliance. It's a critical app that could actually save lives, which makes the work feel incredibly meaningful. This is a client project at Dawn Technology and it's exactly the kind of challenging, meaningful work that gets me excited about iOS development.
Jeroen:But here's the thing this code base is a beast. It's over eight years old, which, in iOS development terms, is ancient. It was built before SwiftUI existed, so it's all UIKit. It's using patterns and practices that were cutting edge in 2016, but are now considered outdated. We're talking about manual view controller management, old networking patterns and architectural decisions that made sense at the time but are now technical debt. And I love it. I absolutely love it because this is the kind of challenge that gets me excited. I'm going to be rolling up my sleeves and tackling this massive ongoing refactor while adding new functionality. It's like being handed a classic car that needs complete restorations. Sure, it's going to be a lot of work, but the end result is going to be amazing.
Jeroen:This is exactly the kind of real-world development challenge that I want to share with you in this work log the architectural decisions, the refactoring strategies, the moments when you realize that what seemed like a simple change required touching 15 different files and that's just not a lot yet. The satisfaction of modernizing old code while keeping the app running smoothly for users who depend on it. It's a bit like changing a tire on a car while going 120 miles or 200 kilometers an hour down the highway. But I'm also aware that iOS development in 2025 is different from when I started. We have SwiftUI, we have AsyncAwait, we have Actors, we have these new concurrency models we get strict concurrency soon and dealing with AI integration in ways we never imagined.
Jeroen:It's exciting, but it's also overwhelming. There's always something new to learn, always a new framework to understand, always a new best practice to adopt. That's why I think sharing this journey makes sense. I'm learning alongside you, making mistakes big mistakes, most likely, I hope not and hopefully finding solutions that can help you in your own projects. I'm not claiming to be an expert in everything far from it but I am someone who's been doing this for a while, who's made a lot of mistakes, trust me and who's learned a lot of lessons along the way.
Jeroen:So what's coming next? In the next episode, I'll be diving into this Bedrijfshulpverlening app refactor. I'll be sharing the first architectural decisions that I'm making with the team how we are approaching the migration from old patterns to new ones, and the challenges of refactoring a critical app that can't afford downtime, because this thing needs to keep working and it needs to be stable. I'll also be sharing some of the tools and libraries I'm using in this refactor, including some that might surprise you. Not everything needs to be the latest and greatest. Sometimes the best solution is the ones that have been around for a while and just work. But before I wrap up, I have to share something I'm incredibly excited about. You probably can already guess what it is.
Jeroen:I'm again working on organizing do ios in 2025, and it's shaping up to be something special. For those who don't know, do ios has been one of the premier ios conferences in europe and I'm honored to be the person behind this conference, and I'm bringing it back in 2025 in november. Now you might be wondering isn't there a conflict of interest there? After all, I work at dawn technology, which was formerly Egenic, the company behind AppDevCon. But here's the thing Dawn Technology actually loves that I'm organizing my own iOS conference. In fact, it was a large part of why they hired me. They value the community involvement, the networking and the expertise that comes from being actively engaged in the iOS developer community. My podcast work also played a significant role in their decision to bring me on board.
Jeroen:We're putting together an amazing lineup of speakers for DoiOS 2025. Most of them are already online and it's focused on practical, real-world iOS development content no fluff, no corporate presentations, just developers sharing what they've learned, building actual apps. It's going to be the kind of conference you will leave with actionable insights you can use in your projects immediately. I'll, of course, be sharing some details ongoing about DuoOS 2025 in the next episodes, including speaker announcements, session previews and behind-the-scenes content about what goes into organizing a developer conference, and I can tell you it's a lot. If you're interested in iOS development and want to connect with other developers who are passionate about building great apps, this is definitely something you want to keep an eye on. I'll also be sharing some of the tools and libraries I'm using in my day-to-day work, including some that might surprise you while organizing this conference and I want to hear from you, might surprise you while organizing this conference and I want to hear from you.
Jeroen:What are you working on? What challenges are you facing? What would you like to explore in future episodes? Are you planning to attend any conferences this year? Not only Duo IOS, but also Swift Leads, ns, pragma, swift Connection, arctic Conference there's just so many going on this year again AppDevCom, of course. Is there one of those that you're going to? Please let me know and tell me why you are interested in going to this specific conference.
Jeroen:You can reach me on X Mastodon, linkedin, as I already mentioned. You can find me through my website, and I'm genuinely interested in your feedback and your stories and if you're listening on a podcast app that's supported, you can also use Buzzsprout's fan mail feature to send me an SMS message directly. It's privacy preserving, so I won't get your phone number, and I'd love to hear from you and maybe even feature some of your questions and feedback in future episodes. So that's the plan. Appforce One is evolving into something more personal, more technical and hopefully more valuable for you. As an iOS developer. I'm excited about this new direction and I hope you are too. The next episode will be out in about two weeks and I'll be sharing real code, real challenges and real solutions. Until then, keep building amazing apps and remember every expert was once a beginner. Every pro was once an amateur. The key is to keep learning, keep building and keep sharing what you learn with the community. Thanks for listening and I'll see you in two weeks for the first real work log episode.