AppForce1: news and info for iOS app developers

Tunde Adegoroye, Lead Software Developer and YouTuber

November 02, 2021 Jeroen Leenarts
AppForce1: news and info for iOS app developers
Tunde Adegoroye, Lead Software Developer and YouTuber
AppForce1: news and info for iOS app developers +
Help us continue making great content for listeners everywhere.
Starting at $3/month
Support
Show Notes Transcript Chapter Markers

Tunde was suggested to me by one of my previous guests. And boy was he right. It is amazing to just see what Tunde has achieved in such short time. Best part, he actually wanted to sell icecream when he was a kid.

The I.T. Career Podcast
Your ultimate guide to success in the I.T. industry. Helping you Grow your career!

Listen on: Apple Podcasts   Spotify

Runway
Put your mobile releases on autopilot and keep the whole team in sync throughout. More info on runway.team

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

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:

Hi, and welcome to another special edition of my podcast. I'm sitting here with Tinder addict, Roy. I hope I didn't slaughter that today. And you're somebody who does something with YouTube and you do something with iOS as well, which is a nice combination, I think. And somebody suggested I should get you have a podcast. So yeah. Welcome. And how you doing today? Yeah,

Unknown:

thanks for having me. I'm definitely gonna be taking to the Nigerian embassy pretty soon. Because the way you'll say my name is fluid like you've lived. You've been living in Lagos for like the past few years. So you have the way I'm doing great. Thank you for having me on. You ever suggested me as well. Pants was just to me. So yeah, I'm looking forward to a good talk. And, you know, just good vibes and whatnot.

Jeroen Leenarts:

Yeah, just for disclosure, it was actually Paul, who's just you. Okay. Cheers for. And so yeah, just to get things started. You already mentioned your Nigerian National, but also a British national, I think, if I'm correct, yeah. So how did that happen?

Unknown:

Well, both my Well, like I said, so one of my parents was born in Nigeria, one of my parents was born over here. So luckily enough, because obviously, you know, one of the passport over there, I'm able to get your citizenship. And in terms of culture and whatnot, you know, I would say I identify more with my Nigerian side, because I've been raised with a Nigerian culture. And so, surprisingly, there's a lot of British culture that you'll probably know more than me. And it's actually like, a lot of things that I don't know, that I'm still still discovering this day, because I know a lot more things about managerial culture. But yeah, man, it's, I think it's important for people like me, specifically to know to know your roots to know your culture, you know, to know where you're really from, and so you can get to know yourself. And yeah, man, just explore all that. So yeah, that's, that's what I think well, that.

Jeroen Leenarts:

But to me, you'd have a distinctly British accent, if I might say,

Unknown:

Well, yeah, so So at my M. So at home, my parents actually do speak to me fluently in Europa, which is the native tongue, nada tribe that, um, my parents are from, but obviously, growing up, albeit grown up in here, and I've obviously got the English accent. Well, I've got a monster accent. I don't know if they I don't know if this sounds weird to you. Because obviously, in the media, they always portray English people really posh voices, and they like say, you know, like, Oh, do you want like a tea? Or do you want a crumpet? But I'm from Manchester. So we're, like, really rough? You know, we're talking like I'll say walk or borrow? So it's not really, it's not really what you're used to see. Hear it and seeing it like, you know, UK descriptions in films. And

Jeroen Leenarts:

yeah, a lot of oil move out of the way. Yeah, we

Unknown:

don't we don't say that much. It's a lot. It's a lot of it and what you see in my mind, so viewers, like, you'll see that if you if you watch me on YouTube, which I'm pretty sure we'll get to later. You're probably wondering half the time, what is this guy saying? Like, I don't understand the stuff that he's saying. But it's just a it's just a habit with me that you know, will be coming from? Yeah.

Jeroen Leenarts:

Why try and hide where you're from? Right? Oh, yes.

Unknown:

hopes? And yeah, definitely, I don't see the point of doing that. If you you should always be 100%, your authentic self 100%.

Jeroen Leenarts:

Cool. So just to get things a little bit on track. In regards to iOS development, you do YouTube videos on iOS development? Yeah. But I reckon that that's something you do in your day job or something as well. How did you how did you end up as an iOS developer,

Unknown:

so for the story, and this is actually a true story as well. So when I was in high school, I actually wanted to originally be an ice cream, man, that's not a joke. So I always thought that, um, you know, these ASCII minds have a pretty good life, you know, just giving people ice cream and whatnot. And I love ice cream as well. And I went into something, we have something in my high school called careers, and they were basically like a yard off and go work out for you, mate. So you might want to choose a different career path. So 16 year old me was crushed about that. So then when one of my teachers recommended that, hey, you should go into it. And I went into the IT field. And then I decided in college that actually you know what, I'm gonna study computer science, try to study computer science and completely bombed it. So I dropped out because I just couldn't understand binary for the life of me, I still can't to this day. And then when I was in college one day, I was like, actually, you know what, I don't really know what I want to do right now. And so someone suggested to go and study multimedia and Internet technology, which sounds a lot fancier than what it is, but it's just basically teaching us different parts of media in today's current climate. So I did a bit about so that was my first exposure to like programming. So I started off in C Sharp building basic Windows applications. And but a lot of my university stuff didn't really teach me a lot of stuff and I wasn't really enjoying it too much. Like I remember having to build a website using PHP and I was like, I really don't want to have to do this stuff in my life ever again. And at the time, I was working in Oh, two in a phone shop. And I was like, You know what? I wonder how iPhone apps are made. So I just decided to go online and search for, you know, how to make an iPhone app. And the first course that came up was men twos designing code. I don't know if you've heard of that. Nope. Yeah, yeah. So by the way, I'm not getting paid for him to say this. But basically, if you are listening, if you are listening to the you want to if you want to have a good course, I started off with designing code, which I think is a good entry level for iOS developers. And I basically learned how to build like this news app using Objective C at the start. And then it was around the time when swift dropped. And I was like, actually, you know what, Swift looks a lot nicer than Objective C. So let me start that. So then I built this news up. And then for my final year project, I built a weather app, and so on, unbeknownst to me, when I applied for my first job, I actually didn't know that the role was for a senior role at the company I currently work for now. So I was kind of just applied thinking that iOS development must be accepted anyone. So I applied for a job. And I use the same app that I developed on my, for my dissertation. And then that's what kind of put me in the industry now. And I've kind of worked my way up my company from junior to now being a lead. So yeah, that Sam a condensed version of my story.

Jeroen Leenarts:

Yeah, that's pretty succinct. Indeed. So and what, what year, did you actually drop out of the education that you were initially trying to do? So just to go over the timeline?

Unknown:

I so it would have been, I want to say would have been in 20. I would have been in like, maybe 2014 20. I want to say the year 2014 2015. So I didn't I didn't actually drop out of college. I just I just basically dropped that course. Okay, well, I swapped instead for doing sociology, which is basically paid me absolutely no benefits in my life. But I just thought, you know what, let me try something different. Try sociology.

Jeroen Leenarts:

Probably Probably a little bit easier than software development. And it?

Unknown:

Yeah, well, yeah, it was a bit easier. But yeah, so yeah, that's pretty much. That's pretty much my story so far.

Jeroen Leenarts:

Yeah. Well, I'd say it's a good move to just keep on going with an education and just try and swap out stuff if you're able. And so iOS development, you got started on that, because looked interesting while you were selling these devices in a store. So how hard was it to get started with iOS defense,

Unknown:

is really difficult. So the funny thing is that although I did study programming in university, I still classify myself as a self taught developer. And the reason why I still class myself as a self taught developer is because in my university, it wasn't really an educational route, where we actually got taught how to program on my course, it was basically Sumos, like, here's a, here's a some, here's a document, copy the lines of code and the sheet of paper, and it will work. And if it doesn't work, then you're on your own, and you're screwed. So you have to figure out, but so I just decided to just basically try to learn iOS development. And the biggest problem that I had when I was learning, iOS development, on my own was the key word. So a lot of things will be thrown to me in terms of like, someone would say, like immutable state or mutable state, or variables or computed properties, or, you know, isolation inheritance, I wouldn't know what any of that meant. And so what I used to do, that helped me I don't know, if anyone else who's listening does the same thing is I would actually look up these terms. And also as well, if someone literally said this to me, I would just flat out say to them that like, can you just explain to me what that means? Because a lot of times you might feel like, oh, you know, it's pretty, it's a pretty stupid question for me to ask. But the model I have in life is that like, if if I don't know, why wouldn't I ask nothing's a stupid question. You know, I mean, because you're always learning every single day. So that's how I kind of got started. And I also did a lot of them. So it's pretty ironic that I'm about to say this. But obviously, on my channel, I released tutorials, which obviously is useful. But the best advice I give to people is like, don't just, you know, sit there and just follow a bunch of tutorials, you actually have to go out into the wild and actually do stuff. And that's one of the toughest challenges that I had was transitioning away from tutorials and now actually being like, hey, I need to sit there, plan how I'm going to tackle this piece of work, and actually break it down and basically set myself up to fail. So I can become better at iOS development, if you know what I mean.

Jeroen Leenarts:

So the basically, once you've got the vocabulary down, then the logic came natural. You could say Yes,

Unknown:

definitely 100% Because then I kind of knew I kind of knew what it was that I was talking about. I kind of knew what type of things to use in certain situations. And then once I got the vocabulary down, it was then basically time for me to fail. Because the best way I learned, I don't know about you, but for me personally, I need things to break, so I can actually see why it's breaking. Because once I know why it's breaking out, then understand how the whole thing works. So that's how I, that's how I work and how I tackled all the problems to get to where I am now.

Jeroen Leenarts:

But would you say that the path that you took in learning, iOS development, and really learning software development, for real so to speak? Would you say that that path that you took that it actually has helped you with how you structure your content for your YouTube videos?

Unknown:

That's a good question. So um, so a lot of a lot of my YouTube videos, when I actually structured I kind of do it in a way where I have a have found an interesting topic that I find new, and I want to share for people to learn about, or be, if I'm putting myself in the shoes of when I was still, you know, starting out in this industry, what do I think is important to be aware of and what to learn. So, if you watch a lot of my videos, you'll see that like, sometimes you've I break things down, and I explain things multiple times, to the point where you might be thinking, like, oh, man, you know, I've got the point. But um, I do think at the same time, like just breaking stuff down and making sure that you fully understand what's being said what each term means, like I was saying before about capillary, why I'm breaking it down, why this might break, why this won't work like this will work wise is a good book, just questioning everything is why a is one of the things I tried to instill in people through my videos and not just tell them that, hey, you know, if you want to make an API request, you got right, this class, and we'll just work like, why does it work? Do you know? I mean?

Jeroen Leenarts:

Yeah, just follow a recipe, and it'll work that leads to get results. Yeah. So before we, before we dig in, we have talked about your YouTube channel a couple of times now, can you can you give a quick overview of what your YouTube channel is about?

Unknown:

Yeah. So um, so just to go into how I started it all, okay, cool. Just go ahead. Alright, cool. Cool. So, um, the my channel at the moment, it basically teaches all things iOS, so I teach not only just iOS apps, as well, as its software development, I'd like to say, because I kind of give advice on like, how you should prepare for interviews, you know, things to look for how to do things to look for when you're applying for jobs, how to find a job, I also try to teach the best practices for iOS development I'm aware of, and I know tried to share my knowledge, and also tried to teach common trends. So you know, Swift UI, combines with concurrency videos, and I've also got some older videos planned for that. So just like the latest technologies, and like I said before, the why as to why I'm doing these certain things. And so when you're watching my stuff, I don't want you to feel like oh, he just taught me how to call an API, but I actually don't know why he wrote it in a certain class or why he's a struct or why is the constant Janome. See, so that's pretty much it.

Jeroen Leenarts:

And so it's mostly focused on software developers who are specialized in iOS, that's maybe the best description. Yep. And and why did you start the YouTube channel?

Unknown:

So this is gonna sound like a bit of a sob story, right. But it's not actually a sob story. So I hope you don't like click over like some violin musical for this. But essentially, what happened was is like Nashville last year in November, right, listen to your story. So my apartment actually got robbed, you see, so I actually lost like, a lot of things in my apartment. And I was waiting for my insurance to come through. And I just thought to myself that like our mind, you know, cuz this is driven lockdown, as well as like, oh, man, I'm so bored man. Like, what could I do? And it just pops into my head here. That one data lets you know what Yeah, I actually do feel like I have something to offer. So why not start a YouTube channel, you know, why not to actually, you know, do something productive to make a negative into a positive. So I decided to just record a couple of videos. And if I'm being honest with you, my first set of videos were like, awful, because I didn't know anything about like recording. So like, the font size is so small, you can barely even read it. So yeah, I've obviously got a barrier doing that. But I kind of just decided to just do that and to share my experiences to share how I would tackle things and my thoughts within this community as well. So yeah, that's how that's how it got started.

Jeroen Leenarts:

So but that's not not too long that you've been doing these videos and Right,

Unknown:

no, no. So I actually originally I think I officially started recording my videos in January this year. I want to say so. Yeah. And you know, because my apartment got robbed in the set towards the end of December. Nice. Yeah, tell me by honestly like, I don't know why these guys these guys were so crazy right even took me even took my washing up baskets or right now someone has my washing basket with that with my underwear in it. So I don't know why they want not but they've got it. So yeah, so I started it in January. So I think it's around maybe the 10th of January be my first anniversary. So yeah.

Jeroen Leenarts:

And how many videos that you put online thus far?

Unknown:

That's a good question. I don't even know how to upload videos. I'd have to count for you. But what is review? I wouldn't say I wouldn't say it's definitely over. I feel like it's over 30 or 40? I've not been keeping count. I've kind of just been uploaded. Yeah.

Jeroen Leenarts:

And and how have you been doing for you? Is it? Do you get a lot of response? Or do you get a lot of views? What's your take on that? Yeah.

Unknown:

So um, to those of you when I first started out, yeah, I actually thought that my my crazy because of my initial target was 100 subscribers for the end of the year, right? Because I mean, I'm not really someone who's into mark, like really good at marketing. And if he was to give me a board full of analytics, honest to God wouldn't know, like, what's going on? And so I just wanted to put out content now just to share my thoughts and views. And I think at this moment, I think those a couple of weeks ago, I crossed 2000 subscribers. And in terms of views, I think I've maybe 50,000 views on my channel so far, which to me, I'm like, Well, I appreciate it. You know, it's really impressive as well, I mean, so I am appreciate all the support, because I didn't really think it will grow that big. And a lot of the comments that I get a pretty positive comments and also other comments from people in the community, like, you know, and I think you've had Stuart Lynch on your podcast, and obviously, Paul Hudson, I don't think you have your polio podcast. Yep. Yeah, you have Yeah, you've had Paul your podcast. Mzs left some good comments and other people that if I forgot, I forgot. Sorry, because there's loads of comments on my channel at the moment. But yeah, the old support has been amazing. And it's led to good opportunity as well, because I'm actually speaking at my first them iOS conference next year. So iOS Singapore conference. I don't know if you've heard it out. So yeah.

Jeroen Leenarts:

That's That's what is it. com sg or something? Yeah, that's the one. Yeah, it's a nice place to go to.

Unknown:

So I would love to visit Singapore. I don't think I think this one's gonna be online. But like, if I can go when things are better, we call that 100 cent visit there. And after watching squid game, I don't know if he wants quick game, but I 100% want to visit South Korea without participating in this weird game. So yeah.

Jeroen Leenarts:

Yeah, that's, that's something else. That's an entire episode of go into that.

Unknown:

Definitely.

Jeroen Leenarts:

The so you get a lot, a lot of response from viewers on your channel. But you also mentioned that you get feedback from from other content creators. That's how you already mentioned that the YouTube videos have also landed you a conference speaking opportunity. And I wanted to ask just what are some benefits that you've experienced from just creating the content and doing all these videos, of course, you learn a lot yourself, maybe some advertising income, which isn't probably not significant, but still a little bit. But what are some other effects that you've noticed?

Unknown:

So on the income, I've not made a penny. So

Jeroen Leenarts:

same here, same here.

Unknown:

So everyone who everyone who anyone who watches my videos or like makes like demands that should and you know, even for you, like take that into account that you know, we're kind of doing this out of our own spare time for free, which, you know, to most of you don't really need to be doing this stuff, but it turns out the benefits. Me personally, I honestly believe, right, if I wasn't an iOS developer, be a teacher. I get pleasure. And it makes me happy when I see someone put a comment on my video say that they've learned something new. So for me if I'm not trying to sound cliche, but for me at the moment, like, I'm not really too bothered about the money side of things, if I'm honest with you, because I just enjoy making this content. And this content is a way for me to learn new stuff and to reinforce my understandings in things. You know, if I'm being honest with you, I'm at a kind of a weird stage right now in my channel where I'm kind of like, starting to see people are recognizing me more. And I was basically thinking a year ago that I didn't think that my channel will get to this stage. So it's a bit weird now seeing people that like, Oh, hey, you know, you've got a good tutorial. And I'm like, Oh, thanks, because I wasn't really, I didn't really think that people would even be watching it. So it's still like, you know, surprising me that I get all this positive feedback but One thing that I would recommend to a lot of people that if you do have time, I would 100% recommend that anyone should start off some kind of I don't know if it's a blog, or even if it's a YouTube channel or a podcast that what you're doing, you're now yourself. Because when you have to actually research these things and go deep into them, like you learn so much, and you learn things that you didn't even pick up before you actually get a deeper understanding, you also feel more confident in what it is that you're saying, because you've actually done the work to learn more about what it is that you're now teaching to people. Because if I was, you know, if I was trying to teach you about, you know, let's say, for example, as to teach you about combine, and I just, just, like read a couple of tutorials, and actually go deep into it, you know, I'm pretty sure you be able to pick up that like, huh, this guy's not really talking really confidently and not really explained to me like the ins and outs of why things are happening. So just taking your time to learn something and share your thoughts because everyone's thought is valid. Is 100% beneficial to your personal development. So to answer your original question, I think for me, the main benefit for me has been 100% personal development.

Jeroen Leenarts:

And let's see, gathering my thoughts a little bit that that's the benefit of podcasts, and you can edit it. So I was I was intently listening. And now I lost my train of thought, do you have that? So often, if you're recording videos,

Unknown:

if you see my bloopers, right, the amount of times that I have a swearing myself, or B have to edit myself saying basically, like, honestly, maybe one day I'll release a video might be an hour long. But yeah, I do all the time.

Jeroen Leenarts:

I have some problems with two words, actually. I tend to use it too frequently, in my opinion. So just to get on track again, I'm creating a video. What's your typical content length? Is it like five minutes? 10 minutes? What's your what do you aim for?

Unknown:

So a lot of my videos if I mean, if you cover more of a practical example. So because I'm showing you practical examples from A to B, it's, it's normally a bit longer. So some of my videos can be 30 minutes, some of them can be an hour. The whole aim of my video is to basically show you how to get from A to Zed, and why I'm doing these steps between. So I do have some shorter videos. But me personally, I prefer doing deep dive practical videos where I actually show you how you can go from creating an Xcode project to now having an Xcode project that interacts with some kind of API, and has all the error handling that you need in there. It handles any threading issues, it handles decoding objects, and it also manages performance and scales nicely and well with an architecture. So that's the type of content I aim for and the length of my videos.

Jeroen Leenarts:

So for example, if you would take like a typical video that she created, it's like an hour long, how much work goes into creating this hour of content a lot is like minutes, hours, days, maybe weeks.

Unknown:

So for me to write a script on a video can take me a week, because I need to make sure that I've I note number one, I need to make sure that and like I said before, I know what I'm talking about. Also, as well, I need to make sure that I've tested it when I do the script. So after I finish doing the script, I'll then record it. And and in terms of recording it, I can record it the day sometimes if you know something really interesting on Netflix, and I'll take a break and then do it the next day. I mean, you obviously want to see that to you, it looks like I'm doing on one shot, but actually it's spread over two days, it's matching wedding, right. So after doing that, I will then edit it, and edit it is the one that can take me a long time. So it could take me like a day. And I'll be honest with you, that's probably the worst part for me, because that's when you have to actually take out all the stuff that you know, that can annoy people Ermes that basically is the awkward pauses we just stare at your screen because you don't know what's really going on. Because you're trying to remember your scripts. So yeah, so I would say if you want to estimate if you want to put it all in terms of hours, I would say it can take me around 12 to 14 hours I would say in terms of doing it from a to b from start to finish.

Jeroen Leenarts:

Yeah, but it's all split up and smaller. Yeah, definitely like increments and Sprint's really sent

Unknown:

Yeah, cuz I can't do long I can't do long hours up my. So my attention span. I'm more productive in the mornings once it hits two o'clock. Like I'm having to dig deep to do some work because I just don't work as efficiently as I get later into the day. So you have to break up and split it up.

Jeroen Leenarts:

So and did creating these videos, how do you combine it with with a day job because you already mentioned that you actually have it that you actually have a career right now?

Unknown:

Yeah, a lot of perseverance. Have a lot of perseverance and a lot of patience. So yes, obviously, my day to day job is obviously like kind of like mentoring and even to an extent kind of managing some developers. And obviously, I'm not too sure I'm not too sure if you do that in your role, but it can, it can be quite strenuous, because it can be very mentally taxing having to do that, and then now having to go shift yourself back into work mode to now do a script. So I normally do is I normally kind of like, straight after I finished work, I don't even take a break, I just go straight into my YouTube, because I know that if I switch off and say, Hey, I finished for the day, I'm not actually going to come back and do any more work. So I will normally do that after work for like, maybe an hour maximum no more than an hour. And I'll do that on maybe three to four times a week. So out of this, that's Monday through Friday, by the way, so how Monday to Friday, for three to four days, I'll update and write my scripts. And then on the weekends, I'll then dedicate that to doing any recording. And once I finish doing the recording of film editing, then free to go live my life.

Jeroen Leenarts:

That's keeping yourself busy. Right? Is so but what you mentioned at the start also is that you once you started applying for iOS jobs, you Well, you could say, unbeknownst you were aiming a little bit high, you still landed a job. And from what I understood from what you told them is that you entered at a junior role, and that you progressed from that position to media senior. And now it seems to be that you're also sort of like a lead developer within the company. Yeah. How was that journey for you to just get in on the job application that was maybe a bit intense? Because it was a little bit different than you estimated? Yeah. And then you're Junior on the team. So what's what's your path there?

Unknown:

So my, my path, and if I'm being honest with you may not be for everyone. I'm just gonna put out as a disclaimer, so I am working in an agency environment. I don't know if you've ever worked in an agency before, but it's like fast, fast paced. Have you worked an agency before?

Jeroen Leenarts:

Yeah, last nine months, then around.

Unknown:

So you know, so you know what it's like.

Jeroen Leenarts:

It can be it can be hectic, it's it's really like, time for time. Pressure and delivering results is the most important thing that you're doing day to day.

Unknown:

Yeah, exactly. So if you don't know or you've not experienced, it's kind of like, if you've ever watched Mission Impossible, the last 15 minutes on Mission Impossible, but on repeat for every single day when you go into work, because you've got to meet a deadline. So if you're someone who's fine with working with time sensitive events, then cool. So when I first started, and just go back on topic, so I was obviously there as a junior. And then at the time, they were like contract iOS developers, which you're trying to like kind of phase out. So they eventually phase them out. And then it was kind of just me as an iOS developer. So I kind of had to go straight to the deep end to learn all these new things. Like I remember, like maybe four months into my job, someone mentioned to me that Hey, tunda, you know, you're the iOS guy. So you know, we need to solve some provisioning profiles. And I was like, provisioning profiles was a profile. I don't like, you know, yeah, you know, a provisioning profile anyway, to sort out. So it basically gave me the task that I had to learn on the job and deep dive into provisioning profiles. Now, obviously, as I went open around some because obviously, I was doing a lot of things into the deep dive, I learned a lot of things like putting obligations, you know, database, database, threading, API's, all this stuff, I had to learn on the job, because I was the only the main iOS developer there, which was cool. And I'm someone who likes to work in the deep end, and you some other people might not and may want that support, which is also core to the next point, and we'll get on to, so as I work my way up from junior to mid, I then basically had a bit more control in terms of like, how the team was structured and whatnot. And so then what then what kind of had to cut started to do was I started to actually put some kind of like, and training and, you know, progression and support. So, you know, if people did join the team, they kind of felt like, actually, you know what, like, I actually do have some kind of plan in terms of how to go slowly integrate me into projects, rather than me just saying to you that, hey, do you know anything about provisioning profiles, just kind of giving you provisioning profiles that deal with oil, like first week. And then as I start to put those processes in place, it got to a point where I pretty much owned the process at my company. So they were kind of like, hum, you know, you're kind of like the guy who put this stuff in place. So it kind of makes sense for you to, you know, move up to the next step, which is what I'm right now, which is LEED and then, you know, whilst I'm in my role now, it's not just iOS. It can also be Android where I don't actually predict I don't actually do Android development, but what I do do is I kind of give you solutions to technical problems. So let's say a sort of client comes to me, they're like, hey, we want to build an app that has biometrics in it. And you know, it has to, you know, when you do biometric, it's log you in and take you into the app or wherever I kind of have to come up with those solutions to how we would tackle that on both platforms. If you're not, I mean, so if you want to, if you want to talk about my progression plan, it was at the start, I was a junior thrown into the deep end, I forcibly had to learn all these things got to a point where I started to put more of a process in place. So when we set out to onboard more members, they kind of got on board with the process that we had in place. So it was easy for them to integrate into the team. And then the role that I'm in now kind of just make sure that that still down aligns, and both platforms are good, and, you know, working in sync, and making sure that we have any improvements and whatnot, I can, you know, make those improvements to both teams, and we can get better as a company. But I wouldn't, I wouldn't turn it down my I love the company, I work for months. So um, I like working in a fast paced environment, I don't always like to work for a company like a Facebook or something. But for me, agency works for me.

Jeroen Leenarts:

So then if you if you look back at when you when you joined the company, and you had to get acquainted with all these code bases, how many code bases were thrown at you at that point in time?

Unknown:

But so it was crazy, you know, because I had about I had about four, no, five, yeah, at five code bases. And it was it was at the stage where we're in now where we like, you know, in between UI kit and swift UI. And but then it was a stage of when it was Objective C and Swift. So I kind of I predominantly focus on Swift, like I said, before, to start, because that's how I got the job. And then one day, I had to start looking at these ports that were in Objective C, and I remember looking at and think to myself, What am I what career choices I made it, because I couldn't I couldn't read it. Or the square brackets were like making me go crazy. Because I was like, I don't know, I don't know what's going on. And I didn't understand that like, Oh, wait. So the memory, like remember, allocation, we actually have to manage that ourselves, it's not doing for us, you know, with the automatic reference counting. And it was a bit much at the time, I'll be honest with you, like I was a bit overwhelmed. Because obviously, as a junior you, you're now having to look at memory management in order to see which is not really something that you want to sign up for. But if I didn't, it might sound crazy. But like, if I didn't go through that, I don't think I would be where I am today. Because I've learned so much by being in the deep end, it's allowed me to understand these things on you know, unknowingly, like even little things that I may not think that I picked up. I picked up a number like, oh, I can answer that question. And so that's how it's helped me. But yeah, at the start, it was quite a lot of call basis.

Jeroen Leenarts:

Yeah, well, I had to deal with this manual memory management as well. And what I still noticed is that if you've done it yourself manually, you're very happy that that arc is around. It's still if if arc messes up, you can usually sorta like, figure out why it's messing up and what you need to do to actually fix it. So but you said about four or five code base? How many code base sorry, dealing with right now within the company?

Unknown:

Does that mean give me a second account? Take a sample more, it's more than five. Let's say I want to say if I estimate between maybe eight to, let's say between eight to 10? I'd say

Jeroen Leenarts:

and how many? And how many people work on those codebase right now?

Unknown:

Because we have like offshore developers? I'm going to say we have more than 10.

Jeroen Leenarts:

Yeah, that's that's a significant group of people that are present. And and then if you look at these codebase, do they do they? Do they share a lot of? I don't know what to call it. But do they have like a similar pedigree so that they have like a similar way of setting things up nowadays? Are they? Or are they all distinct and specific to the client that it was created for?

Unknown:

So I think when you work in an agency environment, you have to be you have to basically just think in terms of like a business sense. So in terms of a client now, obviously, you know, you might come in and say, hey, you know, this is new, amazing tool that allows us to do data. But in the day, when a client picks up the app, they don't see that all they see is what you build. So when it comes to a client projects, I have to look at what we can do to get from A to B. So all the projects that we have at the moment, and some have a different architecture, some are very simple, some are more complex, it depends on the needs of the client. And that's something that we normally figure out when we actually have those discussions with the client as well. And so so we have some projects that are using just really basic MVC don't even have any unit tests literally just hope for the best and run. Ship it. Now, but we do have we do have some we do have some projects where it's like MVC, and and you know, it doesn't really have any unit tests because for that client, it doesn't need those unit tests, we have some other projects, which are using like more advanced of like MVVM, or coordinators. And it does have unit tests because it has complex parts that need to be unit tested. So it depends on the client.

Jeroen Leenarts:

So and then if you if you look at at your role, right now, you already mentioned that you do sort of like a lot of mentoring and understanding what challenges your your co workers are facing. So how did you? How did you learn those skills? Because I reckon they don't teach that in, in school? Too much, I think.

Unknown:

So, I think I learned it, I think I learned it as I was progressing into this role. So because I like I mentioned before, because I kind of have to set the processes. And I kinda have to teach people our processes, I have to, like set the standards, I had to also ask people, you know, for if they need any support, also teach people on the team's new things. I was naturally kind of doing it subconsciously without even realizing it. So when I got into my role, I basically just realized that actually, you know, what I'm, I'm kind of just doing, why was the only four except now, my title is Chase, if you're not, I mean. And also as well, I feel like you have to have a certain personality to want to do because I enjoy teaching people new things. Some people want to go to work, get paid, go home. Nothing wrong with doing that. Some people want to go into work, fix issues, and then come home to don't have to deal with either managing or mentoring people. But one of the things I enjoy doing is going into work, teaching people learning new things, and helping, you know, strive to make people better to make the company better bringing profits over the life. So I think, my personality and what I like kind of naturally slotted into my role, which is why I'm in it right now, if you're not I mean, because I don't know, I don't know, if you have you ever been you've been a lead? Have you been a lead before? Or?

Jeroen Leenarts:

Yeah, I'm currently the lead developer on on three teams. So and that's like nine iOS developers that are spread across these three teams? Yeah. And I'm like, I'm like, Well, how would you describe it? The iOS technical conscience of the product. So just so people, people come to me with a lot of if they run into an issue, and they just need some extra set of eyes? Or yeah, sometimes I just need to explain things, sometimes just pair programming. And it really, it's really different every day, and also trying to find coursework and content that we could, like, adopts and just have a look at the nine of us to just learn new skills, or that we can then apply it to the code base that we're working on.

Unknown:

Yeah, so yeah, so So you know, for you know, for sure, that like a lot of our a lot of our job actually isn't coding.

Jeroen Leenarts:

It's more, it's more like, it's more like talking with people and understanding, understanding what they're not really what their issues is, what their issues are, but what their issues are with the situation that they're in. And also, I also, I don't know, it's slowly sort of like you need to like, really focus and work on creating a work culture that people are willing and open to each other to communicate and that they are not afraid to actually share if they run into issues. Because I always tell it to my daughter as well, you can cry about it, or you can talk about it. So I'd much prefer that you do the letter. So that's if we can talk about it, then we can really come to solutions. And that applies to a workplace as well, I think.

Unknown:

Yeah, definitely. So it's kind of like, I like to think of myself as like a HR person, but for iOS. Because like, no, because I when people people will come to me with issues, I'll sort them out, I'll give them advice. And I feel like to do a role. I don't I don't know if anyone, if anyone is listening who wants to be like a leader, I think like one of the main skills you need to have is it's not even like being smart, is basically being Hakata I almost had a word that I should say, but it's basically you kind of be the kind of person that I am, you know, people feel like they can come to talk to, because if you're someone who's very judgmental, like if someone says to you that, hey, I don't really understand this, and you're kind of like, Oh, why don't you understand what a computed property is. They're not gonna want to come to you with their issues. They need to feel the need to feel free to be able to want to come to you and talk to you about their issues and know that you will support them and not judge them. So it is a lot of people's skills more than being smart being the best programmer.

Jeroen Leenarts:

Now, what I noticed is that it's it's very much about being trustworthy to people not only if they share something with you in private that you just keep keep it private, but also, if they share something with you that you don't like, burn them down at another location with the things that they told you. And, yeah, it's especially in software development, it's quite often it's like, sort of like competitive, just people rolling over each other to just showcase how smart IR and one of the, it's one of my pet peeves, but people that try to be too smart with, with language constructs in Swift, I always try to, like, break those down in their separate elements. You know, I don't like seeing like, multiple maps and reducers and filters on one line, because, yeah, it makes you feel smart when you write them, but try debugging it. And then you're in for a treat. But it's, it's, for me, it's very much about culture, I think in the in the sense of that. If people get what, what the goal is of the company, so at a high level, and then you can then translate that goal into something that people can apply themselves to in their day to day jobs so that they know what they're working on and why they're working on it. It's much easier for people to well to do the mundane tasks that needs to be done sometimes. So just take that extra step when it's needed and also that they feel empowered to know when they should take an extra step and when they it's okay to not do that.

Unknown:

San Jose agree.

Jeroen Leenarts:

So let's see. Something that we didn't talk about yet is what was your first computer actually? So the very very first computer it can be like an Atari but like what's your first computer

Unknown:

so I want to say it was a Dell and so I remember playing Do you know a game? What's it called? It's called Minesweeper Minecraft now the one Oh noes on it. The one that no one knows the actual rules for but we just keep playing it. That one

Jeroen Leenarts:

and that gray thing in the small rectangular window. Yeah. I know it. Yeah.

Unknown:

At the time when I was playing now, I was probably around 10 years old. So I cannot tell you the model or make but all I know is that I used to absolutely bash out the Savita, Pymble and Minesweeper, and I had no idea how to play any of them. I just literally just clicked around hope for the best. So to this day, I don't know if I was really good or really bad. So yeah.

Jeroen Leenarts:

So and then So yeah, that's just playing games with the computer and you already shared that. It was basically your was it your your, your high school career coach or something that that got you on track to, to investigate chopping it

Unknown:

up more like, see know how, you know, he kind of have like a plus you have your teacher in college, he was kind of like an assistant, he was there to help you out if you were stuck with stuff. So yeah, he's the one who kind of like, gave me a bicycle down that go down that road for it. And then once we I didn't really have too much of a choice as well. Because at parents evening, my guess you know, obviously, you know, unless you do parents evening as well yourself. I don't know you attend them. I mean, I mean, I honestly think it's a lot of effort, but a parents evening, and my teacher basically said, hey, you know, it sounds really good to it. And my parents were like, Okay, so now you're doing it. So that's pretty much my if that's pretty much how it went when I got into it.

Jeroen Leenarts:

So and did you dare to tell your parents that you were more inclined to to run an ice cream truck or not?

Unknown:

Well, the idea got shut down instantly as soon as I brought up with the family so they were like yeah, you're not doing it. You're not doing ice cream. You got to definitely be doing it you 100%

Jeroen Leenarts:

Maybe as a side job for while you're doing the IT stuff but not not as a career choice.

Unknown:

It all worked out. It all worked out because if I did if I did become an sp man, I won't be doing this interview, you know? Yeah, I know. I won't be in the iOS community. And I don't I feel like this passion I picked is definitely the right one because I love solving problems man. So I do think that this is definitely the right kind of track for me so percent.

Jeroen Leenarts:

So is there anything that we forgot to talk about?

Unknown:

And kind of fake I feel like we covered everything. But I feel like we just bounced off each other really well think has been a really good talk. And I mean, yeah, I guess we can do any closing statements unless there's anything else that you feel like I want to cover or talk about.

Jeroen Leenarts:

No, I just want to make sure that people can find you online. So

Unknown:

this is what I'll say before that but really good. Hey, okay, it's been a it's been a good night. Okay, bye. maintain history. Yeah. So where will I? Let me find my hand? Oh, give me one second. So yeah, so on Twitter, my handle is tones deaf. So that's tu and the SDV. And also, as well, my YouTube channel is also tunes dev as well, I'm pretty sure you will put links for that in the description. So it you know, to make people's lives easier. So, yeah, that's where you can find me. I'll give you a head of warning. I'm not one of these Twitter accounts that likes more between that, hey, what's your favorite programming language is swift or that UI kit. I'm not one of those type of accounts. You know, I just basically tweet what's on my mind and just walk around feeling so yeah, I'm just, I'm just an average guy. Money likes eating food, watching anime and watching football. So yeah, that's me.

Jeroen Leenarts:

That's fine, right? Just be yourself. Yeah, and I don't understand these engagement tweets. Too much.

Unknown:

You know, what? Do you know what's really crazy about this? I don't get why. I don't I don't know, man. I just feel like they don't really offer anything like, why do I need to know, like, what do you gain from saying that? Hey, do you use UI kit? Or do you use Swift UI? Like, there's obviously some people who use Swift UI? And it's obvious to some people who use it use UI kit, you're not gonna get a definitive answer. So like, what are you gonna gain from that question? But yeah, that's the space.

Jeroen Leenarts:

So just just for just for fun, if you would start a new project for a client UI, or UI kit,

Unknown:

I'll be honest review. We actually have started a new project from scratch our adopters, Swift UI.

Jeroen Leenarts:

And any issues said thus far, or is it smooth sailing? Oh, man.

Unknown:

So if I know we got we've still got time to talk about this, right? Yeah. All right. Cool. Yeah. Cuz I would like to talk about social hub for a bit. So um, if I mean, also, you I really would like if Apple kind of gave some kind of Swift UI guides instead of architecture, because I feel like I stumbled across a nice architecture that I put in a project that I use. But sometimes when you're doing swift UI, you do feel like hmm, is what I'm doing really right here to draw me because there's not really any kind of DYDZ in terms of like, how you should kind of do things if you know, I mean, like, if you have you have a lot of Android development before, like Android documentation, kind of has guides of how you should kind of go about doing stuff for iOS, we don't really, we don't really have that. If you don't, I mean,

Jeroen Leenarts:

if you would follow what Apple does in a sample code, you would just dump everything in a view controller, but

Unknown:

yeah, exactly. Exactly what it doesn't, because I literally got to a point where I had a view model class that had like, 10, public properties in it. And I was looking at, I was thinking, the hardest thing, right? Like, because if I was doing a UI key, I wouldn't have like, you know, 10 different 10 different properties in one class, I kind of isolate and separate, you know, I mean, but in terms of what I found, was swift UI, I really liked using it, I think it speeds up development. I disagree with people who say, it's really easy to learn, I don't think it's easy to learn, because it has its own quirks, and it has some things that you need to watch out for. And so I would recommend, and I know, you didn't even ask me this question. But I would say if you're someone who's looking to start out now, in iOS development, in my opinion, I would probably start with Swift UI. And the reason why I would the reason why I recommend this before I was saying UI kit, but the reason why I recommend is I feel like a lot. But kind of getting to the stage now where in a couple of years time like we had with you with Swift and Objective C, Swift was very early, but within two, a year or two, you start to see more companies ask you for swift UI knowledge. And, you know, I did that I

Jeroen Leenarts:

still remember those job posts, they were like, this was like three years old, and they will ask for five years of experience.

Unknown:

Yeah, I know this, let me download this. Let me download over two years experience. But it's, it's one of those. It's one of those things. Now I feel like if he was to get a good head, start on it now and just kind of learn Swift UI. I do think in the next year or two, you'll, you'll see you'll see more and more jobs with it. After you get comfortable with Swift UI. That's when I would learn UI kit. If it was me person, I was just starting out I would probably start with Swift UI, in my opinion. I don't know what the what do you think?

Jeroen Leenarts:

And the thing with Swift UI right now what I find is that it you pick it up, you start working with it, and it's like you're really smooth sailing, it looks cool, you get quick results. And you you're really like you you've really fallen in love with the way of working with Swift UI. But then there's, I don't know at some point you you pass a complexity threshold or something. And then stuff really gets complicated really fast with Swift UI. And I've noticed that managing complexity in UI kit for me is much easier to do than it is compared to Swift UI, because the Swift UI you have before It's more like a reactive way of working with your screens, there's so much going on that is like implicit. And if you really want to understand what's going on, or why something is updating on the screen, there's, there's so many moving parts that are that are basically hidden for you. So once you have to open up that box, so then then you're in for a treat and some despair, I think, and but once you through that, and hopefully by that time, there's some good solid architecture patterns available for creating bigger swift UI applications. Because in the code base that we're working on, it's really, we have adopted the first bit of Swift UI, and we really ran into this this complexity cliff. So and that was, actually is it's actually quite challenging to overcome that. Because you, because have a lot of experience with UI kits. To me, it's like, ever, if I would do this in UI kits, I would just do this, and then it'll I know, it'll work. And, yeah, now I'm looking at the Swift UI code, and I'm going like, What the heck is going on here?

Unknown:

You know, just out of curiosity, are you able to maybe talk a bit more about what that complexity issue is? Or, you know, I Yeah, well, what

Jeroen Leenarts:

what's being created in the product that we're working on this like, sort of like a chat user interface, and it's backed by core data. So basically, what we, if something comes in from the network, we just dumped in core data. And then because it is written in Core Data, it sort of like percolates up to the user interface, but just underwater, it will be like a Fetch Results Controller based thing that's underneath the Swift UI list. And, and one of the simple things that we really run into is that for swift UI on iOS 12. And earlier, you can't really do section separators, conveniently, like you can do in UI kits, and like you can do in Swift UI on iOS 13. And if you try to implement that, sort of like manually, the first thing that you run into is that you're pretty much loading your entire data stored in memory, and then just doing it in memory, which isn't good. Because the whole point of using core data as a backing store through a Fetch Results Controller is that you take away a lot of the complexity of loading and unloading data in the background. Yeah, and yeah, really, it we specifically chose, like chat type UI, because yeah, that's simple. It's just a long list with I don't know, you chat balloons, it's so so it's long, table few type thing, if I call it a list, of course. And and and there's not a lot of different user interface elements there. But the complexity of the size of the data set that we're dealing with, really, it really bit us in, in a not so fortunate way, really, I think

Unknown:

it's fully say that, you know, because I think one of the things that swift you and I feel has made me better as modeling. So I think swift UI really makes you feel that like it really, really, really test, how good are you at modeling your data? So if you if you don't model your data properly, yeah, you're gonna run into some big issues in terms of scaling it, and the current project that I'm on now, and with the way that I've kind of muddled the view models and the different components in the list, and they always get generated, it basically made me have to like dig deep and actually fit that, how, what does this component actually need? Number one, and also number two, does this component need to bind and listen to any updates. So like I said before, rather than me how send everything inside of one view model with like 10 different public properties, we can now kind of do will be take advantage of using like, you know, dependency injection and separating out. So each component has its own view model, so it manages its own state. And if we want to combine those components, we then kind of get like a container view that contains all those different components with the relevant view models and whatnot. Now, that's kind of how I tackle it. So um, yeah, going back to what I'm saying, with data modeling, it does make you think a lot about the model. And if it's something that you're not really the best, or you're not something you're aware of, it will basically make you realize it pretty quickly. Because you'll get to a point where you're like, actually, you know what, I can't do this anymore.

Jeroen Leenarts:

And that's a little bit what we're looking at, because what in hindsight, what we should have done indeed, is model the data a little bit differently. Because the section separation that we are trying to achieve within this big list of chat messages is really just sort of like the section based on on day. So each each section has like its little day header, so it's either today or some date format string. But if you would have modeled that more in like something that is compatible with, which is why you would actually have like a day model with the content of that day as children on that and now what we have is just just humongous. There's lists of chat messages that are either coming in from the server or that are written by the end user. And those are just in lot one long list. And of course, in a Core Data classically on UI kit, that works great, because we'll have Fetch Results Controller, you can just order it and sort it. And then just select which, which sort of elements is actually your section separator. So then it just groups everything together, and you get the opportunity to add a little section header there. And that was like, I think, when we implemented initially, there was like old style thinking, UI Kit style thinking and then trying to apply it in a swift UI context. So but yeah, but but then just rewriting everything again. Yeah, we don't have we don't really have time for that right now.

Unknown:

Yeah, 100% Honestly, just start playing that Hello, darkness, my old friends kind of song we have to look at remodelling of the model like Yeah, wow, I could have been an ice cream man. But yeah.

Jeroen Leenarts:

You still have, you know, just trying to stack three, three lumps of ice cream a lot. It's a lot of stuff that can get that can go wrong there actually.

Unknown:

So yeah, but yeah, it's a good it's a good chat about Swift UI man, I think is a very interesting topic. I know when he got to a point where on clubhouse everyone's like, are not another swift UI talk. But I feel like we get to the point now where we're all kind of like getting our feet wet, trying to figure out what's the best best practice for this kind of stuff. And yeah, I'm excited to see where it goes. And it's 100 cent one of these things where I kind of look at now where if I can build it into QA, then I kind of tried to challenge myself to do that, to get better at it. So yeah,

Jeroen Leenarts:

yeah, when what you what you said back there, just modeling your, your, your basically, your few models correctly is so important. You should do a video on that.

Unknown:

I will fully you know, fire done quite a few of them. So that's pretty much one of the one of the main bits of my videos, I actually have dedicated sections were actually specifically talk about why I'm modeling my day a certain way. Because if I was just gonna lump everything in a V model, and just say, hey, put 10 public properties in, it will work great, you know, it's not really gonna be scalable if you need to add another one. So that actually is something I do talk about my video. So it was anything that you want to is anything to pick up from this is always, always remember your modeling guys and girls always remember your modeling.

Jeroen Leenarts:

So there you have it, people go go watch the videos by attending, especially the ones on modeling your data in Swift UI. And if you have any feedback questions, no matter what, put it in the comments on YouTube, or reach out on Twitter, and I guess you will get a solid response there. And yeah, who knows? What more Tony can tell you about this specific topic in a follow up video, then? Oh, that's something I wanted to ask how do you actually discover or learn what the next topic of a video could be? Where do you source that information?

Unknown:

So sorry, so sorry, can you rephrase the question again?

Jeroen Leenarts:

So you create videos, and always are looking for new ideas for your next video? Yes. How do you get those ideas?

Unknown:

Okay. Yeah, so a lot of the a lot of video. So a lot of things that I kind of do is I have a Trello board, right, which is an absolutely beast at the moment, I want to say it has like maybe 500 items on it. And I'm gonna try to organize that a moment. I know, I tried to move it to notion and just realize that we had a heatwave in the UK, I could ever sit there and do this thing on notional, go and enjoy the heatwave. And I chose a heatwave. So what I normally do is I kind of just, it just kind of pops into my head, if I'm being honest with you. So let's say for example, there's something I don't know, I'm curious about. So one of the topics was like, let's say GitHub actions on like distributing, you know, build automated use and Fastlane and GitHub actions. I don't know how to do that. It's something that interests me, so I kind of just research it for myself, so I know it and then any of the findings that I find I then put out there, or, alternatively, I might make a video on MVVM. Because I feel like you know, I have offerings I have and I think would be useful in terms of the way I teach. And some of them started again, I have I have offerings that I can buy my say offerings, I have things that I can bring to the table in terms of how I think, you know, you should understand pace MVVM and how it comes together when you're building an app. So it's, it comes down to two things. It's a it's a the first thing is that like when I am thinking that this would be useful for you to learn, and be if I just come across something that I don't know. So if I want to learn how to use I know how to use Vaseline but if I want you to learn how to use Vaseline on what it is then I'd research and look into it. Even if I want to look into how to build in a universal app using Swift UI which I I've never done before, then that's a new interesting topic for me to learn. And I kind of just jot it down on my Trello. And then I'll when I work in like phases. So in the first phase, I'll have like six videos that I want to do or topic or whatever. And once that's done, I just randomly pick some things that interest me specifically, or if someone has requested it, and it's also something that interests me. And just kind of go from there. It answers your question.

Jeroen Leenarts:

Yeah, pretty good, actually, because I think working in an agency environment actually exposes you to a lot of different impulses in that regard. And, yeah, I can imagine that a lot of the ideas for content are actually based on on your own personal experience, which is always good. I think.

Unknown:

There's like every one of my videos is like a true life story, basically.

Jeroen Leenarts:

Yeah, you could, you could put some really bad music in into the mix. Now.

Unknown:

You could obviously make this like a proper Hollywood budget film. Now, based on a true life story, Tony, TV MVVM.

Jeroen Leenarts:

Sounds like a startup movie. So. But again, now for real today. Thanks for your time. And I will make sure to link up everything that that you already mentioned, so that they can find you online so that people can actually investigate modeling in Swift UI, for example. And also that they can, can can learn a bit more about you and I can also get can get in touch with you if they have anything that they still want to ask you. So thanks for your time. I really enjoyed the conversation. And thank you for for the opportunity to be on my podcast.

Unknown:

Yeah, thank you for having me. And again. Yeah, I just want to obviously, you know, thank you for giving me the time to talk. I think it's been a really good chat really enjoyed myself feel that we've been talking about individual for years. So yeah, that's all I gotta say.

Jeroen Leenarts:

Don't Don't worry. We can edit.

Unknown:

Yes, he always was like, I froze my mind glitch. They didn't. Yeah, so yeah, it's been good. And again, have a good night. Yeah. And I appreciate it. Yeah,

Jeroen Leenarts:

talk to you later.

Unknown:

I'll talk to you. Bye. Bye bye.

(Cont.) Tunde Adegoroye, Lead Software Developer and YouTuber