Live data from Hacker News

Flutter: UI platform designed for ambient computing

developers.googleblog.com

31–40 of 74 posts

Re: Flutter: UI platform designed for ambient computing

#31
post #27

Ugh, another Flutter media campaign. Why would you ever learn a Google language and use a Google framework, especially a framework that has to emulate all other platform UIs. How long until it's shut down?

For the same reason people learn Android Java, and use Android to publish Android apps.

But this is to prevent having to learn Java to publish Android apps.

Re: Flutter: UI platform designed for ambient computing

#32
post #17
post #10

Earlier quoted context omitted.

This reads like someone who had already made their mind, and looked for anything to support their prior bias... For starters, who said RN is not having work done to run on "TVs, smartwatches, thermostats" and so on? Here's a post about work done for smart TVs from the official RN blog: https://facebook.github.io/react-native/docs/building-for-ap... Second, who said those concerns aren't orthogonal? Given a good modul…

Didn't know about the RN build for TV stuff, will do some research to check if they have the same vision. If they do, back to square one. About your second point, I imagine it could be totally orthogonal. But I am especulating that it won't be. At some point there will be design decisions to be made around trade-offs and I'm sure Google's necessity to push "ambient computing" into the world will prevail over any modu…

>But I am especulating that it won't be. At some point there will be design decisions to be made around trade-offs and I'm sure Google's necessity to push "ambient computing" into the world will prevail over any modularity concerns.

Or "ambient computing" is just marketing fluff, and in the end it will just be the same typical set of libs, and APIs and tools as in RN and other such frameworks, just with some extra UI widgets and libs for smaller devices.

Re: Flutter: UI platform designed for ambient computing

#33
Am I the only one who sees all these Electrons, React Natives, Flutters, etc. as mostly middle-management-pleasing technologies made for crunching cookie-cutter apps with the least amount of outsourced developers as possible?

Whenever I see Slack, Spotify, VS Code, or any other "universal" app, it always strikes me as a completely out of place it looks and behaves, no matter what OS it's running on. Yes, it's relatively easy to make a multiplatform app with these technologies, ticking all the boxes specified by bean-counters, but in the process it usually completely sacrifices all the little details, integrations, patterns, etc. that make platform-specific apps such a pleasure to use. If you're used to apps behaving in a predictable manner, e.g. having similar shortcuts, similar icons having the same meaning (and other way round - similar actions having the same icon), then e.g. seeing a Material Design on macOS is just weird and looks completely out-of-place, not mentioning event UX aspects.

I know it's hard to quantify this in an Excel spreadsheet, but in my opinion following interface guidelines of the target platform and properly using its native technologies makes for a much better user experience (I'm talking here about the basic meaning of this phrase). For example, just look at Google Docs app for iPad - for sure it's written using some Google's weird "universal" technology, but every time Apple announces new iOS (now iPadOS) features, like split screen, multiple windows, etc. it taks Google months to provide support for them. At the same time, developers that follow Apple's guidelines and recommendation, they usually get these features in their apps "for free" or with relatively small amounts of work required.

I'm simplifying the whole situation here, of course, but I think trend of making all apps in Flutter et al. might be good for some people, but end-users are usually not one of them.

Re: Flutter: UI platform designed for ambient computing

#34
post #14
post #6

This is what I understood from all the hubbub around Fuchsia with Flutter powering the interfaces.

It's not called out in this blog post, but back at Google I/O earlier this year, they did say Fuchsia is powering the Nest Hub and Nest Hub Max. So those smart displays Google is making are Fuchsia + Flutter.

Actually, both Nest Hubs run on the Chromecast-platform, not on Fuchsia[1]. However their UI is actually made with Flutter[2]. However, both devices (as Sherlock and Astro respectively) exist in the Fuchsia repo and so it's safe to assume that they're developing Fuchsia on them and since Flutter is multi-platform they can replace the OS underneath via software update, if they chose to.

[1] https://www.reddit.com/r/Fuchsia/comments/blyutb/the_nest_hu... (See top comment)

[2] https://twitter.com/timsneath/status/1125868510645669888?s=2...

Re: Flutter: UI platform designed for ambient computing

#35

Wow, talk about burying the lede. I'm not sure how I feel about Google's so-called "ambient computing" idea that they were all about at this year's Google I/O, but Flutter being championed for desktop and web are huge! Does this mean the end of Electron, finally? They say it runs on macOS, I hope they get to Windows and Linux soon. I built a little Android/iOS app in Flutter and it was a real delight. I didn't especi…

+1 for flutter being really fun to work with. Its the most fun I have ever had working on mobile.

Re: Flutter: UI platform designed for ambient computing

#36

Ugh, another Flutter media campaign. Why would you ever learn a Google language and use a Google framework, especially a framework that has to emulate all other platform UIs. How long until it's shut down?

Flutter has been introduced in 2015 while Dart has been around since 2011. Since Google seems to have bold plans for their Fuchsia operating system to replace Linux for mobile, laptop and smart home devices and is using the framework for actual devices they already ship to customers, I'd say it's safe to assume that Flutter and Dart won't be abandoned anytime soon.

Re: Flutter: UI platform designed for ambient computing

#37
post #20

What are people's impression of Dart as a language, compared to e.g. Typescript? Reviews so far seems lackluster. Does Dart have anything that sets it apart from JS, like immutable data structures out of the box? How's the support for functional programming, e.g. first order functions, closures, higher order functions like map, filter, reduce, etc? How advanced is the typing system, are we talking Java level or signi…

They're inherently similar. Both highly verbose and quite object oriented. Dart is less flexible and arguably less advanced, but unlike Typescript, it's sound (as in type soundness). For a very specific target (mobile) being a bit less advanced is completely fine, it has all the abstractions needed for mobile development.

Immutability is leveraged extensively in Flutter. That said, functional programming is a struggle with Dart. Although it's not particularly well suited to Typescript either. Some specific things like async stuff are better in Dart/Flutter. As Dart adheres more strongly to classes/inheritance its facilities for that are more extensive.

Dart is perhaps more Java-ish while Typescript is more C#-ish, if that makes sense.

Flutter's strength is certainly not the language, it's the SDK/platform. It's miles ahead React Native in my experience.

Take a look at some samples to get a grasp on how it looks like: https://dart.dev/guides/language/language-tour

Re: Flutter: UI platform designed for ambient computing

#38
post #20

What are people's impression of Dart as a language, compared to e.g. Typescript? Reviews so far seems lackluster. Does Dart have anything that sets it apart from JS, like immutable data structures out of the box? How's the support for functional programming, e.g. first order functions, closures, higher order functions like map, filter, reduce, etc? How advanced is the typing system, are we talking Java level or signi…

It's been ok for me, feels a bit half-baked in many places (i.e. enums, serialization, constructors, collection manipulation), especially coming from a well thought-out language like Swift or Kotlin. Apparently null safety and extensions are coming which is good. On the other hand it's surprisingly straightforward and simple, more so then Typescript. It has basic OOP, type system, generics, closures & co, all the things you know and need, nothing too fancy, just a good subset for productivity.

The real magic is Flutter though, and outside of that, not sure if Dart has many applications. Dart on Node could be a thing, but seems like more of a hassle right now.

Re: Flutter: UI platform designed for ambient computing

#39
post #20

What are people's impression of Dart as a language, compared to e.g. Typescript? Reviews so far seems lackluster. Does Dart have anything that sets it apart from JS, like immutable data structures out of the box? How's the support for functional programming, e.g. first order functions, closures, higher order functions like map, filter, reduce, etc? How advanced is the typing system, are we talking Java level or signi…

As a programmer with experience in C++, Java, Ruby, and Javascript, and someone who just wants to get things done, I love Dart.

In its syntax, its very similar to classic languages like C++ and Java. It's very easy to pass functions around, like Javascript/Ruby. I didn't really need to 'learn' it, it all seemed familiar from the beginning. It also has some nice little shortcuts, like null-safe member function calls.

As for the typing system, it is definitely compiled/typed, which I like, but it does not feel overbearing. I find it to be in a nice sweet spot between hard to refactor/you need unit tests for everything (ruby/javascript) and hard/wordy to write because the type system is too strict (C++/Java).

It also has a nice packaging system (like ruby/javascript), and it has been thoughtful about how you reference packages.

Overall, I like it a lot.

Re: Flutter: UI platform designed for ambient computing

#40
post #14
post #6

This is what I understood from all the hubbub around Fuchsia with Flutter powering the interfaces.

It's not called out in this blog post, but back at Google I/O earlier this year, they did say Fuchsia is powering the Nest Hub and Nest Hub Max. So those smart displays Google is making are Fuchsia + Flutter.

The Nest Hub has one of the laggiest touchscreens I have ever had the displeasure of using. Not a good showcase if you ask me.
Post reply on HN