Live data from Hacker News

Transition to React Native

blog.coinbase.com

161–170 of 221 posts

Re: Transition to React Native

#161
post #56

Long story short, terrible idea unless you're in a position like coinbase. The article is from a high level engineering standpoint about productivity and trying to be efficient. The thing the article doesn't mention is the best react native developer also is an expert in native mobile development. It is crazy hard finding these people. All techno fluff aside, any component mobile developer knows once you have a solid…

> the best react native developer also is an expert in native mobile development.

It's not that bad. All they need is at least 1 iOS expert and 1 Android expert in the team.

> infamously know to not favor solid user experiences

I don't think that's necessarily the case. Discord is doing fine for me. Most of the apps don't need such high performance as video games.

People always rant about React Native and Electron. The reality those techs are just scapegoats because most of the companies chose them because they want to build something cheap. If they use the same budget to build the same set of functionalities using native technologies for each platform, the outcome could mostly be even worse.

Re: Transition to React Native

#162
post #146

Does anyone know if Flutter was in the consideration set? It's gaining some momentum as a slightly more stable crossplatform ecosystem to React Native. but of course, there is the prospect of Google and Dart.

We did consider Flutter, but (1) we already had a very strong javascript talent base that we wanted to leverage; (2) at the time when we made the decision, Flutter was still relatively early in its lifecycle. That said, we've spent a lot of time talking with teams using Flutter and we think it's awesome!

Could you say which teams you were talking to? Curious about companies adopting Flutter and why over other solutions.

Re: Transition to React Native

#163

Hi all - I support all Retail engineering at Coinbase and was one of the folks who helped shepherd this change through from inception to rollout. I'm happy to answer any questions that folks have - just thread here, and I'll either answer or pull in our team to give more detail.

What does your CI/CD look like? It took me a long time to fully flesh out a RN pipeline that was (mostly) completely automated. Are you leveraging Fastlane? Are you buliding both Android and iOS on OSX VMs? How do you deal with shipping canary versions and is that process also automated? Thanks!

Re: Transition to React Native

#164

Hi all - I support all Retail engineering at Coinbase and was one of the folks who helped shepherd this change through from inception to rollout. I'm happy to answer any questions that folks have - just thread here, and I'll either answer or pull in our team to give more detail.

Not really a question but more of a statement that Discover also transitioned from Native to React Native successfully and I believe they also didn't do a brownfield implementation. There was a presentation about this at React Chicago but I can't seem to find it.

Re: Transition to React Native

#165
post #159

I'm never touching mobile development and especially React Native again! I'm a web developer and a few years ago, I had the opportunity to develop a mobile app. What a nightmare... Among the new versions of React Native or Gradle breaking everything, all the npm packages suddenly not maintained anymore, the virtual phones not always starting or refreshing, the custom code you add to do in Java and Objective C because…

I would do it again. Mobile is generally shit, but RN made it bareable. But, yes, much bigger overhead with all the native stuff. I'd recommend everyone to use web tech whenever possible.

Also, why support the duopoly if you can develop for the open web instead?

Re: Transition to React Native

#166

If I wanted to do android development again, I have no idea which skillset to optimize for React Native? Kotlin? An old version of Java that just got lambdas? Are we doing Model-View-Presenter (MVP) no matter which? Or are we still doing Massive-View-Controller (MVC backronym) Are there adequate networking, database ORM, and image loading libraries for all frameworks? Last time I interviewed for any mobile developmen…

>If I wanted to do android development again, I have no idea which skillset to optimize for

I prefer native, but I'm pretty biased, to be fair.

In native-land we're doing more or less all of our development in Kotlin these days. It's a really nice language. XML-based Views are still where it's at, but Google have been developing a new view toolkit called Jetpack Compose which is very likely where we are going next. It's based on the reactive view-paradigm popularized by React, but I think it's getting a lot of benefits from moving second and having been able to learn from what React has done. Also, it's not JavaScript, which is a big plus.

>Are we doing Model-View-Presenter (MVP) no matter which? Or are we still doing Massive-View-Controller (MVC backronym)

We're doing MVVM these days. Or whatever you would like to call the following description:

>There's an object called the ViewModel which survives activity recreation, from which in your view-layer you subscribe to some state. The ViewModel also facilitates access to the Model-part of your application with state and network access and whatever

>Are there adequate networking, database ORM, and image loading libraries for all frameworks?

I'd say so, yes. The Jetpack-family of libraries by Google are all pretty good.

For networking, you can use Retrofit by Square For database ORM you can use Room by Google. There's also SqlDelight by Square if you like a lighter approach to database interaction. For image loading the most recent contender is Coil, but Glide also works pretty well.

>Last time I interviewed for any mobile development role was 2 years ago and every team (FAANG, Fortune 500, Series B startups) wanted something different and acted like that was the normal skillset to expect

I can't promise you that the entire android development scene has aligned on anything entirely yet. This may very well still be the case.

Re: Transition to React Native

#167

Earlier quoted context omitted.

Most teams don't hire a "mobile developer", they hire an Android developer, and/or iOS developer, and/or React Native developer, and/or Flutter Developer. So unfortunately it requires some commitment, don't do all of them at once! - React Native: Easiest to learn, good build tools/ developer experience, good amount of jobs already. Unfortunately, React Native is naturally intertwined with JS/ react, so you'll face is…

I very much disagree that Android is easier to learn and iOS. The iOS SDK is incredibly simple to get started with compared to android. Dealing with extensions on iOS is really hard, but creating apps involves so much less boilerplate than in android. XCode isn’t great, but I am not a IntelliJ Jetbrains fan at all, their IDEs are way too heavy for my taste.

I concur. Another big benefit of iOS vs. Android is that the iOS SDK is both generally more capable (greatly reduced need for third party dependencies) and opinionated. The latter is hugely important because it means there’s a well supported “happy path” for almost everything, simplifying development. It’s a stark contrast to Android Framework where there’s 6 ways to do everything, 3 of which are deprecated, 2 that have odd gaps in functionality, 1 that’s the new shiny thing that’s too immature for production use, and none of which are generally “right”.

Re: Transition to React Native

#168

I want to write small review regarding replies on this link. I am working as an mobile engineer for more than 8 years now. I have worked on native iOS, Android, Xamarin, Unity, Titanium, Flutter and React Native. Long story short I have never been happier since I switched to React Native and Expo made everything so much better. I am not comparing it to native but I can compare it to Flutter. First of all Flutter has…

Thank you for the info. I am starting a project and was thinking choosing Flutter or React Native. I have used both Flutter and RN for some small toy projects. I really liked Flutter with fastlane. Does fastlane still work?

Do people actually use Unity for apps? I am actually building an app for kids, Unity can be really interesting for me.

Re: Transition to React Native

#169
Sort of off topic.

In your opinion, What is the best React Native App, that is also extremely popular which could be used to show case the tech?

I think if you look at the best and you are already unimpressed that we could wait another few years for others to figure out first rather than jumping on to the hype. Sort of like Facebook demonstrating HTML5 during the start of the iPhone App Store era.

Re: Transition to React Native

#170
post #146

Does anyone know if Flutter was in the consideration set? It's gaining some momentum as a slightly more stable crossplatform ecosystem to React Native. but of course, there is the prospect of Google and Dart.

To be honest, it's only gaining momentum because of the PR behind it. I've yet to see or hear of a major hybrid app getting shipped in Flutter.

https://flutter.dev/showcase seems to show a lot of major applications using flutter.
Post reply on HN