3 ms·
So after three years, they've ported "all four root screens" in React Native? I can't fathom how broken each of their platform's codebases must have been to re
by smith7018 4y ago
So after three years, they've ported "all four root screens" in React Native?
I can't fathom how broken each of their platform's codebases must have been to require everyone to learn a whole new paradigm to start over from scratch. Further more, they are presumably causing the same code quality issues because "React Native was a completely new tech stack for [their engineers]." So the codebases were so broken that they had to rewrite them and they chose a system that most of them are learning as they go.
Love it lmaoo
- hooksfordays 4y agoAs someone who worked on the Shopify iOS and Android codebases, I would argue they weren’t all necessarily so broken. The flagship mobile app (the one primarily discussed in the article) was in good shape on iOS (and arguably better shape on Android). There was some fragmentation in architecture among teams, but overall things were reasonable and I didn’t personally find it difficult to jump into unfamiliar sections of the codebase.. Shopify’s other apps that migrated first were either much older, and therefore had much more tech debt, making the rewrite more enticing, or were much smaller in scope, making the rewrite much faster to get to feature parity. Once all the other apps had migrated or decided to migrate, it made a lot more sense to explore it in the flagship app discussed here. Some disclaimers, I’m no longer at Shopify, and while I worked in the very early iterations of the port of the flagship app, I wasn’t necessarily a vocal proponent of migrating it to RN. I enjoy RN, but I enjoyed working on the native Shopify apps.
- ageektrapped 4y agoThe choice to port to RN wasn't technical at all. Tobi (the CEO) prefers RN philosophically. No technical argument opposed to RN--which is super easy to come up with, along several axes--would have stopped the port. It was inevitable. This is my opinion, as I watched it unfold. I'm no longer at Shopify.
- weego 4y agoIf he's willing to have the business fund it long term then fair enough honestly. But it seems like a weak strategy that isn't playing out well judging by the progress made over the 3 years so far.
- smith7018 4y agoIt seems like the choice to use RN is usually made by the business side rather than engineers. I'm biased because I work as a mobile engineer but I've never heard an engineer emphatically love working with RN. In fact, I've usually heard horror stories about how it works, still having to write platform code, finding the talent that knows how to properly write RN, the fact that it's technically single threaded, etc. But hey, at least the higher ups get to hear "there's one codebase and therefore it's cheaper."