Slide 1

Slide 1 text

Introduction to React Native Learn Once, Write Anywhere Aaron Greenwald github.com/aarongreenwald @aaronjgreenwald aarong@wix.com

Slide 2

Slide 2 text

01 / Meet React Native

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

“A framework for building native apps with React” - Facebook Very popular, but very young and unstable

Slide 5

Slide 5 text

Wait...this isn’t new let [ PhoneGap, Trigger.io, Cordova, Ionic, Sencha Touch, Kendo UI, Appcelerator Titanium, Xamarin ...rest ] = stuffWeTriedBefore;

Slide 6

Slide 6 text

02 / How It Differs

Slide 7

Slide 7 text

Webviews vs Native UI

Slide 8

Slide 8 text

Write Once, Run Anywhere

Slide 9

Slide 9 text

Write Once, Run Nowhere

Slide 10

Slide 10 text

Learn Once, Write Anywhere

Slide 11

Slide 11 text

03 / How it Works

Slide 12

Slide 12 text

JS Core UI Bridge

Slide 13

Slide 13 text

UI Asynchronous Serializable Batched Communication JS Core

Slide 14

Slide 14 text

04 / How It Feels

Slide 15

Slide 15 text

Look Ma, No XCode!!!

Slide 16

Slide 16 text

IDE Packager Chrome Simulator

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

05 / Advantages

Slide 19

Slide 19 text

We need native mobile apps but we hate writing them

Slide 20

Slide 20 text

Smoother transition from the web

Slide 21

Slide 21 text

Use the richest ecosystem there is Smoother transition from the web

Slide 22

Slide 22 text

Use the richest ecosystem there is Smoother transition from the web Develop quickly

Slide 23

Slide 23 text

Develop quickly Use the richest ecosystem there is Smoother transition from the web Deploy like you’re on the web

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

We need native mobile apps but we hate writing them

Slide 27

Slide 27 text

UX of Native Developer Experience of the Web

Slide 28

Slide 28 text

But...what if it limits me?

Slide 29

Slide 29 text

It won’t.

Slide 30

Slide 30 text

By definition.

Slide 31

Slide 31 text

06 / It’s Still Not Web Development

Slide 32

Slide 32 text

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

Slide 33

Slide 33 text

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

Slide 34

Slide 34 text

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

Slide 35

Slide 35 text

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.

Slide 36

Slide 36 text

07 / Should I Use It? Umm...it depends

Slide 37

Slide 37 text

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

Slide 38

Slide 38 text

● 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

Slide 39

Slide 39 text

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

Slide 40

Slide 40 text

● 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

Slide 41

Slide 41 text

Resources The INTERNET

Slide 42

Slide 42 text

Resources The Mobile Guild The INTERNET https://github.com/wix/awesome-mobile-framework