chan.dev / posts

115: Eli White on Principles and React Native

🌱 This post is in the growth phase. It may still be useful as it grows up.

Summary

Be opinionated

Principles and positions gives others the opportunity to quickly align and collaborate, or disagree and move on. It’ll save a ton effort in the long game of product development

Be a generalist

Organize work around features and products, not platforms

Design for local alignment

No user gives a shit about “cross-platform consistency”. They want an experience that is locally consistent with other apps on the platform they use


Material

Episode url: https://reactpodcast.com/episodes/115

Jump to Discord discussion: https://discord.com/channels/105756917887950848/755466593261322301/768876858959593472


Minutes

  • 08:00 ~“in React Native you can add new native connections. On web, you have to wait for browser vendors”
  • Principles
    • Native Experience
    • Massive Scale
    • Developer Velocity
    • Every Platform
    • Declarative UI
  • 11:11 Fidelity in Native over the web
  • 12:55 “Hey mobile engineers. We’re here now. We’ll fix this for you now. — Web Engineers” — Web Engineers
  • 16:00 “React Native doesn’t mean JavaScript”
  • 19:00 ~“At Facebook, teams are organized around features and products, not platforms”
  • 20:00 ~“Now that we have the components, the problem becomes ‘how do we make them findable?‘”
  • 22:30 Generalists preferred to specialists. Specialists to serve generalists.
  • 28:00 Matching expectation of the platform used, not conistency across platforms. ~“When users investigate an app, they don’t check it against that same app on other platforms for consistency”
  • 30:40 ~“Principles like those expressed by the React Native team allow community to find projects that align with their own principles and long-term goals”
  • 34:00 Thought: There’s a delicate balance between UX and DX. There’s an ideal place where DX fuels UX thru fast, predictable, bug free production. But engieneers and designers tend to hyperfocus on the DX over the broader UX.
  • 47:00 ~“At the scale of Facebook, we have dashboards measuring how many years a day are spent running yarn”
  • 49:00 Over-the-air updates to speed up native development
  • 54:00 react-native-windows
  • 56:00 React Native and Microsoft react-native-windows teams ~“work as one team across companies”
  • 57:00 React Native can be integrated incrementally into existing apps. This is a product of Massive Scale as a principle. No room for idealism.
  • 63:00 ~“React Native is a tool on top of React for build high quality experiences”