AppForce1: news and info for iOS app developers

Antoine van der Lee, author of SwiftLee blog and iOS dev at WeTransfer

Jeroen Leenarts Episode 1

Send us a text

Antoine is an iOS developer with a good following on Twitter. He often helps CocoaHeadsNL when he can. He works for WeTransfer, writes on his blog and recently launched version 3 of RocketSim.

Stream makes it easy for you to seamlessly integrate real-time experiences into your application. Check out their Swift tutorial to learn how you can get started adding video or in-app messaging to your apps!

Lead Software Developer 
Learn best practices for being a great lead software developer.

Backblaze Cloud Backup
Never Lose a File Again with the World's Easiest Cloud Backup. Back up your Mac or PC just $6/month.

Disclaimer: This post contains affiliate links. If you make a purchase, I may receive a commission at no extra cost to you.

Support the show

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

Jeroen Leenarts:

Okay, welcome to do my specialization with Antoine formulae. He's a software developer in the Netherlands. He works at retransfer. He has just launched his own products. And he's also, maybe you're familiar with him online with his blog swiftly. So I just say Antoine, welcome. Glad that you could join me. So let's just begin, right.

Antoine van der Lee:

Yeah, that sounds good. Thanks for having me at first. I feel really honored to be in this quiet new podcast, as I can say, I think so. Yeah, I'm looking forward to discuss all the cool things related to space and the community.

Jeroen Leenarts:

So before we really start, I wanted to get something out of the way. There has been something going on, on your Twitter feed about chickens, what's up with those?

Antoine van der Lee:

Yeah, we're actually really lucky that I'm in the front part of the house right now. So I think a few months ago, we decided to take some chickens in our own garden. But the thing is, when you buy those chickens, you actually buy them. You don't know whether they are roosters or not. So we we took five of them. And as lovely as you can be, it turned out that we have four roosters. Yes. And at this point, they are battling with each other we'll have to, well, most loudest voice as you can tell. Yeah, that doesn't make me big friends with my neighbors anymore.

Jeroen Leenarts:

So they already started complaining.

Antoine van der Lee:

Well, yeah, funnily enough, they started complaining once the first rooster started yelling. Not knowing that we had another three of them waiting for them. So Right. Yeah, right now it's, yeah, it's not the best thing we have here in the house.

Jeroen Leenarts:

Okay, well, it's it's going into the winter now. But next, next spring, maybe turn on the barbecue. Yeah, maybe something. Alright. But well, just to get to the point. What I wanted to have you on my podcast for is because you're pretty much a well known name, I think, in within the at least a Dutch iOS community. And you have quite a substantial Twitter following. Can you tell a little bit about yourself where you're from? What's your origin story?

Antoine van der Lee:

Yeah, of course. So yeah, it hasn't been like this. A few years ago, I think. I started in 2009, my mobile development journey, where I? Well, I started actually developing Windows phone applications, funnily enough, it wasn't really what I wanted to do. So quickly, I switched over to building iPhone applications. And yeah, quick, quick step forward, I think I started my own blog and the whole community growing part in in 2015, officially, where my first book post was released. Looking back at that blog post, it wasn't from from a quality, of course, it's the first the first blog post you write. And it wasn't really consistent as well. So three years later, I think I published 15 books or something like that. And in 2018, I really started to focus on growing as an engineer, as well, as like a community person, I really wanted to deliver weekly blog posts. But I also really wanted to speak out on conferences. And at the time, I found it really hard to get myself both at conferences, just because I wasn't really known. They couldn't really knew upfront better whether I was a good speaker, or whether I knew what I was talking about. So I decided for myself that that, that it was required to really build up a name and build up consistent content from myself. So you know, that you built kind of like a name for yourself that you know what you're talking about, as far as you can tell. So from that point on, I think it's two years now, two and a half years ago, I really started to focus on writing weekly, and yeah, the turnout from being something I'm not particularly liked to something I really enjoy doing right now. So yeah, that's a it's a long story short, because I think we can dive into

Jeroen Leenarts:

many details and what's the role of your current employer we transferring all of this?

Antoine van der Lee:

Yeah, it's it's a it's a funny story because I get often questions from both colleagues, as well as my friends or my girlfriend. for sec for thinking like, are you allowed to do this? You know, like, are you allowed to go to a conference during working hours? And, and, you know, what is that relationship and I'm really happy to tell that we transfer supports me since day one where they really want me to, to continue what I'm doing. And they try to give me the space and freedom, I need to either speak at conferences, work on my blog, write blog posts. But honestly, I decide mostly myself to do those things in my spare time. And really, yeah, trying to find the sweet spot between both. But most of all, I think it's important to point out that they really support me and yeah, it's obviously also a good thing for them, because I really shout out that, yeah, we transfer is a great company to work for, and they, they support open source, and they support me. So it's kind of a win win situation for both them and them and me.

Jeroen Leenarts:

Maybe just for people that are unfamiliar with we transfer, what is what is we transfer what what's the what's the product,

Antoine van der Lee:

it's best known for being a file transfer system where you can upload very big files and send them to wherever you want. The thing I hope many people know is from its collect bits. effect, it's a bit less no product, but it's, it's one of the few products we have at retransfer, which we develop. Collect is collecting application where you can add all kinds of content and share them everywhere with wherever you want. And it basically allows you to really, really collect like, like a collection of files related to a certain project. It could either be web links, images, videos, but as well, text content and all those things. It really like the connection between all the creative people. And it allows you to really build out an idea you have to get it with all the other products we have.

Jeroen Leenarts:

So you work on this collect product. And on the we transfer app, am I correct?

Antoine van der Lee:

So this this is actually the whole this is the hard thing to explain. So we transfer and collect are two different things. Okay. And that's often what we run into, especially people from the first day that know we transfer for years have a hard time understanding what collects relationship is to be transfer. But those two are really distinct products, even though they look similar, because they both share and send files. I think I think the main difference is that collect is way more visual compared to transfer and collect. It also has multi platform applications, like an iOS application and an Android application. But yeah, Indian they are connected. So it's yeah, they're very family from each other.

Jeroen Leenarts:

So and the the experience that you transfer into your blog posts are those mostly gains at your day job at we transfer. So you learn things on the job, and then you write about those and talk about those.

Antoine van der Lee:

Yeah, it's a bit back and forth. So one week, I'm writing about something I've been developing to be transfer at that moment. With another week, I might pick something from a list I'm keeping with me all the time, where I really want to dive into a certain new topic. And through writing a blog post, I learn myself every week a new thing. And the very next day I started implementing it in the collected. So for example, last week, I was really diving into the lifecycle events of a minute stop projecting. And the funny thing is, I started writing the blog post with all my experience from the collected. But it turned out that once I start reading into it a bit more with certain documentations from Apple, I really learned more about the topic. And the very next day I started implementing code updates in the collected because we could definitely improve a lot more.

Jeroen Leenarts:

Yeah, that's always the case with Core Data. Right?

Antoine van der Lee:

Yeah, it's a it's a very old framework from from, from the old days. And it has been improved improved over the years. But there are a few things that are really like the solid foundation that you might not even know. And yeah, that's the fun side effect of writing blog posts every three weeks.

Jeroen Leenarts:

So basically, let's just wrap the topic we transfer up. It's it's a great place to work. You like working there and they really support you in all the other things that you do professionally.

Antoine van der Lee:

Yeah, exactly. And not even though only myself. A few months ago, we had a supporting for open source project where every engineer could donate a piece of money to a project they liked. So yeah, nothing but good words about it. From my side.

Jeroen Leenarts:

Okay, well, that's great to hear. So it was good to hear that there are great places to work as an iOS software developer. So I wanted to talk a little bit about your blog. You already mentioned it before. So you already run this blog for like two years now, is that correct?

Antoine van der Lee:

Well, yeah, officially, like since 2015. So a bit longer, but I think the quality erased to an LTS ago.

Jeroen Leenarts:

So that that's like two and a half years ago, you really like you really went for it and wanted to do things, right, so to speak.

Antoine van der Lee:

Yeah, exactly. Writing weekly, really keeping it up to date and making it making it known in the community kind

Jeroen Leenarts:

of, but what for you? What was the trigger to actually want to share a blog post to want to be a public speaker? What was what's what's what's in it for you? What, what did you What do you get out of it? Why did you get started with it?

Antoine van der Lee:

Yeah, you know, it's funny, I was speaking with my sister yesterday, coincidentally, and we were discussing our youth and like, how we are what, what made us like the person we are today. And if I look back, I had several hobbies. So I played darts. When I was 13. And I really wanted to be the best daughter of the Netherlands, you know, I really tried my best to get the get the most out of it, I had the scooter, I did the same with the scooter, it has to be the nicest scooter of the of the village, even though it's a small village. But you know, I always tried to be the best person of myself and do something. And that relates a bit back to the book as well, you know, I really want to get the best out of it. And I really want to make it as good as possible. That's one of the reasons that's like the personality behind it. But looking at why I really decided to start writing weekly, it was mostly it's like a knowledge base for yourself, you really force yourself to be up to date in a community, right about something really dive into something because you know, it has to be from a certain quality, you need to know what you're writing about. So it's kind of a way to force myself to dive into something new, and grow as an engineer every week.

Jeroen Leenarts:

But when you write a blog post, how do you know, for yourself that what you're writing is good enough, really, because I hear a lot of people that are blogging or doing something that's publicly readable or visible, that they have something that's called the imposter syndrome, that they feel that what they are doing is not good enough for everybody out there.

Antoine van der Lee:

Yeah, it's often a reason for many of them to not start writing or what one reason I often hear as well, as you know, there's so many blog posts about this topic already. So why should I write about it? The thing that worked for me is that I really tried to ignore that effect. And that I was not writing for anybody else. But I was writing for my own knowledge base. And that really allowed me to not focus too much on the quality, even like, another sentence I really had in mind is that I don't like writing and my readers don't like reading. Okay, so I can keep them as short as possible. It doesn't matter. It's it has to stay to the point, short and clear. And it doesn't matter if it's not a very long, detailed blog post. Over time you start, you start getting better at it.

Jeroen Leenarts:

Yeah, must have been increasing in size over the years, I think.

Antoine van der Lee:

Yeah, no, you're you're entirely right. And I think that's part of like the grow the growth you take as an writer, you know, you get better at it. And it starts to become easier and easier to write longer blog posts. But especially in the beginning, it might be a really challenging fact to really gain that the quality blog posts you really aim for. Because when you look at the the bloggers that are out there, at that time, I was writing or reading NSA hipster quite a lot, which is still today a really great blog. You can simply be as good as them within one day, you know, you really need to start somewhere. And as long as you keep that focused for yourself, then I think you you can release a blog post. Yeah, as soon as you want.

Jeroen Leenarts:

Yeah. Okay. So you're working at we transfer you're writing a blog. I guess that takes quite a lot of time both of these things. And then you decided to also create your own product it seems so you recently released like version three it was of rocket ship, correct? Yeah. So what's what's special about version three compared to version two? And what is rocket sim really?

Antoine van der Lee:

Yeah, you know, before I dive in, I think it's it's interesting to tell like, how do I manage time? How do we make it possible to do all those things together? And the thing I'm really dedicated to is automating things and being really productive in the time that I have. So, and also consistent, you know, so every Monday evening, I've blocked two hours to write a blog post. And I force myself to finish it in those two hours. Every Tuesday morning, I've got one hour to release the newsletter. And so those are really fixed time slots I have for every week. And that already enables me to do other things on the Saturday, for example, which I use for my hobby, which is RocketJump. So that way, you really manage yourself the time and he really gave yourself the opportunity to deliver quality content and a smart, focused amount of time, kind of,

Jeroen Leenarts:

but but also to be able to put the work down once the time is up really?

Antoine van der Lee:

Yeah, yeah, kind of because you know, you have a limited amount of time, you really know that you need to squeeze it in as well. But it also forces you to deliver. Because if I would write a blog post over a few days that I'm pretty sure that the next day, I don't like the quality anymore, and I want to rewrite it. All those kinds of things that I don't have anymore, because I'm just really focused on that specific time slot.

Jeroen Leenarts:

Okay, but rocket sim. Yeah. What can you like, describe what it does for people that are not familiar with, with this product that you have now in its third iteration?

Antoine van der Lee:

Yeah, totally. So it started out as being like a companion app for myself during the development of free transfer, we, we honestly have a lot of universal links endless because every transfer can be opened as a deep link in the app. Okay, so you can imagine that every day, I got another deeply to test and open the app with. And before Raka, zoom, I had to copy the link, paste it in the clipboard of the simulator, open it in Safari, and then open it in the app. Or I would create a breakpoints, which would call dynamically a method that would open the deep link, quite cumbersome, and it wasn't really, really productive, you know. So

Jeroen Leenarts:

this was like before the sim controller improvements, right? Because you can, you can do some of the things that described from the command line. Now, it's still a bit of a hassle, though.

Antoine van der Lee:

Exactly. So this, this is the the nice segue I needed, because this was, indeed what I was starting to do after that. So I was using the terminal to open the it blinks. But then still, I had like returning deeplinks, I wanted to use every now and then to just test out a feature. So I created that HTML page with all those deep links. And I could open that in Safari, and open the same URLs every now and then just for testing purposes. But it was still not really manageable, I had to edit the HTML file, and so on, and so on. So I started to build like a layer around CTL. That's like the terminal command line tools, you need to install and install Xcode, which you can use for all kinds of things like opening URLs in the simulator. So that's, that's, that's where rocket sim, one that started. Fairly simple, just mentioned deep links. And it wasn't even really publicly available. Because you know, I had it for myself or my colleagues,

Jeroen Leenarts:

you were scratching your own itch, so to speak.

Antoine van der Lee:

Yeah, kind of, and I wasn't really convinced that it was good enough to be an app on its own. That was worth bringing out with all the consequences of keeping it up to date, maintaining it, and so on. Until I started running into another program, which was recording the simulator. And as you might tell, you can do that as well with the terminal with with a certain commands. But once again, it wasn't really working out. And especially if I wanted to share like a feature in a GitHub pull request or an issue. I had to convert it myself to give first, and then I could upload it to get up to have a nice visual representation of the changes I did in a pull request. Well, quite quite a few steps before I was where I really wanted to be. So once again, I started to enhance rockets and kind of with the feature of recording the simulator. And this all sounds really simple, but calling him into exerience NCTL for recording videos in a sandbox Mac application turned out to be really hard. So I think I'm only calling that method took me a few weeks already in my spare time, obviously. But yeah, it was quite challenging, but once I got it done, I was really convinced that this was a unique product because it took so much time and you No, it was something special and you could easily access it. But yeah, I know, I posted it on Reddit, with all the confidence I had. And then I started getting comments. People weren't happy with it. Why should I pay money for such a simple project? I could do it with a terminal, you know, the added value was was a bit hard to find for them, even though I really thought there was something in them. So I didn't stop there. This was a freeze into that, I think. So we started to continue thinking like, what what what is it that really makes it a special app on top of the terminal, what makes it not just a layer on top of the terminal command, we all have our can access. So I started to look into gift cooperation, but also started to look into like, being able to drag into App Store connect, for example, making sure that the gifts are so small that you can drag it into the pull request of GitHub, and really quickly give a feature preview of something you're developing. And once I finished up developing that version, which is now as of today, rockets in 3d, though, I really found it's good enough to launch it bigger launcher dot prototype and build a website builder. Well, like a real product representation around it. So yeah, as of today, we got rocket ship with with Yeah, quality recordings into both mp4, gifts, and SOP few supported formats.

Jeroen Leenarts:

So what you're saying is that rocket sim does a lot of things. And it individually, those things are all things you can do with tools that are already available to any iOS developer, but yet streamlines the process. significantly.

Antoine van der Lee:

Yeah, that's on one hand. And on the other hand, if you would record using the terminal command, you would get an mp4 file. But if you want to drag that into App Store connect, for example, you have to transform the resolution into the right resolution, you need to add a soundtrack because that's required as well. If you want to go further into give, you need to do that manually yourself as well. And once you start digging into lowering the size of gifts, you will easily be reading a lot of blog posts on the internet with all kinds of kinds of tricks. So you can basically say that I've done that for you and bringing you rockets.

Jeroen Leenarts:

So it's really essay A a process optimizing tool so that you don't have to remember all the intricate details of the command line, you don't have to remember what exact formats and conversions you need to do to have it in the exactly right format, for instance, the App Store Connect page if you want to upload it there.

Antoine van der Lee:

Sounds Yeah, exactly. Yeah, it's really it can really big part of your workflow. And maybe normally, you wouldn't really share videos of what you're building, or you wouldn't really share a visual representation in a pull request. But I think once you have rocketium, which is by it's, by the way free now in the app store as well, I think you might be sharing a lot more

Jeroen Leenarts:

yokas. Because you've integrated it as a proper Mac OS application, you can most likely just use it as a drag source for any direct target that you want to deal with. Right. So if you if you want to send somebody somebody has a quick demo on Slack, you can just drag it in there.

Antoine van der Lee:

Yeah, exactly. You know, I'm only naming like the most common use cases like GitHub, and App Store connect, but you can also use it to share it on Twitter, for example, to really quickly share that feature, or like you said, with colleagues on Slack. Yeah, totally.

Jeroen Leenarts:

Okay. So just to recap what we've talked about right now, we talked about we transfer, we talked about your blocks. We talked about rocket sim, but you're already also making quite a name for yourself as a public speaker, I think. So how did you get started on that? Really? You already mentioned it a little bit, but it's, it's something completely different compared to writing blog posts, just standing on the stage and talking to people. It takes a different set of skills, I think. So how did you get started? Yeah.

Antoine van der Lee:

Yeah, you're entirely right. I think the confidence started for me as being a DJ. Once with those.

Jeroen Leenarts:

Wait, wait, wait, stop, stop. Stop. You were a DJ.

Antoine van der Lee:

Yeah, you know, I told you about a few hobbies I had before. Being a DJ was another one. I even findable on Spotify as a producer. It's it's one of those little facts I'm not sharing with everybody because you know, it's

Jeroen Leenarts:

I'm not sure if we're gonna cut this though. So sorry.

Antoine van der Lee:

No, that's fine. It might be a good icebreaker for for people approaching me. But uh, you know, I started being a DJ and that that's where you start playing in front of audiences. And it starts with 50 people. And I think I, my peak point I played in front of like 500 people locally, but you know, it's still like a lot of people watching you were a mistake is easily made. And I think that that gave me the confidence and the foundation to start speaking out as well, when I started making my word, my hobby as well. And I think my first experiences were at Coco had sanella, you probably know it, I think you're part of it even so. But it's a great entrance point where you can start speaking in front of like a smaller group of people, where, you know, it's an I think it's always allowed to make mistakes. But you can really gain experience there. And that's where I started speaking. And funny enough, I got myself a job that we transferred through speaking engagements. It was due iOS, I was called 24 hours before as a as a replacement for somebody that was sick. And, you know, I got the question like, hey, we know you had that thought from from cocoa heads. Do you think you can do it as well on do iOS tomorrow, because we have somebody was sick, who can't attend anymore. And at that point, I was like, you know, Damn, it's probably in front of like, 100 people or something I'm not really familiar with. But uh, yeah, on the other hand, I was like, Yeah, this is Jeff. And I need to do this, and whatever. If, if I'm screwing it up, I need to take this opportunity. And then it turned out that Sam, the product manager of retransfer, as of today, was in the audience and asked me to work for retransfer afterwards.

Jeroen Leenarts:

I think I remember that. I think I was actually one making that call to you.

Antoine van der Lee:

That could definitely be through Yes. A bit hazy? Because

Jeroen Leenarts:

it's quite a few years ago already, but yeah, do is that was, that was something else. I hope we can do it sometime soon, again, with with Coco Chanel. But we were planning on this year. But you know, all circumstances, we decided to postpone. But it's really hard. So But speaking, you just basically you're saying, Well, I just did it? What was the response after the first like, proper speaking engagement that you had. So at Coco Chanel, you did like bit getting familiar with speak public speaking. And then all of a sudden, you were thrown on a bigger stage. So what was the response after that?

Antoine van der Lee:

Yeah, so this is actually something I learned and something that really makes me confident to start speaking again. The thing is, unless you really ask for it, or when it's anonymous, after a conference, you don't really get feedback that you did something wrong. So whenever you start speaking, and you're finishing up after that, it seems like you did a great job because nobody is approaching, you're like, Man, you screwed up, man, you should have done that. And that better, you know. So the thing is, you really just need to go out and speak and build up the confidence for yourself. And even if you get a response or feedback, like hey, great, great job, great job. But once you do it again, say unless, for example, take that just as a positive point of feedback, which you can take to your next speaking engagement and make it even better. So you build up confidence over time, and you also build up confidence watching recordings of yourself, which is really awkward in the beginning. But that's the best way to give yourself feedback, because you see how other people see you.

Jeroen Leenarts:

Okay, well, let's, let's look over my notes and see what else I wanted to talk to you about. Is there anything else you would like to mention? While I'm interviewing you?

Antoine van der Lee:

Yeah. So if in any way I can give people the confidence to start writing their own blog, start doing speaking engagements, or being part of the community, just let me know and shout out on Twitter or contact me through through my blog. And I see what I can do because I think the community is a great place where everybody has the opportunities to speak out and share their knowledge.

Jeroen Leenarts:

I will make sure to link those resources. Once I create my show notes, and any books or resources that you recommend besides your own blog, of course.

Antoine van der Lee:

Yeah, one shout out my own blog right now. Well, something I was bought off to be fully, fully honest yet but I think it's a really great book. It's the Swift for good book. It's it's out for almost a year now I think, but it's still being named as one of the better books in the community. It's a community driven book written by quite a few people from the communities, so all different angles and all different topics. But really interesting. And the good part is that once you buy the book, it will all go to charity. So I think it's a really good reason to buy a book, gain some knowledge and have some fun.

Jeroen Leenarts:

Okay, well, thank you for your time. Antoine. It was a very interesting talk. I think I learned a few new things about you actually. Because besides, besides the blogger and the public speaker, you're also a DJ and a hand keeper. So. So I'm gonna like, make sure that everything that we've talked about will be linked from the show notes. And I will make sure that if there's anything that you want me to link in the show notes, I will also put them in there. And thank you for your time. And is there anyone else that you think I should ask for an interview?

Antoine van der Lee:

Well, in that sprout, I think, one one obvious person to interview is Donnie, Donnie Wells is also a great community speaker. I'm pretty sure he has some great stories to share with you as well.

Jeroen Leenarts:

Let's see first if he responds. Once I put this I will see whether or not he actually listens and actually picks up the challenge that you've put forward.

Antoine van der Lee:

So that's a good check. Let's not saying anything. Okay.

Jeroen Leenarts:

Hey, thanks for your time and talk to you soon.

Antoine van der Lee:

Sounds good. Thanks for having me.

People on this episode