Too bad Android diverged too far from the rest of the Linux world and isn't using Wayland.
Graphical User Interface Using Flutter in Embedded Systems [pdf]
21–30 of 202 posts
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#22Great presentation. Also, really not surprising at all. Anyone that has tried getting a sample Flutter app running on a desktop will quickly find that it's shockingly easy and on almost all platforms will "just work" despite being in Alpha. The development experience in Flutter is great too. Anything that can help with that when developing for embedded systems is likely very tempting. I am curious why they went with…
Weston has better support for some things embedded developers care about, e.g. fallback codepaths for multi-plane buffer formats doing the blend in a shader, support for certain deprecated protocols (e.g. ivi-shell) and partial support for using hardware overlay planes for power-conscious compositing. It also doesn't have any of the Gnome dependencies. These are blanket statements; the devil is very often deep in the…
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#23Too bad Android diverged too far from the rest of the Linux world and isn't using Wayland.
What is it using?
https://source.android.com/devices/graphics/surfaceflinger-w...
That's something I wish they'd replaced with Wayland these days for better affinity with the rest of Linux.
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#24Somewhat of an aside, since this article is about Flutter on embedded systems where React Native isn't even a consideration but... I've used both Flutter and React Native. Hands down, Flutter is the more enjoyable experience. Everything from the language, to the toolkit, to the IDE, to the final product, is just BETTER. React Native is a bloated, hacky, slow, garbage pile by comparison.
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#25It'll be interesting to see how much Wayland can remain lighter weight once it has accounted for all the "not working right" cases.
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#26Earlier quoted context omitted.
What is it using?
Its own compositing stack. SurfaceFlinger: https://source.android.com/devices/graphics/surfaceflinger-w... That's something I wish they'd replaced with Wayland these days for better affinity with the rest of Linux.
You might like GNU/Linux phones: Librem 5 and Pinephone.
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#27Pros:
- The toolkit feels fairly mature and not too hard to parse. I think there's a lot of "this class works with defaults and breaks otherwise" feeling, though the core components are robust enough that this isn't a huge concern.
- It was super easy to build for Android, iOS, and Mac all at the same time. Everything Just Worked (so far).
- It was very performant
- Very easy to add your own painting code if you wanted a custom component.
- The debug view is so so useful for figuring out painting and layout issues.
Cons: - I didn't understand Futures very well (and honestly still don't); this might be an issue with people working with modern Python/JavaScript/whatever.
- Because of the above, interacting with a database / JSON on disk felt a little contrived. In particular JSON parsing felt very non-obvious, even though it feels like at this point is should be a first-class feature.
- It still produced relatively fat binaries, though not sure how much of that was debug/release mode.
- My computer ran hot while running Flutter, though not sure how much of that is debug/release mode.
Overall I'm very very happy with it. It was the kind of project where when I had time to work on it, after work, I had a list of things I wanted to do, and I could quickly check off feature after feature instead of fighting the system. That made me add more desired features, etc., but very enjoyable.Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#281. Dart is garbage-collected; and
2. Dart has optional typing, which is to say it supports type hints but is essentially dynamically rather than statically typed.
This presentation claims low overhead so I'm open to be proven wrong here. I wonder how much of that (if true) is Flutter and how much is Wayland (over X). I'd really like to see some nontrivial apps in this, React Native, Qt, GTK and the like.
But GC isn't just about overhead (although that is a concern). It's about predictability of performance. It's about tuning the VM and the characteristics of STW GC pauses (if any).
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#29Somewhat of an aside, since this article is about Flutter on embedded systems where React Native isn't even a consideration but... I've used both Flutter and React Native. Hands down, Flutter is the more enjoyable experience. Everything from the language, to the toolkit, to the IDE, to the final product, is just BETTER. React Native is a bloated, hacky, slow, garbage pile by comparison.
But I also know React Native is hacky, slow, constantly has changes and breakages, sometimes stupid styling things are nearly impossible, etc. And if Flutter is as much better as people say, then I'd love to try it. Any plusses/minuses I should know before diving in?
Re: Graphical User Interface Using Flutter in Embedded Systems [pdf]
#30Somewhat of an aside, since this article is about Flutter on embedded systems where React Native isn't even a consideration but... I've used both Flutter and React Native. Hands down, Flutter is the more enjoyable experience. Everything from the language, to the toolkit, to the IDE, to the final product, is just BETTER. React Native is a bloated, hacky, slow, garbage pile by comparison.
I see so many rave reviews.
But I personally tried it and strongly disliked it. The toolkit and Android Studio run horribly slow - like really slow. And the output is basically this generation's flash. Some of the samples I tried on their gallery are mediocre. Very slight, but noticeable sluggishness. Some are just terrible; the 2d transformations moves at like 7fps. Plus there are so many other small things like issues with scrollbars, things that take time to sort out that native and web have had time to figure out. Also dart is a real PITA coming from typescripts which is basically c#.
Actually, the issue with dart is it's own whole thing. It was meant to be an alternative to js, but not ts has taken over with much greater success. I am not talking about aot or stuff like that - just the dev experience for app dev. Now it's in this really weird spot.
I just don't know. I would honestly have thought that flutter is dead in the water - every personal experience I've had with it has been bad, there are objective facts about it that are bad, and yet so many people love it.