top | item 21481138

(no title)

hqrlk | 6 years ago

The iOS app of Discord is crappy compared to the Android app. I mean, it's not bad bad, but it's not good, or at least not as good. I wonder why they decided to go this route instead of hiring iOS developers?

I could understand if they used the same app for both platforms (like they do with their Electron app, which is also not as good as Ripcord), but since they have a native app for Android...

discuss

order

mrkcsc|6 years ago

Our core team - and indeed our original team - were native developers not React JS ones.

We chose React Native because it was a pragmatic choice and the best tool for our situation. As our startup gained traction and we decided to build mobile apps - we already had a React JS app so it made sense to try out RN.

As it turns out, we were able to build an almost feature parity versions of the React app in a weekend that shared all the business logic - so it made a ton of sense for us.

React Native for Android did not exist at that time (not open sourced) and so I had to build out our initial Android app in native - I can tell you it took me a lot longer than a weekend :P

That isn't to say there are not pros and cons to each approach - but I think it's important to be always open to new tools/languages vs. going with the "devil you know" so to speak.

Assadi|6 years ago

As far as I know, they use react for both. Where did you hear that they had a native android app?

GeneralTspoon|6 years ago

From their open job positions - it looks like the Android app is indeed native (mostly Kotlin + heavy use of RxJava).

And only iOS + web (+ desktop?) are mentioned in the post.

I'd imagine the reason they didn't use RN on Android is because historically it's always had much worse performance on that platform. iOS RN performance is usually acceptable, but Android has always been a bit of a 2nd-class citizen.

hqrlk|6 years ago

Since their iOS and Android apps are different, and the iOS one is built using React, I just assumed the Android one is native. Why would they build two different React apps? Isn't the entire point that you can share the code?

helpPeople|6 years ago

Reduce your Apple footprint?

I try to stay away from that company as much as I can, but since users unfortunately use that company.