Learn Once, Write Anywhere - Intro to React Native (2)

Learn Once, Write Anywhere - Intro to React Native (2)

Updated for September 2016 workshop in Dnipro, Ukraine

3b384ff874206aba76f5566a0b797087?s=128

Aaron Greenwald

September 16, 2016
Tweet

Transcript

  1. Introduction to React Native Learn Once, Write Anywhere Aaron Greenwald

    github.com/aarongreenwald @aaronjgreenwald aarong@wix.com
  2. 01 / Meet React Native

  3. “A framework for building native apps with React” - Facebook

  4. “A framework for building native apps with React” - Facebook

    Very popular, but very young and unstable
  5. Wait...this isn’t new let [ PhoneGap, Trigger.io, Cordova, Ionic, Sencha

    Touch, Kendo UI, Appcelerator Titanium, Xamarin ...rest ] = stuffWeTriedBefore;
  6. 02 / How It Differs

  7. Webviews vs Native UI

  8. Write Once, Run Anywhere

  9. Write Once, Run Nowhere

  10. Learn Once, Write Anywhere

  11. 03 / How it Works

  12. JS Core UI Bridge

  13. UI Asynchronous Serializable Batched Communication JS Core

  14. 04 / How It Feels

  15. Look Ma, No XCode!!!

  16. IDE Packager Chrome Simulator

  17. None
  18. 05 / Advantages

  19. We need native mobile apps but we hate writing them

  20. Smoother transition from the web

  21. Use the richest ecosystem there is Smoother transition from the

    web
  22. Use the richest ecosystem there is Smoother transition from the

    web Develop quickly
  23. Develop quickly Use the richest ecosystem there is Smoother transition

    from the web Deploy like you’re on the web
  24. Develop quickly Deploy like you’re on the web Use the

    richest ecosystem there is Smoother transition from the web Learn Once, Write Anywhere
  25. Develop quickly Deploy like you’re on the web Use the

    richest ecosystem there is Learn Once, Write Anywhere Smoother transition from the web Reuse code
  26. We need native mobile apps but we hate writing them

  27. UX of Native Developer Experience of the Web

  28. But...what if it limits me?

  29. It won’t.

  30. By definition.

  31. 06 / It’s Still Not Web Development

  32. You can’t always code push. Sometimes you need to change

    binaries. It’s Still Not Web Development
  33. You can’t always code push. Sometimes you need to change

    binaries. Styling is different. Presents a learning curve. It’s Still Not Web Development
  34. You can’t always code push. Sometimes you need to change

    binaries. Styling is different. Presents a learning curve. Platform-specific thinking. Adapt requirements and mindset for mobile. Debugging isn’t the same. It’s getting better, but slowly. It’s Still Not Web Development
  35. It’s Still Not Web Development You can’t always code push.

    Sometimes you need to change binaries. Styling is different. Presents a learning curve. Platform-specific thinking. Adapt requirements and mindset for mobile. Debugging isn’t the same. It’s getting better, but slowly.
  36. 07 / Should I Use It? Umm...it depends

  37. • Many poorly solved problems • No consensus on best

    practices • Instability • Large community • Many solved problems • A chance to get involved
  38. • Many poorly solved problems • No consensus on best

    practices • Instability • Large community • Many solved problems • A chance to get involved If your scale is relatively small, stick to traditional native
  39. • Reuse web developers’ skills • Transition quickly between web

    and mobile • Deliver amazing mobile apps • Many poorly solved problems • No consensus on best practices • Instability
  40. • Reuse web developers’ skills • Transition quickly between web

    and mobile • Deliver amazing mobile apps If you’re Wix, you don’t really have a choice • Many poorly solved problems • No consensus on best practices • Instability
  41. Learn Once, Write Anywhere

  42. Learn Once, Write Anywhere UX of Native <> DX of

    Web
  43. Learn Once, Write Anywhere UX of Native <> DX of

    Web github.com/aarongreenwald @aaronjgreenwald aarong@wix.com