News for hackers. Stuff that matters.
Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Sunday January 09, 2022 @08:11AM (#29862899)
I dare to say 99% of the time I can spot a non-native app within seconds of using it. RN & co. are fantastic for quick MVP. For serious product it might be actually faster to build native for both platforms. You will start hitting the limitations of RN very soon, even in core functionalities like navigation.
Re:Lessons learned from migrating a native iOS app to Flutter by whiplashoo on Sunday January 09, 2022 @10:33AM (#29864088)
Even if you can spot a non-native app in seconds, does it really matter? The vast majority of users simply won't notice and not care at all if it's native or built with Flutter, Xamarin, RN, etc.

The same has been said for Electron on desktop for years, but look at how VS Code is probably the top editor in use on desktop platforms, and even more demanding audience, like developers, don't really care that it's non-native.

Re:Lessons learned from migrating a native iOS app to Flutter by akmarinov on Sunday January 09, 2022 @10:44AM (#29864197)
It does matter, I skip using a lot of airline apps and some bank apps, because of the horrible experience they provide.

It’s easier to do it via their website.

Re:Lessons learned from migrating a native iOS app to Flutter by kjaftaedi on Sunday January 09, 2022 @10:59AM (#29864366)
You're equating horrible experience with cross platform architectures, whereas there are any number of reasons apps can be bad.

It is perfectly possible to build a poor app in any language.

Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Sunday January 09, 2022 @11:36AM (#29864788)
Well that’s the point. While it’s perfectly possible to build a poor app in any language, it’s almost impossible to build excellent app in cross-platform framework. The reason why you recognize them almost immediately is that there are some people obvious annoying details - scroll lag, non-standard UI elements, non-standard navigation patterns, you can just immediately feel something is wrong, even if you are a normie. It can be partially compensated by the app having some other great benefits.
Re:Lessons learned from migrating a native iOS app to Flutter by fauigerzigerk on Sunday January 09, 2022 @12:05PM (#29865127)
I disagree about scroll lag. There are plenty of WebView apps (and websites obviously) that have zero scrolling issues.

Non-standard UI elements is something I don't personally care about. Some people do, but I think this is an issue that is often overstated (or perhaps rather overestimated as a factor) by platform enthusiasts.

What does matter a great deal to me though is launch speed and battery usage. Mobile apps are often used for short periods of time. They must launch instantly. And battery is the scarcest resource in mobile computing.

Nobody will voluntarily use an app that is slow to launch and shows up at the top of the battery usage table in spite of only having been in use for a few minutes.

As a developer, these are the issues I would like to learn more about in respect of any new cross-platform technologies.

Re:Lessons learned from migrating a native iOS app to Flutter by warning26 on Sunday January 09, 2022 @02:21PM (#29866452)
> While it’s perfectly possible to build a poor app in any language, it’s almost impossible to build excellent app in cross-platform framework.

100% this. Cross platform frameworks will always fall into a weird uncanny valley where there are just things that are subtly off about apps made with them. Most of the user base may not be able to pinpoint exactly what's wrong with such apps, but I believe they still notice on some level.

Re:Lessons learned from migrating a native iOS app to Flutter by a5aAqU on Sunday January 09, 2022 @03:26PM (#29867001)
I rarely notice unless the developer hasn't put any effort into the UI. Most people don't care.
Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Sunday January 09, 2022 @04:08PM (#29867349)
Of course they don't care. But you can feel the experience is not spotless.
Re:Lessons learned from migrating a native iOS app to Flutter by a5aAqU on Wednesday January 12, 2022 @01:22PM (#29910810)
I usually don't notice or care, unless they haven't put any effort into it. Now that I'm thinking about it, there are a few that I suspect aren't native, and I don't get bad feelings from the apps unless they are badly programmed and the functionality doesn't work.
Re:Lessons learned from migrating a native iOS app to Flutter by Apocryphon on Monday January 10, 2022 @03:08PM (#29881317)
But if they don't care, why does it matter what they feel?
Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Wednesday January 12, 2022 @07:20AM (#29905354)
What I mean is they don't actively consciously care. They have better things to do. But they're not immune to perception. They do have some impression and experience that they're also likely to be able to express in the form of feelings.
Re:Lessons learned from migrating a native iOS app to Flutter by skavi on Sunday January 09, 2022 @03:19PM (#29866941)
Even the best Flutter apps feel awful compared to a decent native iOS app. Which honestly sucks, because I much prefer writing Flutter apps to anything else.
Re:Lessons learned from migrating a native iOS app to Flutter by Jcampuzano2 on Sunday January 09, 2022 @11:08AM (#29864459)
Unfortunately the horrible experience is much more normalized with the amount of bloatware and horrible ux software out there to the point that users will use it either way in many cases.
Re:Lessons learned from migrating a native iOS app to Flutter by poopooracoocoo on Tuesday January 11, 2022 @09:27PM (#29901532)
And truth is, as long as you have exclusive content on a service, the quality of your app (and thus the satisfaction of your end users) doesn't matter all that much.
Re:Lessons learned from migrating a native iOS app to Flutter by edf13 on Sunday January 09, 2022 @11:00AM (#29864378)
This comment applies equally to native as it does cross-platform frameworks
Re:Lessons learned from migrating a native iOS app to Flutter by eklavya on Sunday January 09, 2022 @11:18AM (#29864562)
And yet those businesses continue with the app they have. That tells that the vast vast majority of their clients don't care or are happy with them.
Re:Lessons learned from migrating a native iOS app to Flutter by a5aAqU on Sunday January 09, 2022 @03:31PM (#29867037)
I'm not sure why you're getting downvoted. I often don't notice, and I've never heard anyone comment about those things. Most end users don't even know what those platforms are. Some apps look different than others just like some websites look different than others.
Re:Lessons learned from migrating a native iOS app to Flutter by bartvk on Sunday January 09, 2022 @12:35PM (#29865445)
Or just suffer through.
Re:Lessons learned from migrating a native iOS app to Flutter by tambourine_man on Sunday January 09, 2022 @11:42AM (#29864854)
That’s not how cause and effect work.
Re:Lessons learned from migrating a native iOS app to Flutter by spiderice on Sunday January 09, 2022 @03:26PM (#29866998)
I hate when people bring up VS Code in defense of electron. It is basically the one application built in electron that isn't obviously significantly worse because of it. And it's because it is backed by a trillion dollar company that can afford to invest the time to fix the electron limitations for their project. No other app built in electron is even remotely close to VS Code, which is still noticeably bad in performance when compared to native editors.
Re:Lessons learned from migrating a native iOS app to Flutter by surfmike on Sunday January 09, 2022 @03:50PM (#29867195)
Slack, Spotify, and Obsidian.md are other apps where I couldn’t really care that it’s using electron.
Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Sunday January 09, 2022 @04:07PM (#29867343)
Slack and Spotify are not great. You can tell they're electron. I don't know Obsidian.
Re:Lessons learned from migrating a native iOS app to Flutter by pacomerh on Sunday January 09, 2022 @09:53PM (#29870038)
It's still used by millions, so I would say it's a success
Re:Lessons learned from migrating a native iOS app to Flutter by pjmlp on Monday January 10, 2022 @02:11AM (#29871529)
I use Electron based apps, because they are part of the job, refusing them means looking for another job, which in the current world status is kind of not really what I want to do.

The path to sucess is a very tortuous one full of victims.

Re:Lessons learned from migrating a native iOS app to Flutter by howinteresting on Sunday January 09, 2022 @03:49PM (#29867189)
1password 8 is also very good, being built in Electron with a Rust backend.
Re:Lessons learned from migrating a native iOS app to Flutter by mandrizzle on Sunday January 09, 2022 @05:11PM (#29867841)
Is it better than the native 1password7?
Re:Lessons learned from migrating a native iOS app to Flutter by howinteresting on Monday January 10, 2022 @12:56AM (#29871162)
Personally, yes, I think so.
Re:Lessons learned from migrating a native iOS app to Flutter by pjmlp on Sunday January 09, 2022 @04:41PM (#29867584)
Additionally they offload tons of stuff to native code out of process.
Re:Lessons learned from migrating a native iOS app to Flutter by dmitriid on Sunday January 09, 2022 @01:40PM (#29866073)
> The vast majority of users simply won't notice and not care at all if

Users will of course notice and care. It's just they are not versed in shitty tech to properly articulate what they notice.

So every time a user says "the app is broken/slow/hard to use/loses data/can't update data etc." quite often it's because it's some shitty wrapper on top of a shitty "web app".

Re:Lessons learned from migrating a native iOS app to Flutter by bobbylarrybobby on Sunday January 09, 2022 @05:01PM (#29867756)
It’s not that people like to play the game “spot the non-native app” for fun, but rather that the fact that non-native apps are so easy to spot means they have some obvious deficiencies that become apparent within seconds of use. No one ever said “I can tell this app is non-native because it’s too fast and fluid”.
Re:Lessons learned from migrating a native iOS app to Flutter by robertoandred on Sunday January 09, 2022 @01:02PM (#29865730)
I care that VS Code is non-native. Don't you dare move an open file around the file system outside of VS Code, less it thinks it's been deleted. And it still doesn't have the standard macOS file operations available in the window titlebar.
Re:Lessons learned from migrating a native iOS app to Flutter by krly on Sunday January 09, 2022 @08:44AM (#29863113)
Yep. Building native for both platforms is becoming easier and easier with MVVM, SwiftUI, and Jetpack Compose.
Re:Lessons learned from migrating a native iOS app to Flutter by MrDresden on Sunday January 09, 2022 @09:10AM (#29863346)
After 10+ years of Android development I honestly feel like I am cheating when writing UI code using Compose these days.

Also do Dart/Flutter development along side it and.... they (D/F) just feel so damn verbose and messy by comparison.

edit: I can also mirror what the author of the article mentions. Any update in OS versions or the Flutter framework can seriously cripple some of the packages that you'll need to use in order to make a functioning application. Massive time will be spent hunting down the weirdest issues.

But to be fair, that can also happen on the native side. They are usually just much easier to find and fix.

Re:Lessons learned from migrating a native iOS app to Flutter by _fat_santa on Sunday January 09, 2022 @09:26AM (#29863474)
Yet a shocking number of apps from major companies are all built in this manner. I think the reason it's so damn popular is RN & co. get "close enough" to where many companies can get away with having an cross platform app, especially for React Native apps once you dial everything in and get used to the quirks compared to Native.
Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Sunday January 09, 2022 @11:39AM (#29864817)
True. It’s inexcusable for large global corporations, to be fair. Typical culprits include banks and airlines - those are some of the most awful apps around.
Re:Lessons learned from migrating a native iOS app to Flutter by rvz on Sunday January 09, 2022 @09:40PM (#29869956)
> For serious product it might be actually faster to build native for both platforms.

So Clubhouse 'succeeded' on native this then before every single competitor copied them to the point where everyone has abandoned it? At what cost?

It didn't stop Discord from copying them (which that is in React Native). It also seems that Discord is the prime example that proved how slow Clubhouse was to catch up in the first place without an Android app available at the time for their entire product.

As soon as the Clubhouse Android app released, it was already too late.

Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Monday January 10, 2022 @03:57AM (#29872104)
I don’t think Clubhouse’s fall has anything to do with the tech.
Re:Lessons learned from migrating a native iOS app to Flutter by rvz on Monday January 10, 2022 @06:50AM (#29873364)
It is one of the many reasons why the hype died. [0] Ultimately they could not move quick enough against the competition.

The expectation with apps these days is to release on both platforms from day 1 and Clubhouse was still too busy writing their Android app a year after releasing their iOS app, meaning they were too slow to compete against everyone else.

As soon as that was finished with the invite system removed, everyone already left for Twitter Spaces or Discord Stages.

[0] https://news.ycombinator.com/item?id=25883580

Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Tuesday January 11, 2022 @09:22AM (#29891712)
Honestly, I think the novelty just wore off. I doubt that Clubhouse users moved to other platforms, I think they just mostly stopped using the chatrooms.

After some exploration phase, it seems the main use case settled to just semi-interactive podcasting. Which is something that Twitter did take over. But my guess is this is just some 5% of the initial traffic and even Twitter could live without that probably.

Re:Lessons learned from migrating a native iOS app to Flutter by udbhavs on Sunday January 09, 2022 @12:10PM (#29865178)
For web apps it's quite noticeable (mainly the lack of animations for routing between views), but what are some giveaways for React Native?
Re:Lessons learned from migrating a native iOS app to Flutter by josefrichter on Sunday January 09, 2022 @03:06PM (#29866843)
non-standard UI elements are quite visible - modals, progress indicators, tabs

also everything around navigation is trouble - ios has those large headers that shrink down once you start scrolling. For a long time this was not possible in RN, not sure it finally is.

iOS 15 also uses modals quite a lot more than previous versions. Including modals on top of modals. Also impossible in RN up until recently, don't know current status.

While the navigation-related differences might not be consciously picked up by normal users, it may be subconsciously felt - the app doesn't feel right and user doesn't know why.