WhoBuilt

React Native news, insights & gossip with React Native Radio

Sep 27, 2023· 37 min· 1.0K views·Watch on YouTube

Speakers

Michał, host of The React Native Show at Callstack, and Jamon, host of React Native Radio at Infinite Red, discuss React Native developments in a crossover recorded at React Native EU in Poland.

React Native debugger changes

React Native 0.74 will no longer include Flipper in its default template, though Flipper support is not being removed. The hosts describe problems with its build-time impact, reliability, and behavior in apps. They welcome a Chrome-based debugger that runs JavaScript in the same environment as the device or simulator, helping reproduce issues that the old browser-based debugger could miss.

What React Native 1.0 should mean

The hosts say a 1.0 release should represent stable processes, a shared architecture, and reliable APIs, rather than just a version number. Stability would help library maintainers avoid repeated breaking changes and give companies more confidence adopting React Native. They expect the community to make that commitment together, and say it is not imminent.

Expo’s expanded role

Expo has evolved from an all-or-nothing setup where adding custom native code meant ejecting. Config plugins and Prebuild can generate native project folders from scripts, making customizations easier to reproduce and upgrades easier to manage. The hosts say Callstack has begun recommending Expo for greenfield projects, including its EAS and config plugin workflows, while developers can choose which Expo tools to use.

Static Hermes for performance work

Static Hermes is an experimental compiler that can turn typed TypeScript or Flow into native machine code, rather than interpreted bytecode. The hosts say it could help with performance bottlenecks such as encryption, with a reported speedup of up to 20 times over typical interpreted bytecode. It has type-related constraints and different development and debugging trade-offs, so they frame it as a targeted option rather than a replacement for ordinary JavaScript.

New Architecture compatibility

The hosts note that the New Architecture received little attention at the conference, while work continued on library compatibility. They explain that an interoperability layer lets old and new views coexist, easing migration for apps that depend on libraries that may not be maintained. The hosts see this as a practical bridge while newer libraries adopt the architecture and older ones gradually fall away.

Takeaways

  • Treat React Native 1.0 as a commitment to stable APIs and processes that third-party library authors can rely on.
  • Use the device-based debugger to investigate bugs that differ between browser JavaScript and the app runtime.
  • Consider Expo’s config plugins when native customizations make upgrades difficult to repeat.
  • Reserve Static Hermes for measured JavaScript performance bottlenecks, and account for its typing and debugging constraints.
  • Plan New Architecture upgrades around the libraries your app depends on and their compatibility path.

Mentioned in this talk

Search inside this talk

What was claimed 15

Show all 15 facts

Related talks