My response to Flutter & React Native "fanboys"

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
okay so this video is for all of you flutter or react native fanboys and fangirls out there people who are defending these platforms to the death because you know I've made a number of videos explaining why I don't believe in cross-platform hyper technology so much and then you see these people they come in here by the horde that they're trying to dispute me you know like they're saying no flutter is not that here's my response my response to tech lead flutter is not dead basically and you got all these people coming out in the hordes and then even on Twitter you got people who are still trying to defend these platforms I wanted to explain to you really what the industry perspective is and quite frankly it's funny to me it's quite bewildering that you see these people random people on the internet coming in to defend these platforms and frameworks and you know like let me just cut to the core of the issue here's the real reason that there are all these fanboys and if you peer deep inside your soul I know that deep down the real reason that these people are defending these frameworks is because they're built by Facebook or Google and they feel that aligning themselves with these big brands is going to help them land a job at these companies they just want a job and they think that proclaiming that react native is great it's going to land them a job at Facebook or proclaiming that flood rate is amazing is going to land them a job at Google but the thing is if you're to go talk to these Facebook or Google employees about what they think about these frameworks many of them themselves would say no they don't like it they wouldn't use the framework and in fact if you were to take a look at the top Google or Facebook apps very few of them are using these frameworks like Instagram does not really use recognize of much at all I think they toured out many internal teams I Facebook tore out react native and replaced it with other technologies because they felt that recognized that was either too slow or a split the technology stack wasn't offering enough value too many bugs or hard to maintain and you could get a sense of this if you were to read up on the Facebook blog post on Lightspeed I believe yeah so it was project Lightspeed where Facebook completely rewrote messenger and completely rejected the concept of using these frameworks that would slow them down and so this is one statistic that if you read closely you'll find Facebook will never release or admit to you which is how many teams have moved off of react native within the past year or so right and even for Google internally you go as their top app teams like Gmail or YouTube you some hey what do you guys think about flutter they're going to say no way hell no because it's just not worth it think about that the YouTube app is used by like 100 million people so you optimize for the consumer you don't optimize for the developer it might take you a little bit extra time it might cost a little bit more to hire another developer but it's totally worth it for them to do that instead of trying to come up with some hybrid approach that doesn't really feel very good for the user and then having the performance suffer by even 100 milliseconds can amount to million dollars so here's really what's going on you fan boys out there who are saying that rack native is the best you go apply to Instagram and you tell them that you love react native you'll get rejected right away you could apply to YouTube iOS and you tell them that flutter is the best thing you'll be rejected because they're looking for native developers who are at the top of their game and the people who are employed by these companies are those native developers who just really understand native code and so here's a thought let's take a look at the top 10 apps or even the top 100 apps and you ask yourself are any of them using hybrid technologies like react native or flutter and it's like well probably not right because these top 100 apps they are raking in so much money that it makes sense for them to just hire a second team and Android team and then iOS team and then they just get the best of everything so from that perspective these hybrid app technologies will never be first-class technologies right you will never find the top apps using them so by definition is going to be second tier tech so then you ask yourself do you really want to be building your app with second tier technologies you know like this is not the way that the top apps are being built don't you want to be building your app also with top tier technology not to mention honing your own skill such that when you're done building this app you apply to a company and they'll actually value the skillsets that you have right you go apply to a company like Facebook knowing react native and you don't know how to program normal iOS or Android code they're going to say hey you're not good enough right you don't have the skills that they need now the other point I want to make is that it boggles me when I see people Fahy mentally defending technology a or technology B I mean these are simply tools it's like defending your car like saying that BMW cars are the greatest and you're not to drive any other car you're not going to drive a Mercedes or Ferrari or Porsche or whatever you only care about BMW and you're basically aligning yourself with team BMW like a football team like a sports team it's not like that you know it's like in technology you make choices and you don't get loyal to anyone certain technology if you're using my sequel and it's not scaling you simply say okay you're going to switch the database engine to something else based on your knees maybe you swap that out for MongoDB Postgres Seco firebase Redis or any other database storage engine I feel like the people who are proclaiming that no flutter is the future it has to be flutter or rag native is the best I mean that's pretty much taking us back to the Dark Ages when we were comparing Emacs versus vim and you had two camps and people were saying that one text editor was better than another text editor it's just like whatever right just use whatever you need nobody really cares get the job done it's almost like defending your vacuum cleaner or your washing machine it's just an appliance and the fact is even within the fang companies that have developed these technologies the internal teams intentionally evaluate these technologies and reject them right like the YouTube team evaluated flutter and said no they don't want that Facebook Instagram team looked at react native and said this is not good and they decided to stay on native for Instagram tasks even Facebook it stayed native for a huge part of their platform like a Facebook newsfeed the main page they're not going to search that over direct native and there's simply a technological choice based on the pros and cons of what that offers and the other point I want to make is that at the end of the day it's like I'm sorry but the future is simply not these client-side rendering technologies we've moved past that these top tech companies are moving into server driven technologies you got a hint of that when you saw Airbnb they abandoned react native I said they're going into server driven so yeah you can say that well server driven isn't here yet so you're going to cling on to the past right like client driven RAC negative tech and you could go around and proclaim that that's the future because that's the only future path that you have available but for a lot of these other tech companies they're carving forward their blazing forward another path into server rendering technology and I don't think it's all that hard to build like you can build it yourself it's not it's not that bad to do and one more thing personally if you were to ask me we are optimizing for the wrong thing here in taking a look at client driven UI frameworks that really optimized for having an infinite number of different layouts whereas like why do you need so many different views and layouts why do you need the flexibility in that like I would say that app needs maybe 10 different views that's it and then people just navigate through that it's a consistent experience you have muscle memory built in you don't need to create some system that allows you to just create an infinite number of different views and layouts and fonts and text sizes and you can have the image in the top left corner or the top right corner and the text label over here and let's head over there and then you can rearrange things and it's like why do you need so much flexibility in that why don't you build a generic system that supports just ten views it's not going to take that long to build and then you have the server send down the data that you need because the thing is these views are becoming so complex these days with mobile it's not like in the website days where all you had was some CSS HTML maybe it has some flex box and that was all you really need it but these days fuse need to support so many different behaviors like many different screen sizes right a view needs to support both iPad iPhone portrait orientation landscape orientation multiple different window sizes you got light mode the dark mode accessibility different font sizes you want all of the native gestures you want to support any external accessories fluid animations and because the view is it's so close to the user it's like it's what they interact with you really want that part that interaction to be as native as possible and then you can spend your time optimizing the backend and so this is essentially the concept of server driven frameworks where you focus most of your development on the server side on the back and you unify that across multiple different platforms and then on the client side well yeah you're going to have to put up some upfront work to build the system the generic systems that are able to accept data from the server but that's going to be a low cost investment once you come up with this shell rendering system then that's pretty much all you need and for example if you take a look at the YouTube app how many views are there there's like two right you have the large video view and the small video of you and that's really all you need why do you need anymore that yeah you can implement these views in flutter or react native but it's like how much work is that really going to save you it's two views that they saved you and then at the cost of that you split your technology stack you split your entire infrastructure your languages that you're using your training your onboarding documentation all of your editing tools and so essentially this whole concept of client driven rendering engines it was kind of interesting right it's kind of neat and it's probably better than nothing but the thing is people realize that that was kind of a backwards approach and what you really want is server driven that's even better and so now while a lot of companies are moving over to server driven technologies you have a lot of laggards these people random people on the internet who never got a job at Facebook or Google these types of people those are the fanboys who can't really think for themselves they're the ones who are still putting in the last hoorah for slaughter or at native and defending it to the death because they think that it's going to align themselves well with these large tech companies when even you go to the tech companies they're going to reject you when you go and say that you're a fanboy for fan girl for any of these and so if you go to an Instagram interview and you tell them that you love rag native expect to be asked why defend it like why do you like react native so much because they don't like recognized that they rejected the technology they hate that stuff so you need to explain exactly why you like it and why you think it's going to be the future when a lot of these other engineers have decided that it is not the future so that's why I have to say about that technology is just a tool like a hammer you don't fall in love with your hammer if the hammer breaks or if it's not useful you swap it out for whatever else is going to work and you keep your mind open about any other potential future tools that may be at your disposal hey maybe there's going to be a screwdriver that's going to be quite useful for you so I hope you enjoyed that soon the next one
Info
Channel: TechLead Show
Views: 86,532
Rating: 3.8684974 out of 5
Keywords: techlead, tech lead
Id: AvXSFUi022s
Channel Id: undefined
Length: 10min 35sec (635 seconds)
Published: Fri May 29 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.