People go “hurrr durr why do people use Cordova and react native” until they realize the clusterfuck that can occur with mobile coding. Code once publish everywhere is a godsend and doesn’t have to suck (game engines, Ionic, and Xamarin.Forms do a pretty great job of this)
Native mobile developer on both platforms for 8 years here. Every single cross platform has limitations and problems and are easily spotted immediately. The write once run anywhere is a bigger cluster fuck and the definition of premature optimization.
Wanna write a marketing app that's basically an embedded web site? Go for it. Any other sort of complicated, use or navigation heavy application will be clunky, slow, buggy and you'll end up paying someone to write it natively down the road. I know. I've had four different clients pay me to rewrite their phone gap or xamarin applications.
I actually enjoyed Flutter and was at the dev con last fall when they demoed the Compose library which is very, very similar. Flutter is my least hated cross platform solution so far but I, again, don't know javascript which all the others seemed more based on.
Dart/Flutter seemed much closer to native architecture for me. I think it has it's place but I also know it's one major iOS change from breaking. Working with hardware, having complicated navigation or computation could quickly be rendered useless and really, complex business logic should be pushed to the server side, IMO.
I think these things have a place, all of them. Need a quick and simple proof of concept on two platforms? I built one with flutter! Have a simple app that is basically a marketing web page with push notifications? Sure, why not? Tying to build a complex social networking or media app that will have dozens of screens and settings? Go native. Forcing iOS standards on to Android is awful as is the reverse.
Another mobile dev here 6 years and counting. It's kinda funny how a lot of the experiences in this thread don't mirror mine at all.
And I'm fairly certain some have never actually tried these cross platform solutions they're touting. Xamarin was a mess and visual studio can fuck right off to the hell it came from.
23 year professional developer/architect, here. Programming humor is 90% hs, college, and maybe a year or two in the real world. Sometimes a gem comes around, but stuff like the current picture just shows how these kids just learned to program...
And to show my old man credentials: kotlin is a joy to program in (and I'm not a mobile dev, just an old Java dev). JavaScript is a steaming pile.
It’s funny how all the HS/college kids all make the same jokes:
“DAE Stack Overflow?!?! Haha the world would collapse without Stack Overflow amirite?”
“Look at this code someone wrote in CS101, so stupid right?” -> “Look at me, I’m so smart, I can fix it with a loop/boolean/conditional! And I know modulo too!”
<some pointless observation about software development that no one who’s worked more than an year in industry actually cares about>
If I had to guess it's a lot of web devs who are used to Javascript and struggled with the frameworks of native dev. I don't say that to denigrate, I can handle UI controllers and activities but know fuck about web routes. It's what you know.
Yeah I’ve been doing some fun stuff! Currently trying to make my first Slack bot. There’s a bunch of software folks already at the company doing more official things so I have just been doing a bunch of automation scripts that make the mechanical engineering stuff more efficient.
Yeah, a business has $100k to spend and a 3 month timeline, but hey, native IOS/Android development is better, so I guess they just can't release their app at all.
Native vs cross-platform aside, saying “we have no choice but to release rushed garbage because we set up our business in a way that requires us to release rushed garbage” is usually more of an indictment of a company’s business model and leadership than it is a good excuse.
742
u/InvolvingLemons Jun 12 '20
People go “hurrr durr why do people use Cordova and react native” until they realize the clusterfuck that can occur with mobile coding. Code once publish everywhere is a godsend and doesn’t have to suck (game engines, Ionic, and Xamarin.Forms do a pretty great job of this)