
React Native Radio
Exploring React Native Together
Latest episodes

Jan 14, 2020 • 56min
RNR 150: React Native Pros and Cons
In this episode of React Native Radio the panel walks through an article written by Net Guru outlining the pros and cons of React Native. The first pro the panel discusses is that is React Native is faster to build. The panel shares their experience with building with React Native. They agree that React Native is fast unless unique customization is necessary; this leads them to discuss one of the cons of React Native, the lack of some custom modules.
The next pro they discuss is the fact that this one framework can work across multiple platforms. While they agree React Native is not perfect, it does do a good job sharing code and other things across platforms. This saves on cost and time. Another pro they discuss is hot reloading, which included over the air updates and fast refresh.
Smaller teams are both pros and cons according to the panel. Smaller teams are possible because everyone works together, there is no longer a need for an iOS team and an Android team. The panel does point out specialists in those platforms may still be needed to work out any kinks in the different platforms. They explain how whether smaller teams are a pro or a con is based on the case.
They discuss the controversy of how fast React Native is. It is faster than some frameworks and slower than others. The panel discusses their experience with React Native speed, performance, and how they are measured. Simplified UI is the last pro on the list.
The cons they overview once more, though they do discuss them in how they relate to the pros. The first con the panel discusses is less smooth navigation. The panel believes that the navigation works great unless you create something custom or irregular. The other cons are the lack of custom modules and the need for Native developers. They end by discusses the alternative frameworks to React Native and their experience with them.
Panelists
Josh Justice
Charles Max Wood
Christopher Reyes
Sponsors
G2i
Infinite Red
CacheFly
____________________________________________________________
"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!
____________________________________________________________
Links
React Native Pros and Cons
RN Platform module
RN Device Info
RN 0.61 with Fast Refresh
RNR 145 Five Approaches to RN
Ash Furrow, The Case for React Native
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio
Picks
Charles Max Wood:
https://kanbanflow.com/
https://tomato-timer.com/
Josh Justice:
It Doesn’t Have to Be Crazy At Work
Christopher Reyes:
https://www.letgo.com/en-us
https://offerup.com/

Jan 7, 2020 • 39min
RNR 149: React Native Radio Still at RxJS Live
In this episode of React Native Radio Charles Max Wood continues interviewing speakers at RxJS Live. First, he interviews Mike Ryan and Sam Julien. They gave a talk about Groupby, a little known operator. They overview the common problems other mapping operators have and how Groupby addresses these problems. The discuss with Charles where these types of operators are most commonly used and use an analogy to explain the different mapping operators.
Next, Charles talks to Tracy Lee. Her talk defines and explains the top twenty operators people should use. In her talk, she shows real-world use cases and warns against gotchas. Tracy and Charles explain that you don’t need to know all 60 operators, most people only need about 5-10 to function. She advises people to know the difference between the different types of operators. Tracy ends her interview by explaining her desire to inspire women and people of minority groups. She and Charles share their passion for diversity and giving everyone the chance to do what they love.
Dean Radcliffe speaks with Charles next and discusses his talk about making React Forms reactive. They discuss binding observables in React and how Dean used this in his business. He shares how he got inspired for this talk and how he uses RxJS in his everyday work.
The final interview is with Joe Eames, CEO of Thinkster. Joe spoke about error handling. He explains how he struggled with this as did many others so he did a deep dive to find answers to share. In his talk, he covers what error handling is and what it is used for. Joe outlines where most people get lost when it comes to error handling. He also shares the three strategies used in error handling, Retry, Catch and Rethrow and, Catch and Replace. Charles shares his admiration for the Thinkster teaching approach. Joe explains what Thinkster is about and what makes them special. He also talks about The DevEd podcast.
Panelists
Charles Max Wood
Guests
Mike Ryan
Sam Julien
Tracy Lee
Dean Radcliffe
Joe Eames
Sponsors
Infinite Red
G2i
CacheFly
____________________________________________________________
"The MaxCoders Guide to Finding Your Dream Developer Job" by Charles Max Wood is now available on Amazon. Get Your Copy Today!
____________________________________________________________
Links
https://www.rxjs.live/
RxJS Live Youtube Channel
https://twitter.com/mikeryandev
https://twitter.com/samjulien
https://twitter.com/ladyleet?
https://www.npmjs.com/package/rx-helper
https://twitter.com/deaniusol
https://twitter.com/josepheames
https://devchat.tv/dev-ed/
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio

Dec 31, 2019 • 1h 3min
RNR 148: What's in My Stack?
In this episode of React Native Radio the panel overviews the libraries and tools they choose for their stack and explain why they choose them. Christopher Reyes starts by discussing his favorite notes app, Bear Notes. He shares the features from the app that makes him love it so much. The panel also discusses Notion as a good resource for organizing teams.
Next, Chris outlines the stack he would recommend for someone new to development and React Native. He recommends React Native CLI, React Native Navigation, Native Base, and Async Storage. Chris explains why he recommends these tools.
The panel also discusses the importance of going back to your source to make sure you are using the most up to date product. The panel considers what version five of React Navigation with the component-based API will change in their everyday work. They all express their excitement to try it.
Jamon Holmgren is the next panelist to outline his stack. He builds with Ignite and uses the stack that it provides. Jamon explains how Ignite works and what it has in its stack. He likes React Navigation, MobX and, React Native Screens. Jamon goes over the pros and cons of a Native navigation stack compared to a JavaScript one. He also explains why he prefers MobX and goes over the differences over their various tools. He also discusses the boilerplates built by Infinite Red and what to expect in their upcoming boilerplates.
Next, Charles Max Wood shares his troubles with his current DevchatTV app and the panel tries to help. Josh Justice is the last to overview his stack, he discusses one of his hobby apps, building a todo app. He is using Orbitjs, ESLint, Prettier, React Native Elements, and React Native Paper. Josh emphasizes the need to test even in hobby projects, for that he uses Dependabot, React Native testing library, and Detox.
Panelists
Josh Justice
Charles Max Wood
Christopher Reyes
Jamon Holmgren
Sponsors
Infinite Red
G2i
CacheFly
Links
Bear Notes
Notion
NativeBase
AsyncStorage
React Native CLI
React Navigation
React Navigation v5 preview
Ignite
React Native screens
MobX State Tree
React Native EU 2019: Jamon Holmgren
MobX
Jamon Holmgren - Build an iOS and Android app in 15 minutes using React Native
Orbit JS
nativeup
Dependabot
Material UI guidelines
iOS Human Interface Guidelines
Appium
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio
Picks
Charles Max Wood:
The MaxCoders Guide To Finding Your Dream Developer Job
Buy DevchatTV a coffee
Josh Justice:
Editor Snippets
Christopher Reyes:
MacBook Pro Web Developer Setup — From clean slate to dev machine
Jamon Holmgren:
Software Libraries Are Terrifying

Dec 24, 2019 • 40min
RNR 147: Libraries vs Omakase
In this episode of React Native Radio the panel discusses the different approaches frameworks have for building stack. The panel takes a moment to define the two major approaches, libraries and batteries included. They list various frameworks and discuss where they lie on the scale of libraries to omakase.
Frameworks like React and React Native are the panels examples of a libraries approach framework. Developers pick and choose libraries to build their stack, React is basically just a UI library. They use Ruby on Rails as the example of an omakase approach; about 80% of the stack is chosen for you.
The pros and cons of each approach are considered. The panel shares their experiences picking libraries for their React and React Native apps and describe some of the challenges. Along with the freedom and flexibility given to the developer with a libraries approach, there is also the stress of keeping up with the latest libraries and tools. The beauty of this approach is the diversity and decentralization.
The omakase approach relieves the stress of keeping up with the latest libraries because it chooses them for you. There is safety in numbers, meaning the libraries chosen by omakase frameworks will always be supported. Also, substitutions are still possible. This approach can also be helpful for beginners, giving them training wheels and room to learn without too much responsibility.
The panel discusses when each approach is helpful. They share their experiences with each approach and with frameworks that lie somewhere on that spectrum. The panel shares their preferences. The needs for conventions and standards are considered. The panel shares options for an omakase approach for React.
Panelists
Charles Max Wood
Josh Justice
Christopher Reyes
Sponsors
Infinite Red
G2i
CacheFly
Links
Ignite
Rails Doctrine
Ember.js
https://nativebase.io/kitchen-sink-app
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio
Picks
Josh Justice:
Frozen II
redux-thunk
Christopher Reyes:
JSJ 246 GraphQL and Apollo with Uri Goldshtein
Artsy Omakase
Charles Max Wood:
The Bishop's Wife
Miracle on 34th Street
How the Grinch Stole Christmas

Dec 17, 2019 • 28min
RNR 146: React Native Radio at RxJS Live
In this episode of React Native Radio Charles Max Wood does interviews at RxJS Live. His first interview is with Ben Lesh, a core team member of RxJS. Ben has been working on RxJS for the last four years. In his talk, he shares the future of RxJs, the timeline for versions 7 and 8. With Charles, he discusses his work on RxJS and the adoption of RxJS.
Next, Charles interviews Sam Julien and Kim Maida. They gave a talk together covering the common problems developers have when learning RxJS. In the talk, they share tips for those learning RxJS. Charles wonders what inspired them to give this talk. Both share experiences where they encouraged someone to use RxJS but the learning curve was to steep. They discuss the future of RxJS adoptions and resources.
Finally, Charles interviews Kim alone about her second talk about RxJS and state management. She explains to Charles that many state management libraries are built on RxJS and that it is possible to roll out your own state management solution with RxJS. They discuss why there are so many different state management libraries. Kim shares advice for those looking to roll out their own solutions.
Panelists
Charles Max Wood
Guests
Ben Lesch
Sam Julien
Kim Maida
Sponsors
Infinite Red
G2i
CacheFly
Links
https://twitter.com/benlesh
http://www.samjulien.com/
https://twitter.com/samjulien
https://twitter.com/KimMaida
https://www.rxjs.live/
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio

Dec 10, 2019 • 1h 8min
RNR 145: The Five Approaches to Using React Native
In this episode of React Native Radio the panel discusses Josh Justice’s blog post outlining four approaches to using React Native and a fifth approach he has heard about since publishing the post. Josh summarizes the post and explains how knowing the benefits of each approach can minimize the downsides of using React Native that scare people away from using it. Understanding each approach can also help you decide which approach would work best for your company.
The first approach and the recommend approach recommended by React Native is Expo. Josh explains what Expo is and how it simplifies React Native for those starting out. The panel shares their experiences with Expo and considers the benefits of using it. They list many of the tools that Expo has right of the box and praise the simplicity of setting up and using for developers unfamiliar with native development tools.
The next approach to using React Native is React Native CLI. React Native CLI is the default approach to using React Native. This approach does require some knowledge of Xcode and android studio. It is the best option if you need to use some native integration not included in Expo. The panel shares recommendations for learning and the use of React Native CLI.
The next approach is inserting React Native into an existing native app. Josh explains how this is done and the benefits of doing so gradually. The panel considers why this approach might be used. Josh shares some challenges he saw when using this approach. The panel briefly discusses the approach Josh does not mention in his post, Expo Kit.
The final approach from the blog post and the most complex is using React Native in an independent component library. The panel considers the benefits of this approach including the isolation of the React Native code and freeing up native developers. Reusing code is discussed including how this approach can be used to save time and be used for testing.
The episode ends as the panel gives recommendations for native developers wanting to get into React Native or bring React Native to their companies. React Native has a very helpful and tightknit community and the panel invites anyone struggling or wanting to know more about React Native to reach out to the community.
Panelists
Charles Max Wood
Josh Justice
Narendra Shetty
Christopher Reyes
Sponsors
Infinite Red
G2i
CacheFly
Links
Four Approaches to React Native
Big Nerd Ranch guides for iOS and Android
ExpoKit
React Native Community CLI
Reactiflux
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio
Picks
Josh Justice:
GitHub Actions
GitHub Packages (Package Registry)
Exploring JS
Deep JavaScript Foundations
Christopher Reyes:
Ignite cli
reactotron

Dec 4, 2019 • 9min
RNR 144: At RxJS Live with Hannah Howard
In this episode of React Native Radio Charles Max Wood interviews Hannah Howard at RxJS Live about her talk. Hannah is really enthusiastic about RxJS especially when it comes to frontend development. Her talk is about how to architect full-scale apps with RxJS. Hannah gives a brief summary of her talk. Charles having met Hanna previously at Code Beam asks her how functional programming and reactive programming work together in her mind. Hannah describes how she sees programming.
Panelists
Charles Max Wood
Guest:
Hannah Howard
Sponsors
Infinite Red
G2i
CacheFly
Links
https://www.rxjs.live/
RxJS Live Youtube Channel
https://twitter.com/techgirlwonder
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio

Nov 26, 2019 • 1h 1min
RNR 143: The Roles of QA and Development
In this episode of React Native Radio the panel considers the roles of QA and development teams. Charles Max Wood and Josh Justice share their backgrounds in QA and development, this gives them a unique perspective, having seen it from both sides. They begin by discussing and defining some terms. Charles explains that most terms are defined more by an organization than the industry.
The panel discusses testing tools like Cypress and Detox, explaining their uses and value. They define black box and gray box testing and consider the benefits of each testing type. Josh explains the value of manual testing and how that value may never be lost. They consider the strategy of relying on users to find bugs. They compare testing mobile and web development.
They consider how the roles of QA and development overlap and the best ways to define the roles of each team. Charles recommends each organization sit down and clearly define these roles. Josh recommends clearly outlining where CI and CD come into play.
They consider the common relationship issues found between QA and development, including animosity and an “us vs. them” mentality. Charles and Josh explain the value of working together and communicating with each other. They give advice on how to work together and improve relationships between QA and development.
Panelists
Charles Max Wood
Josh Justice
Sponsors
Infinite Red
G2i
CacheFly
Links
The MaxCoders Guide To Finding Your Dream Developer Job
https://github.com/wix/Detox
Appium
https://www.cypress.io/
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio
Picks
Charles Max Wood:
Holiday Inn
White Christmas
The MaxCoders Guide To Finding Your Dream Developer Job
Josh Justice:
Code review
Slack

Nov 19, 2019 • 57min
RNR 142: Battling Bugs with James Smith
In this episode of React Native Radio Charles Max Wood interviews James Smith, the co-founder, and CEO of Bugsnag. James gives Bugsnag’s background and explains what makes it different than other bug-finding tools. He shares statistics on how much bugs cost. Developers spend on average 17.3 hrs per week dealing with bad code, 85 billion dollars in GDP dollars are lost to bad code every year and most customers leave an app after two crashes, harming your brand.
Chuck and James consider when and why customers leave reviews. They consider how reviews help in finding and fixing bugs. They discuss how helpful it would be if they could communicate with unhappy customers to help them find bugs. James explains how Bugsnag can help with this by replicating user interactions to find what steps led to a bug.
James explains what to once all the data has been gathered and the best processes for actually fixing the bugs. This process stems on establishing ownership and identifying priority bugs. Although QAs and QEs are getting more common, James recommends empowering the engineering team to fix bugs. Chuck and James consider the idea of a bug sheriff, a rotating position who holds the responsibility of determining priorities and ownership.
They consider how these processes could lower the number of bugs and teach developers to better handle bugs. James explains that “zero bugs” is an impossible goal because there will always be more bugs, the hope is to stay on top of them so the team can reach new velocity. Performance bugs are considered and James explains how these can be measured and improved each release.
Panelists
Charles Max Wood
Guest
James Smith
Sponsors
Infinite Red
G2i
CacheFly
Links
https://stripe.com/reports/developer-coefficient-2018
Buckaroo
https://square.github.io/leakcanary/
https://www.bugsnag.com/
https://twitter.com/loopj?lang=en
https://www.facebook.com/ReactNativeRadio/
https://twitter.com/R_N_Radio
Picks
Charles Max Wood:
The MaxCoders Guide To Finding Your Dream Developer Job
It's A Wonderful Life
Mr. Krueger's Christmas
James Smith:
DroidCon
Links Awakening

Oct 29, 2019 • 54min
RNR 141: EEON Mitch Masia
In this episode of React Native Radio, panelists Josh Justice and Charles Max Wood interview Mitch Masia. He is a software engineer from Chicago and works with all things JavaScript, React, React Native, Node, and is currently working on a project to create a financial research platform.
The product is called EEON. It is inspired by the lack of apps for people to easily research and make informed financial decisions when it comes to investing with all the amazing zero commission trading apps out there. They are looking to expand upon the information available within those apps to be able to give a rating system, real time visualizations, and data on financial statements.
They discuss how this app is constructed and Mitch mentions how great Redis Pub/Sub is for real time functionality. He talks about how difficult it has been to work with multiple services and that recently he has condensed some of those services. React Native with Expo is what he is currently using on his frontend.
Right now, iOS is the focus, but android will be following soon thereafter. Mitch acknowledges that most of this already is online, but there is a lack of resources specifically for apps and the panelists agree that how great it is to have an app specifically meant for what they want to do on a web browser.
The panelists discuss how the project was started with Expo and the many templates and preset configurations that are available and they compare it to Rails for React Native. Mitch states that the build process is the biggest benefit with Expo among many others. They go on to talk about the different services that Mitch is using for his frontend and backend and what he has used in the past.
Mitch talks about how to create a seamless dev experience and his intentionality with constants and consistent build and release process. He uses a library called Semantic Release to release software quicker and more efficiently with an automated system. Redis has been a huge asset for Mitch and has used it as a cache, pub/sub mechanism, and loves the API they expose.
Next, the panelists talk about the visualization of data and how Mitch does it. The design has followed an iOS feel with large text and lots of white space. For the charting he used a web view with React Native echarts wrapper, and it has done an exceptional job and Mitch praises the developers who worked on it.
The panelists question Mitch about GraphQL and its automated updating of the cache. He responds with options of optimistic updates and automatic updates and that he uses the latter. Mitch goes into some of the difficulties with implementing the automatic updates, but they’ve been able to get around it to provide a seamless experience.
They next talk about difficulties with animation and that Mitch ended up using a library called React Native Pose that gives a spring like automation. This leads into a discussion about favorite React Native libraries and Mitch talks about React Native Typography which has a lot of prebuilt styles with default weights and sizes which helps the app feel a lot more Native. For forms they have used Formik and React Final Form.
Next, the panelists talk about testing and how Mitch uses the testing diamond, which is to write few end to end tests, a lot of integration tests, and few unit tests. Charles Max Wood used unit testing in the past, but as he has entered the business side, he does more end to end tests because of its importance with client retention.
The panelists discuss more about EEON and how Mitch wants to make the data that the app provides to the user be given in a heat map form to make it more navigable and within certain parameters that the user sets. He uses React Native Snap Carousel with heat maps nested within it to create a very nice-looking UI (see EEON for visual).
Next, the panel talks about collaborating with the app and how the app will be funded. Mitch talks about how the app will have a generous number of free features but will be funded with premium subscriptions to access all of the information. With regards to collaboration, Mitch says the biggest win has been GraphQL and its graphical data explorer and React Native Expo. Mitch talks about how energizing and fun it is to be greenfielding a project and that they are currently testing with financial experts to create this app.
Panelists
Josh Justice
Charles Max Wood
Guest
Mitch Masia
Sponsors
Infinite Red
CacheFly
Ruby Rogues
iPhreaks
Links
Mitch Masia - GitHub
Mitch Masia - Blog
EEON
Mitch Masia - Slides
Expo
React Native Typography
React Native Snap Carousel
React Native Popmotion
Redis Pub/Sub
RNR on Facebook
RNR on Twitter
Picks
Josh Justice
MobX
Twitter
Charles Max Wood
St. George Marathon
CES
Mitch Masia
Ant Design
GraphQL Shield
Can it be done in React Native? YouTube videos
Raquetball