Back to all episodes

RNR 300 - Special Episode: Ask Us Anything!

June 17, 2024
43:37
E
300
Mazen Chami, Jamon Holmgren, Robin Heinze

Episode 300 special!!

Our hosts celebrate 300 episodes of React Native Radio by taking listener question!  Tune in for this fun "Ask Us Anything" episode where listeners and previous guests submit their burning React Native questions for Jamon, Robin, and Mazen. 

 

Show Notes

Special Thanks to Our Guest Questions

Connect With Us!

Todd Werth:

Welcome back to React Native Radio Podcast, brought to you by Three Fish Riding a Bicycle. If you know episode 300, 300, wow special edition, ask us anything.

 

Jamon Holmgren:

Hey everyone, it's episode 300 and we have something really special today. I'm Jamon Holmgren, your host friendly CTO of Infinite Red. I'm joined today by my riveting co-hosts, Robin Heinz, director of Engineering and Mazen Chami, senior React Native engineer. Also here at Infinite Red. We're doing an A MA today and ask me anything or ask us anything today and we have so many submissions that I'm going to just speed run this intro and the sponsorship slot, which speaking of which, let's get right into that. This episode is sponsored by Infinite Red. Infinite Red is a Premier React native development agency located fully remote in the USA. If you're looking for React native expertise for your project, hit us up at Infinite Red slash r. Don't forget to mention you heard about us through the React Native Radio podcast. I do. So quick

 

Robin Heinze:

Enough. So quick. It was very

 

Jamon Holmgren:

Quick. Yeah. Alright. We're going to get right into it. The ask me anything, ask us anything, but what we did was we put out there into our Infinite red community, the slack that we put up there. You can go there, community, infinite red, and on Twitter and ask people, Hey, what are some questions that you want to hear us answer on air for episode 300? I think it's super cool that we've made it all the way to 300 here. Of course we took over around I think 1 79 or something like that, but it's still a really important milestone for this podcast and we got some amazing questions from different people. I'm super excited about this.

 

Robin Heinze:

Well, and we didn't just reach out to our listeners, we actually reached out to quite a few former guests. Oh

 

Jamon Holmgren:

Yeah,

 

Robin Heinze:

That's right. And they sent in some really special audio questions, so you'll get to hear some familiar voices too,

 

Mazen Chami:

And not just guests, former host or co-host rather of the show.

 

Robin Heinze:

Yeah, that's awesome. This will be a really fun one.

 

Jamon Holmgren:

Alright, are you ready for these questions? We didn't really prepare for these. We're just kind of listening to them and rolling with them

 

Robin Heinze:

Unfiltered.

 

Jamon Holmgren:

Let's

 

Mazen Chami:

Do

 

Jamon Holmgren:

It. Let's do it. Alright. The first clip is from our very good friend Becca, who? Yeah, let's roll the tape.

 

Becca (Guest Question):

Hey, I am Becca from Opens Sauce and I am very happy for the team and all of the hard work they've put into the podcast over the years and all that you've accomplished. But I do have a question for you today. So do you ever feel pressure to continually come up with new topics for your podcast every week? Looking forward to your answer.

 

Mazen Chami:

Can you define pressure?

 

Robin Heinze:

I mean, it's kind of self applied pressure. Yeah, it is. We do put a lot of pressure on ourselves to make sure that we're picking new topics that are interesting and not just rehashing stuff that's already been talked about and try to really bring our own spin to things, but we will have weeks where we're like, oh shoot, we're kind of low on topics and we have to kind of brainstorm and it is tough. We want to put out the best,

 

Jamon Holmgren:

We really want it to be relevant to the listeners. There's a lot of situations where we could maybe put something that just sort of click Beatty or is just top of mind or just something we know, but we really, I take this quite seriously. We want to be able to provide something that when someone goes away from it, they're like, okay, I learned something. This was time well spent.

 

Robin Heinze:

I was actually a guest on another podcast recently and it's a web focused show and they were kind of shocked that we are able to continually find new topics in such a niche space compared to the web world. React native is very focused and narrow, and so the fact that we're able to come up with a new thing to talk about every week, they were pretty impressed.

 

Jamon Holmgren:

It's a never ending rabbit hole though.

 

Mazen Chami:

Yeah, I think another one is we try and come up with episodes timely, so kind of different from what Jamon said, definition of timely, but based on what was released. So whenever we have a new version of React Native or Expo, we try and jump on it early just so that our listeners get the information as early as possible. Obviously, granted we need to edit and kind of do all that stuff, but that's all part of it.

 

Jamon Holmgren:

Thanks so much, Becca. That was an awesome question. We probably could do a whole episode on that topic.

 

Robin Heinze:

It's going to be a theme I feel really bad for our editors who are going to have to cut out some of our rambling.

 

Jamon Holmgren:

So my good friend and a former host of the podcast before we took it over, Peter Piic also sent one in,

 

Peter (Guest Question):

Hey React native radio hosts. I'm Peter Piic, first co-host of React Native Radio from 2015. How do you feel React native has changed over the last few years since starting the pod?

 

Jamon Holmgren:

So we took over, I think around 2020 and that was I think right around version 63. So there've been around I think 10 different releases since then. I guess 74 now. So I think that's a big one, but the biggest change in my mind is the emergence of Expo.

 

Robin Heinze:

We actually had Brent Ney on the show talking about this new thing with this new era of expo that they were working on called Expo application services, which he explained and it hadn't come out yet and they were very excited about it and so we kind of heard firsthand about this new thing, which now we've talked about on the podcast countless times. We love it, we use it. So for me, watching that evolution firsthand and kind of being there as it happened was really cool.

 

Jamon Holmgren:

Absolutely, and the irony here is Peter was the very first expo user outside of Expo themselves. What? Yes, for his startup, what was it called? Draft bit I think. And yeah, he was the very first one. So there are a lot of other things that have changed certainly, but a lot of it was driven by Expo and then of course the new architecture is a huge

 

Robin Heinze:

Deal. This is another question that we could do a whole episode on and we actually did pretty recently.

 

Jamon Holmgren:

We did,

 

Robin Heinze:

Which I think hasn't come out yet, but probably will have.

 

Jamon Holmgren:

It also went sort of from new bleeding edge technology to now enterprise adoption.

 

Robin Heinze:

Yes, I definitely agree with that. It definitely feels like it's a thing that big enterprise companies are choosing rather than bleeding edge trailblazers. Alright,

 

Jamon Holmgren:

He has two other questions. Let's listen to the next one.

 

Peter (Guest Question):

Do you think Tailwind will take over once Native Wind is ready to go live?

 

Mazen Chami:

This is a great question and I think the easiest answer, and I'm kind of debating even saying this, but it kind of comes down to what you want to do. I think React native should try and stay away from a tailwind, a native wind styling styled components, stay away from all that and let the individuals and the teams make those decisions. I don't think any one will take over from the other because it all depends on your requirements, right? If you have web involved, does Tailwind handle web? It does spoiler, but still style components work with Web. Would you rather use Tamma Goi? Would you rather use React Stricto? There's so many options out there. I think it just depends on your business, your app, and your needs at the end of the day.

 

Jamon Holmgren:

Yeah, I see Style X from Meta as being kind of a big influence as well with React strict, so we'll see. I mean if a developer's already using Tailwind on their web stuff, they're probably going to want it on native and that's kind of the determining factor.

 

Mazen Chami:

Exactly.

 

Jamon Holmgren:

Alright, last question from Peter.

 

Peter (Guest Question):

What parts of React native do you think still suck after all these years?

 

Jamon Holmgren:

Who wants?

 

Mazen Chami:

I used to call these the Robin questions.

 

Jamon Holmgren:

I know this is getting turned around on us. We usually ask people, yeah,

 

Robin Heinze:

I love this type of question. I think everybody in the audience would probably agree that keyboards still suck. Yeah, but they've come a ways. I think we have plans in the works for a whole keyboard episode. Can't wait for that one pretty soon. So we'll dive into the details, but I don't think enjoys working with keyboards. No. Well and the operating systems have made it even harder because Apple especially keeps adding new stuff on top that you have to manage. It's never fun.

 

Jamon Holmgren:

I still think that setting up Xcode and Android Studio and everything that you need to get your machine ready to do React native work is still harder than it should be. I really wish there was a CLI or an app that you can just click a button and it just sets everything up for you.

 

Robin Heinze:

Another benefit of Expo is it is possible to do local iOS and Android development without a full native environment set up, which is pretty cool.

 

Jamon Holmgren:

Alright, we also had a question, actually three questions from our good friend David Louette from France. Let's roll that clip.

 

David (Guest Question):

Hey, it's David. So my question for you is what's your favorite podcast episode? How the one you recommend all the time?

 

Mazen Chami:

That's a very easy one for me. I think the TypeScript one that you both did is a big one that I recommend and the pull request review. I was going to say Art of the Review.

 

Robin Heinze:

I am going to second that The art of the code review is one that I tell people to listen to all the time. Even outside of React native, I've sent it to family and friends and other developers in other industries. So universal and it's so evergreen and I think it also was a really great just cultural episode that gave a little window into the culture we have at IR and the culture that we value. So that's definitely one of my favorites.

 

Jamon Holmgren:

This changes all the time for me. I think my most recent favorite was actually our interview with Charlie Cheever where he came on and talked about his early programming days time working at Facebook and the beginning of Expo and things like that. So definitely wanted to go check out.

 

Mazen Chami:

That's crazy. Our top three, not

 

Robin Heinze:

React native

 

Mazen Chami:

Specific. That's hilarious.

 

Robin Heinze:

I mean Charlie Cheever is react native adjacent, but we really did not talk about React native in that episode. No, that's

 

Jamon Holmgren:

True.

 

Robin Heinze:

That's true. That's so funny.

 

Jamon Holmgren:

All right, let's listen to David's next question.

 

David (Guest Question):

What's the biggest challenge your team had to face and how T Lab Board helped to solve it?

 

Jamon Holmgren:

I love how he calls out Gantt as the one to solve the biggest challenge. Interestingly, in 2018, we had a really rough time just sort of financially as a company, infinite Red. We were only about three years old at that point and we hit some rough waters. We had a bunch of projects drop out all at once and we weren't really set up in, we had some problems that we needed to fix. Gantt did help to solve it. He came on board as an owner, which was awesome and it was a really cool thing. So now of course it's me, Todd, and Gantt that are the owners of Infinite Red and of course the team pulled through for us as well and we actually came out the other side within three years we had really made a massive, it was really within two years we had made a massive turnaround and got back on good footing and now things are really rolling. So Gantt was absolutely a part of that. I would say that's the biggest challenge we've had to face.

 

Robin Heinze:

I'd like to add also as someone who was a team member at that time, I wasn't part of the leadership team at all, and so I went through that as a team member. I just want to say how well that the leaders handled it and how much it was clear that they were doing absolutely everything they could to get through it without affecting any of us, which they did and they were just, nobody was panicking. They kept everything really confident and calm and it really wasn't scary at all as a team member to go through that, even though I'm sure they were all freaking out and were very glad when they got to the other side. But yeah, it was a real testament to how strong that team is.

 

Jamon Holmgren:

I appreciate that. And we did not have to do any layoffs, which was just absolutely a high priority for us. Really great question there David. What's his last question?

 

David (Guest Question):

In the reactive ecosystem, what's the one skill you wish you had mastering overnight and why?

 

Robin Heinze:

This is a great question and I think it'll probably be different for all of us. We all have different strengths and maybe deficits. I really wish I could learn animations overnight. Really deep knowledge of complex animations overnight. You can do enough animations to get by, but there's so nuanced and layered how far you can go and I would love to just instantly osmosis that.

 

Jamon Holmgren:

Yeah, mine is kind of similar, but it's just styling in general because I suck at styling so badly. I would like to, I mean, of course there's other things I'm more interested in that'd be nice to master, but those are a little bit easier for me to get into styling. I'm just sort of like I want to get past and move to the

 

Robin Heinze:

Next thing, which is so funny because it's my favorite part.

 

Jamon Holmgren:

That's why we work well together.

 

Mazen Chami:

I agree. I'm kind of trying to decide how to answer this question because a lot of it would probably be native level stuff, but if we're talking about the React native ecosystem in general, I do have to pick what Robin said with animations because I think Reanimated change the game and I had just finished learning animated and then you add in performance and everything reanimated brings to the table. That's probably one that I wish I could master overnight. Yeah,

 

Jamon Holmgren:

I guess we should probably do another animated, we did a reanimated episode a while ago, but we should probably do another one. Alright next. Our very good friend and chain React speaker, Colin Gray sent in a couple of clips, so let's listen to the first one.

 

Colin (Guest Question):

Hi, react native Radio host Colin Gray here. My question, what is one library or feature that you would rather see in React Native Core instead of from third party libraries?

 

Robin Heinze:

That is a great question.

 

Mazen Chami:

Wow. But how do you answer that?

 

Robin Heinze:

So my first thought was things like React native gesture handler and potentially even react navigation, which is so universal. It's like every single project, the first thing you do is install gesture handler and react navigation so that from a convenience standpoint it would be nice for those to be in core.

 

Jamon Holmgren:

Yeah, I would agree with that. There's an argument to be made for animated because if animations are a big part, but there are apps that don't have any animation, so I guess that's kind of a 50 50 there. I wish that Expo fonts was built in to React native because I like the way that it handles fonts, but I don't know, maybe others have other ideas.

 

Mazen Chami:

I'm big on the Lean initiative, so I don't know if I would say anything should be added, but I do agree fonts are pivotal to apps and I think Safe Area View, that's a third party package. I think that would be one that would be good to just have

 

Robin Heinze:

That. Yeah, that would make a lot of sense. Yeah,

 

Mazen Chami:

Those are the two that I think are so fundamental that everyone uses on a daily basis that having fonts and safe area view within React native makes absolute sense.

 

Robin Heinze:

It's totally

 

Mazen Chami:

True. But then with navigation, what would you say to the people that like to use Router Flux or Expo router and stuff like that?

 

Robin Heinze:

Who uses Router Flux?

 

Mazen Chami:

I was one of those first people. I'll say

 

Robin Heinze:

It. I don't even think it works anymore. I

 

Mazen Chami:

Don't even know. I haven't looked at the repo in a long time.

 

Robin Heinze:

I guess there is React native navigation

 

Jamon Holmgren:

And expo router, but of course that uses it under the hood

 

Robin Heinze:

Gesture handler. It feels like gestures are so such a key part of any mobile app. You would think that that would be part of Core and then Safe Area context also feels the same way. I've never built an app that I haven't added those two packages.

 

Jamon Holmgren:

What about Async Storage?

 

Mazen Chami:

MMKV Old Day.

 

Jamon Holmgren:

Okay, that's fair.

 

Mazen Chami:

Yeah, it's one of those give or takes. You never know which one you would want to use.

 

Jamon Holmgren:

Alright, let's listen to Colin's second clip.

 

Colin (Guest Question):

What outside of React and React native would you like to cover on your podcast?

 

Robin Heinze:

That's a really good question. Also great questions from Colin. I would love if at some point to talk about the life as a developer in terms of mental health and burnout and managing all of that. I think it's kind of a hot topic at the moment and it's relevant to a lot of people and it would be fun to explore that at some point. I know A DHD is also a hot one. We've had some requests for that on Twitter. I know that's pretty common in the industry, so it'll be fun to do that.

 

Jamon Holmgren:

Yeah, you kind of stole my thunder. I was going to say developing with A DHD because coincidentally I was just diagnosed with A DHD, and so it's something I've lived with my whole life and it'd be fun to talk about and in fact we do have a guest coming on who is kind of an expert in this sort of thing. So I'm really looking forward to that episode. That will definitely be a kind of outside of React and React native topic, but still relevant to all of us. I would also say the business side of building apps, I think that there's some, I don't know, listeners let us know. Tweet at us at React native r dio, tell us if the business side of building apps would be interesting to you.

 

Mazen Chami:

For me, kind of like outside React and React native, it'd be more from the junior developer side and the mentoring and not just the mentoring junior side, but also how to help people make that career change from whatever it is they're doing to mobile development in general. Because I've had a lot of people ask me that question personally and I feel like every time I answer it, they see things differently from what you expect because one person was like, I'm already applying to get an undergrad in cs, and then thinking of my master's before I do it, I'm like, well, hold on, do you really need to do that? And then stuff like that.

 

Jamon Holmgren:

Yeah, that's a good one. Absolutely. Great questions from all of these people who sent in the audio questions. Now I have a bit of a bonus round here. We got a ton of Twitter questions and Slack questions. They weren't in the form of audio, so I'm not going to be playing that. I'll just read them, but let's hit these kind of quick. So Mark, Avi, of course, legendary developer from Austria. He asked which is a better approach to build iOS apps in your opinion, swift UI with some UI kit components for Legacy or React native? So this is interesting because I think he's talking about if you only had to build iOS, you didn't have to do Cross, cross-platform, anything, would you use Swift UI or would you still use React native? I don't know. I am a little 50 50 on this. I think once you go, you actually do need more than one platform. React native business case becomes incredibly compelling, but as a developer, maybe I would be a little 50 50 on this. I do know that Orta, who is a former guest on the program, in fact, he was on, did he talk about TypeScript?

 

Robin Heinze:

Yeah, he was the TypeScript episode,

 

Jamon Holmgren:

Yes. Oh, he was on the TypeScript one. Yeah, and he's amazing. I remember him going back to the Ruby days. He was involved with Coco Pods, so I remember asking him one time like, Hey, what would you build? Because he's an iOS developer. Going way back, I was like, what would you build an iOS with? No expectation I'm going anywhere else. He said, oh, I would definitely use React native. In fact, we already did that at my previous company. Interesting. We shipped Android native and React native iOS. Wow. I was like, whoa. Okay. That's interesting. So yeah, I mean this sort of thing, it's pretty common. I guess maybe I'd still bias us toward React native just because that's what I know a little bit better. It is been a little while since I've done iOS native just

 

Mazen Chami:

Strictly, I'm probably in the same boat mainly because I have the strengths in React native. I'd say React native, but I think from a thinking business perspective, you would also always be nice to have that, I guess you could say Escape Hatch to go cross-platform to go multi-platform where you're pretty much almost there, right? All you need to do is just get your little tweaks to get it working on Android, on web, on Mac os, windows, all that kind of stuff. So React native in my mind

 

Robin Heinze:

You're proofing it basically.

 

Mazen Chami:

Exactly right? Yeah. If product comes by a month later and says, Hey, we need an Android app out there, we're getting a lot of asks for it. What are you going to do? Hire a whole Android team and kind go down the Kotlin platform Lin slide, or are you going to be like, okay, cool,

 

Robin Heinze:

Give us a few weeks weeks and we'll get it running on Android. Boom.

 

Mazen Chami:

Exactly,

 

Jamon Holmgren:

Exactly. Alright, moving on. Tyler Williams in the community Slack, he's the MobX State tree maintainer. Tyler's a good friend. He asks What would be a historical snapshot of subscribers, listeners followers, or what's the trend? It's always inspiring to see streamers who keep at it until they really take up. So when we came into React Native Radio, I think they had probably around 4,000 subscribers, something like that. It's harder to measure subscribers on podcasts. It's

 

Robin Heinze:

Very hard.

 

Jamon Holmgren:

People use it in different ways and different apps and things like that. I think we're probably around 6,500, something like that, but we don't really look at that. That's not something that is important to us. I mean, legitimately we don't look at it. That's why we don't

 

Robin Heinze:

Know. We're not trying to get sponsorships based on like, oh, you've got 20,000 subscribers, so we'll give you this amount for a sponsor. It's not the business model for the podcast

 

Jamon Holmgren:

And we kind of purposely don't look at how individual episodes perform because we don't want to lean toward clickbait and stuff. At least for myself, what I kind of measure impact from is when I go to a conference and someone comes up to me and says, Hey, I listen to React Native Radio and I really like it and I want that individual one-on-one. Like what do you think about it? Like, oh, this is great. This is something that really helps me. So I think that's kind of how I approach it and as Robin said, we don't really have sponsorship pressure. This is really just us doing this because we really enjoy it. We want to give back to the community from the community Slack. Dan w asks, is it a priority for most companies and startups to have an app that works mostly the same on native as web? The risk of delayed approval or even rejection from app stores would be enough to offer your app on web and it seems like the ultimate fallback solution for device and compatibility or app store issues. I like this question a lot and I've been thinking about this a lot and I do think that web is becoming more and more of a priority for React native app developers.

 

Robin Heinze:

I absolutely think apps that are on iOS and Android need to also have a web version, experience a web experience, even if it's slightly less feature, even if it doesn't work quite the same or is a more limited experience, there needs to be something. It's just you never know what users you're losing because maybe they just don't want to install another app on their phone. Maybe whatever reasons they have. I mean, we have a client right now who their primary focus is iOS and Android, but they have a web component for that exact reason because they have users who are being required to download this app that don't have a smartphone and they have to have a way to use it. You're alienating a part of your user base and if you're using React native and it's so easy to add that third platform. I see it as a no-brainer.

 

Jamon Holmgren:

Yeah, I don't have anything else to add. That's perfect. Same, yeah. Jose Carlos asks, I'd love to hear about memorable react native moments where you or your team crafted or found something amazing or something funny that may have happened with a client. I kind of wanted do the second one. Second question there. One time we came into a client meeting and the client had his shirt off. He's just sitting on the couch and he's just, I don't know if he didn't realize that it was going to be a video call and then he was just cursing at his dogs at the top of his lungs. It was an interesting, interesting moment there.

 

Robin Heinze:

Jed, our producer is sitting in on this recording. You can't hear him, but he's laughing. I think he probably has the most funny client stories of anybody. He is been in the most client meetings.

 

Jamon Holmgren:

Exactly. He's our director of operations and kind of does a lot of that stuff and there's some fun stuff.

 

Robin Heinze:

We could do a lot of stuff. How

 

Jamon Holmgren:

About for either of you?

 

Mazen Chami:

For me, mine is just, I feel like every time with a client, something funny happened where I had the client driving, they were a android dev and I walked them through how to make a change. They clicked save and they were like, okay, now how do I rebuild? I was like, you did already by the way. They were like, no, what's the process? I was like, if you want to go get coffee, go get coffee and come back. It's done. And we literally, we spent more time arguing about the fact that we don't have to rebuild than making the change.

 

Jamon Holmgren:

Making the change. Yeah. It's just already fast refresh, boom.

 

Mazen Chami:

Exactly. And then just them posting like a slack saying, giving me kudos for being patient with them at the end of the day and helping them understand, and they were like, well, react native one, me zero.

 

Robin Heinze:

Yeah, that's a really great story. I love when people have those glass shattering moments about how good React native is that they didn't realize they had all these misconceptions about it that are completely blown away in those moments. I've also just had a lot of really, really good moments with clients when we're able to do things that are really impressive to them. Just like getting an app on their iOS device and their Android device a week after the project starts and they're just like, their minds are blown. It's so fun every time.

 

Jamon Holmgren:

Okay, so Teys 21 asks, is accessibility overlooked in the React native architecture? If not, what are the best practices for making accessible apps?

 

Mazen Chami:

Absolutely. I think it's overlooked in more than just React native apps. And the second part of the question is what are best practices to making your app accessible? Before even making your app accessible, you need the team to be bought onto it because without the team being bought onto it, you get a lot of stuff where developers don't put in accessibility, the right accessibility tags, your QA doesn't test for accessibility and all that kind of stuff. So I think even before discussing best practices, the team needs to be on board. So yes, it's way overlooked. Team needs to be on board. In my mind,

 

Robin Heinze:

Zen really, really nailed it. The technical challenges of accessibility are really missing the root of the problem, which is that companies aren't prioritizing it, they're not putting it on their backlogs, they're not setting aside time for it, they're not looking for it when they're testing. It really needs to be a cultural shift before it can be a technical shift.

 

Jamon Holmgren:

It has the same problem and solution that performance has, which is someone caring

 

Mazen Chami:

And best practices. They're out there, it's just a matter of Googling or finding the right blog article or document link. They're there. I don't want to overlook that part of the question, but

 

Robin Heinze:

Yeah, they are there. They're less abundant then I kind of wish they were. I think if we can make that cultural shift and make it so that everyone is building accessibility into their apps, you'll organically see a lot more resources, blogs, tutorials, whatever about how to do accessibility well, how to use screen readers, how to use all that stuff.

 

Jamon Holmgren:

Yeah. Lizzie Lingbo, who works at Infinite Red, she's a senior React native engineer. She did a really great workshop on screen readers and I pulled up the chess.com app, which I use all the time. It's native, so this isn't just a React native thing. It was totally unusable. You could not use it. Alright, so Alfonso Cabello asks, do you remember a key moment, a talk, a demo, et cetera, where you said React native is what I want to focus on? Love to hear the perspective from Infinite Red team members.

 

Robin Heinze:

Unfortunately, I don't have a great answer. I never had one of those moments. My intro to React native was Jamon saying, Hey, we're going to put you on the React native team now after having been hired to do,

 

Jamon Holmgren:

I think I was nicer than that.

 

Robin Heinze:

You were very nice. I had been hired to do Rails and Elixir

 

Jamon Holmgren:

Elixir

 

Robin Heinze:

And it was quickly becoming evident that React Native was going to be our focus, our primary focus. And so it was like, okay, you're doing this now. And so I picked it up from there and I love it and I started loving it very quickly after I started using it, but it wasn't really even on my radar. That was

 

Jamon Holmgren:

A shift though. That was a shift for sure. It was Zen. You did actually kind of opt into it. You weren't told by me,

 

Mazen Chami:

Correct? Yeah, I opted into it, but I think mine is a little different, I think so I opted into it because I got a job where we were doing native development. I hated it because I felt like it was taking me forever to grasp the different concepts. And then I had heard of React native. I can't remember if it was a talk or something, but it must've been something around the expo ecosystem and I was like, react native sounds interesting. And I started diving into it and I started seeing a lot of value in it and then I shifted jobs and they're like, oh, we already have a React native app. I was like, perfect, let's do it. And then I learnt on the job and then Chain React kind of helped solidify that for me, just listening to the different talks and different people. So this was Chain React 18, I believe, where I watched the videos after the fact and then I attended Chain React 19. So for me, just kind of learning on the job got me hooked into it and made me see the value of hybrid versus native.

 

Jamon Holmgren:

I love this. Next question from Stefan Wallen. He asks, how do you approach code reuse between clients other than Ignite our open source like project starter kit? Do you maintain closed source copies of clients, hush hush apps after project completion? Do you push clients to open source apps? Of course, we would love if our clients had open source apps because it means that we could talk about them. The vast majority of our clients, we have NDAs, we have fairly strict rules around ip. We take this stuff very, very seriously. So certainly if things we learn can go back into Ignite, we try to do that. If we can put them into the Ignite Cookbook, which is ignite cookbook.com, we'll put them there. Our clients are well aware of this. This is not something we're hiding from them. It's very obvious like, Hey, we did this on yours, we'd like to put it into the cookbook so that other people can know about it.

 

Jamon Holmgren:

We try to share information from that with our team in Slack, it's always a balance of trying to make sure that we protect client IP and proprietary information and also sharing, we have a culture of sharing and culture of open source and things like that. So it's a little bit of a balance to strike, but at the same time, we tell our clients, you're getting the benefit of all of the previous knowledge that we've gained from past clients and then you're paying it forward by allowing us to learn from and develop our tools from there. So yeah, I mean obviously React native of itself and all the third party libraries is a great way to share code going forward as well.

 

Mazen Chami:

I have a running list, you call it personal package, json file, where if I'm working on a project and I like that third party package that we used, I tend to just kind of copy that package name and put it in that document.

 

Robin Heinze:

I like that. Your personal package based on, that's really cool.

 

Mazen Chami:

Yeah, and if for example, I'm working on a personal project or on a client project and it's like, oh, I want to do, I don't know, say an onboarding swiper page, I just reach, right? I look in that and see if I have used one in the past that I liked and I try and keep that edited as much as possible. If I use that package again and it kind of falls, I kind of remove it or put it further down the list.

 

Jamon Holmgren:

We got a question from a roof shi too. Who asks, what can React native learn from the flutter ecosystem in your opinion? So I have two that I would probably point out here. One is developer setup. I mentioned this before. I think that setting up for developer, like your developer environment in flutter is easier than React native. And then also upgrades. I think flutter upgrades are vastly superior to react native upgrades, although maybe similar to expo upgrades.

 

Robin Heinze:

I don't have any to

 

Jamon Holmgren:

Add.

 

Mazen Chami:

Got nothing for flutter.

 

Jamon Holmgren:

That's it. That's all. Okay, no problem. Bearer asks, have you noticed React native developers aren't as good at phishing as native iOS developers? Kind of weird, but I've seen this firsthand.

 

Robin Heinze:

Is this an inside joke from Twitter?

 

Jamon Holmgren:

Yes, I think it is. I think it is. I don't really have anything to say. My brother is fishing professional. He writes for, literally writes for a fishing magazine. That's his job. So he's the guy that is good at fishing in our family. He'll take me and I do well when I'm with him, but he doesn't do React native and I don't really do fishing at least

 

Robin Heinze:

Anymore. I think there was a whole joke going around Twitter for a while where that question was being applied to various different groups of developers, I think.

 

Jamon Holmgren:

Yeah, yeah.

 

Mazen Chami:

When you were reading it, I was like this typo.

 

Robin Heinze:

Yeah, it was a joke I think.

 

Jamon Holmgren:

Okay, we need to wrap up. Matthew Chisholm from the community Slack sent in quite a few really good questions. Honestly, these are fantastic questions and I want to start with this question here. How many companies would be willing to invest in training teachers who could take that role on for students? I could see this either as having teachers work over the summer and part-time during the school year or having a cross company team who spent some of their time. Okay, I don't want to do this one.

 

Robin Heinze:

Yeah, no, it has a lot of too complex context. It's a very complex question.

 

Jamon Holmgren:

I kind of like that question. Okay, we need to wrap up here. And Matthew Chisholm from the community Slack, the infinite red community. Slack asked a really good question. I'll take a little bit to get the context here. He says, I just watched Theo's prediction video for 2024 where he said there would be fewer junior developer jobs because companies are looking for trust and wanting to avoid the investments of training a junior developer. I felt like it really hit at a challenge I've been tackling the past few years. So how many companies would be willing to invest in training teachers who then could take on that role for students? And he kind of goes on with some more ideas around this, but I wanted to know, and I actually have some thoughts as well, but Mazen, I know you've taught a lot of junior developers. What are your thoughts?

 

Mazen Chami:

Yeah, I think for context, Matthew is a teacher, so this is where he's coming from. He's a high school teacher. So I think from my perspective, I've mentioned it on the podcast, I do a lot of mentoring for bootcamps and kids that just graduated high school that want to get into coding. This is part of that bootcamp that I used to mentor. I think a big thing that we can do as senior developers or even just developers in general is give back something I don't think we do a lot of. So my perspective on this is mentor junior developers going through bootcamp, whatever the case is, but also give back to high schools and potentially colleges to teach more pointed material, right? I think I look, there's a teacher at local school here at Durham School of the Arts. He's a computer science teacher who was also a soccer coach with me and he showed me his AP computer science material and I told him this point blank so I can kind of say it on here.

 

Mazen Chami:

I told him I use none of this material, so I a coder, this is not going to help me. I'd rather tell a high school student, skip AP computer science when you graduate, if you know you want to do coding, go into bootcamp. That's way more efficient route for you. So I think for me personally, I would say as developers, we should go into high schools, give presentations, give crash courses, work with these teachers to show the coder side of things so that we can then eventually give crash courses and mentor these high school kids to make a better decision on getting into coding versus not getting into coding. And that's actually something that I'm currently working on with that teacher to do a React native crash course at Durham School of the Arts.

 

Jamon Holmgren:

Yeah, I am a huge believer in this and even though Infinite Red itself doesn't hire juniors anymore because of the type of work that we do, there are many people at Infinite Red that I hired as juniors over 10 years ago and taught them to code and now they're building amazing stuff for giant companies, which is cool. So for the community college that I dropped out of, I'm on their technical advisory committee, so I meet two, three times a year to help guide their curriculum and try to get them relevant toward industry standards and industry technologies where they can get jobs. I've given presentations at several high schools in the area. Did one recently, probably about two months ago, and they actually asked if next year I would come back and teach a class once a week. So I don't know if that's going to happen, but it is something that's on my radar.

 

Jamon Holmgren:

It'd be fun. I love teaching so much fun. We try to hire for people that love to teach. That was one of the things we loved about Zen, about you Zen, the fact that you love to teach, you're also like a soccer coach and things like that. And then also, it was several years ago, but I gave a presentation about React Native at a local college here in Vancouver as well. So I try to do a lot of that stuff. Also YouTube, try to put out YouTube content that is good for juniors and helps them and encourages them. And I get emails all the time, people asking me for advice, and I try to give them thoughtful advice on their career and I always offer to help retweet a tweet, try to keep my eye out for jobs, things like that. So try to do things from that standpoint.

 

Jamon Holmgren:

I don't think it's necessarily in Infinite Red's best interest to change our business model to go after juniors necessarily. It's like we're in kind of a specialized case and I can talk about that a lot. But our clients come to us for very, very high level react native consulting, not necessarily just additional bodies or headcount, but yeah, I try to do as much as I can just like you Zen. Cool. Well, that was it for this episode 300, which was super fun. There were some very thought provoking questions submitted. Thank you all. Everybody from Becca, Peter, David, Colin. Let's see who else? Mark, Tyler, Dan,

 

Robin Heinze:

David, did you get David?

 

Jamon Holmgren:

Did I say David? I don't know if I said David. David, yes, David. For sure. We had several others. Thank you all for submitting questions. You all are amazing. And that's I guess it. Robin, do you have a mom joke to take us out and bring us into the next a hundred episodes?

 

Robin Heinze:

I do. This one's from Darren Wilson on our team. Stephen King has a son named Joe. I'm not joking.

 

Jamon Holmgren:

Oh no,

 

Robin Heinze:

But he is.

 

Jamon Holmgren:

Okay. We'll see you all next time.

 

Robin Heinze:

Bye bye.

 

Jed Bartausky:

As always, thanks to our editor, Todd Werth, our assistant editor, Jed Bartausky, our marketing and episode release coordinator, Justin Huskey and our guest coordinator, Mazen Chami. Our producers and hosts are Jamon Holmgren, Robin Hines and Mazen Chami. Thanks to our sponsor, infinite Red. Check us out at infinite.red/radio. A special thanks to all of you listening today. Make sure to subscribe to React Native Radio on all the major podcasting platforms.

Photo of Gant Laborde and Mark Rickert hugging at a retreat.Photo of Todd Werth laughing during an online team game. Other members of the team are in the background.Photo of team members Jed Bartausky and Carlin Isaacson at a team dinner.Photo of Darin Wilson sitting at a table listening to a presentation

Ready to get started with us? Chat with our team over zoom

There’s no perfect time to get started. Whether you have a formal proposal or a few napkin sketches, we’re always happy to chat about your project at any stage of the process.

Schedule a call