Live data from Hacker News

React Native at Instagram

engineering.instagram.com

91–100 of 238 posts

Re: React Native at Instagram

#91

The dirty little secret about React is that it tries to 'reinvent' the DOM tree, and Web Components will be out soon making it all obsolete. Why not just move to Web Components NOW, and not have to rewrite your view logic in 3 or 4 years. Polymer wins easily. React got a head start, sure, but the W3C standards and native browser support for WebComponents makes React redundant and unnecessary, in the very near future.

ReactNative doesn't even have the concept of a DOM, so how can that be its dirty secret?

React Native has the native view hierarchy as its DOM, and it also has a "shadow" view hierarchy, which is very similar to the concept of shadow DOM.

https://github.com/facebook/react-native/blob/master/React/V...

Re: React Native at Instagram

#92
post #56

Earlier quoted context omitted.

As a business decision, it's outsourcing expertise of the platforms to Facebook, which has plenty of resourses working on the problem. True it's been the holy grail as long as I've been a web dev, but outside of a bit of platform lock in risk it seems like it's come a long way with relatively simple apps like Instagram. It's trading expense for risk.

Do you really think there's much expense to having two code bases for simple apps (as you said) like Instagram? If these apps are written properly most (all) of any custom logic is done server side and they are just presentational only. In addition, a good developer/engineer/team that's properly focused on mobile (the size of the team of Instagram) should have absolutely no problem supporting two native codebases.

Think of it as not 2, but 3 different languages. Say your backend is node - your JavaScript developers can all work across the stack. You can keep code standards more or less the same across the whole company.

Re: React Native at Instagram

#93

As an iOS developer, I had to decide between investing more time in Swift or React-Native. I chose React-Native simply because I thought it will allow me to broaden my mobile development experience and maybe one day stretch to even the Android platform. Furthermore, it improved my javascript skills in general and allowed me to create React web apps as well. I think it is the right choice thus far. Anyone else have si…

As someone who was in your shoes last year as I made a job transition into a lead developer role at a new company. I picked React Native for a small project over Swift: https://studio.carnegiemuseums.org/out-loud-cdc979453ef0#.rh... . It was worth it. Not only because immutable render functions make view code extremely pleasurable to write, but also because it's mostly JS and JSX it allowed me to quickly spin up a we…

React Native is so much nicer for building and iterating on layouts and styles it's almost worth considering the switch for that alone. Hopefully Apple is watching and will steal some of the best workflow benefits for some future version of Interface Builder.

Re: React Native at Instagram

#94
post #90

Earlier quoted context omitted.

As someone who was in your shoes last year as I made a job transition into a lead developer role at a new company. I picked React Native for a small project over Swift: https://studio.carnegiemuseums.org/out-loud-cdc979453ef0#.rh... . It was worth it. Not only because immutable render functions make view code extremely pleasurable to write, but also because it's mostly JS and JSX it allowed me to quickly spin up a we…

> I had to write our own Bluetooth, Audio and Accessibility Native Modules I hope you open sourced these :) I was looking at React Native the other day and the impression I got was that almost every piece that does more than display data from the web needed extra modules and far from all of them were written already.

Sure did: https://github.com/CMP-Studio/TheWarholOutLoud/blob/master/i.... See also CMSAccessibilityManager and CMSBeaconManager. They are not listed as packages on npm though because by the time we shipped the way to construct Native Modules had changed in the latest React Native. :/

Re: React Native at Instagram

#95
I love react native but only in combination with clojurescript as javascript replacement. Speaking of high-performance, is anyone here who has some insights how performance would change when swapping JS with cljs?

Re: React Native at Instagram

#96
post #45

Earlier quoted context omitted.

I was at the SF React Native developers meet up the other night, the speaker (Devin Abbott) gave several nice pro/con's slide re react native. Here's a picture of the slides: http://imgur.com/a/T3O7i http://imgur.com/a/z2oIU

Great comparison. Slides transcribed: -- Slide 1 -- Maybe we should use React Native: - We know JS / React - We have lots of web developers but few mobile - Our design is brand-focused - We're willing to invest in RN - We want to get into OSS - We want OTA code updates Or maybe we shouldn't: - We don't know JS / React - We already have an iOS team and an Android team - Our designs are heavily platform-specific - We d…

Thanks for this.

The thing that captured my interest was the point about being backed by Facebook. Parse was backed by Facebook and look where it is now.

Re: React Native at Instagram

#97
post #90

Earlier quoted context omitted.

As someone who was in your shoes last year as I made a job transition into a lead developer role at a new company. I picked React Native for a small project over Swift: https://studio.carnegiemuseums.org/out-loud-cdc979453ef0#.rh... . It was worth it. Not only because immutable render functions make view code extremely pleasurable to write, but also because it's mostly JS and JSX it allowed me to quickly spin up a we…

> I had to write our own Bluetooth, Audio and Accessibility Native Modules I hope you open sourced these :) I was looking at React Native the other day and the impression I got was that almost every piece that does more than display data from the web needed extra modules and far from all of them were written already.

This is true. Some great ones exist (like https://github.com/airbnb/react-native-maps and https://github.com/wix/react-native-navigation), but those are few and far between. Most are very simplistic and only solve very narrow cases. So you end up having to do a lot of the work yourself, for both platforms. And that is a big chore, as there is a lot of boilerplate to integrate native components with RN.

Disclaimer: react-native-navigation is developed by Wix, my employer, but I have not worked on that one.

Re: React Native at Instagram

#98

As an iOS developer, I had to decide between investing more time in Swift or React-Native. I chose React-Native simply because I thought it will allow me to broaden my mobile development experience and maybe one day stretch to even the Android platform. Furthermore, it improved my javascript skills in general and allowed me to create React web apps as well. I think it is the right choice thus far. Anyone else have si…

As someone who was in your shoes last year as I made a job transition into a lead developer role at a new company. I picked React Native for a small project over Swift: https://studio.carnegiemuseums.org/out-loud-cdc979453ef0#.rh... . It was worth it. Not only because immutable render functions make view code extremely pleasurable to write, but also because it's mostly JS and JSX it allowed me to quickly spin up a we…

Looking at https://github.com/CMP-Studio/TheWarholOutLoud, I see that you only support iOS. Any particular reason for that? Seeing as you have chosen React Native, why have you not used the number one feature, which is cross-platform development?

Often I see people touting "cross-platform development", but then, in practice, one platform always gets priority, and when it comes to support the other, a lot of the view code has to be rewritten. How much of an effort do you reckon would be required for this app to support Android?

If only iOS was the only target, why did you go through the RN hoop, when Swift would be much more natural?

Re: React Native at Instagram

#99
Call me old-fashioned, but I thought the Android/iOS code sharing nut was cracked: Business logic in C or C++ and UI in Objective-C (iOS) and Java (Android + NDK). As a bonus, you could bolt a desktop UI on top of the C++ as well.
Post reply on HN