
Our Transition to React Native - bryan_ka
https://engineering.khanacademy.org
======
dhalwani
Great post. Wondering why you chose go over js/ts as your backend since it
seemed like keeping a light footprint is key for you?

~~~
dangoor
Sorry I didn't see this earlier…

I believe that Go has a lighter footprint (both in memory and CPU) than
JavaScript.

------
bryan_ka
Hi! I'm the author of the post, happy to answer any questions you might have!

~~~
randompwd
I was briefly on a project which used React Native ~3 years ago. The non-
descrpit red error screen was a killer. Has the dev experience for RN improved
much since then?

~~~
bryan_ka
It's gotten much better over the last three years! Like the other reply here
said - go take a look at the recent LogBox updates there!

------
faizmokhtar
What do you think about using React Native in web?

~~~
bryan_ka
I've heard great things about it! Haven't used it myself yet.

We've considered using it for our interactive-exercises code (because it's
shared between web and mobile) but haven't made concrete plans yet to make
that change. (For now, our interactive exercises are still an embedded webview
wrapped in React Native "chrome".)

------
ptagon
What do you think of the future of React Native?

~~~
bryan_ka
It's been a bit since I looked at the overall roadmap, but I've really enjoyed
what I've seen and used so far! I've been enjoying Hooks lately, for example.

------
enahum
What did you do to ensure network resilience?

~~~
bryan_ka
A big feature for our app is that it needs to work in spotty network
conditions - especially as we've expanded internationally, and as students are
now studying from home where they often don't have WiFi.

We have a redux store where we keep our data, and much of the "have you
watched this video" or "have you completed this assignment" data gets
persisted to disk, so if a network failure happens we can just try again when
the user's device is back on!

(Does that answer your question?)

~~~
enahum
So nothing like automatic retries/backoff or queue failed requests?

------
vivekweb2013
Why moved to reactjs?

