Live data from Hacker News

Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

developers.googleblog.com

371–380 of 467 posts

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#371
post #367

Earlier quoted context omitted.

Isn’t that just an AST? That still has to be parsed and compiled. It just makes parsing a bit faster.

From the README: > Current advanced prototypes already show JS parsing improvements of 30%-50% on all the most common frameworks, just by changing the format, and we believe that we can increase this improvement much further. 30% is more than a bit :).

I’ve worked professionally on pre-parsing and 30% is not a great result.

And it doesn’t help the time spent on compiling, so it’s saved not a lot of not a lot. Doesn’t really solve the problem.

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#372

Earlier quoted context omitted.

Flash was fast. Much faster than JavaScript+DOM at the time. In fact, it was only within the last few years that browser JavaScript and rendering engines became more performant.

Which bit was fast? My wife's MacBook sounded like a jet engine whenever she would play the Facebook flash-based Scrabble. Eventually the machine died of fan failure and I had to spend an entire afternoon doing brain surgery on it. I wasn't surprised when Jobs subsequently banned it from the iPhone!

> Which bit was fast?

The performance. The comparison macspoofing made was with JavaScript+DOM, not with native applications. I wrote games in Flash and played around with JavaScript+Canvas back when HTML5 was still fresh and Flash was still king.

The difference in performance was huge and Flash was faster for years. You'd hear people saying that JavaScript+Canvas was a valid replacement, sure, but those people had absolutely zero idea what they were talking about (especially when they said such stuff when there wasn't even a cross platform working sound API).

Things changed over the last years, sure. But do not rewrite history, JavaScript+Canvas sucked for a long time compared to Flash (and in some areas, like distribution, still sucks - a single compressed SWF file with all your resources is still nicer for distributing games than a bunch of HTML and whatever else files).

FWIW i always maintained that Java was miles ahead any of the above when it came to games (especially about performance), but Sun killed applets brutally with its awful startup times and bloated VMs. Then Oracle came along and just abandoned the whole thing.

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#373

Earlier quoted context omitted.

Outside of a select few cities, getting anything more than 100 mbps down is literally impossible unless you have the budget to pay a company to run fiber to your home (at least tens or hundreds of thousands). And outside of major cities, 10 mbps might be the best you can get. Not to mention there are a thousand situations even inside of the major cities where a few mbps (if that) is all you can muster. I for one hate…

Even in London I think some places only get 10Mbps

My old place was getting 12-16Mbps over ADSL despite being only 400yds from the exchange. Fibre improved that slightly to 20-25Mbps.

(New place has 1Gbps fibre - average is about 300-350Mbps during peak times, 800Mbps+ in quiet times.)

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#374

Earlier quoted context omitted.

Even in London I think some places only get 10Mbps

I'm getting 32 mbps from BT for £52.49. My O2 mobile internet hardly works at all. London really has terrible internet infrastructure. I wouldn't be surprised at all if some people got no more than 10 mbps as you say.

> London really has terrible internet infrastructure.

I think it probably has average infrastructure shared over too many connections. If I do 4G speed tests up north, it's always way faster but there's also way fewer people trying to use it concurrently...

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#375

Earlier quoted context omitted.

If i understood it correctly, React Native basically gives you a JS runtime environment that handles communication with native APIs of the system and is shipped with your app. Flutter (and Dart) will transpile into native code and compile natively for your platform. So on React Native you will have that abstraction layer add runtime latency and package size of your app, while Flutter (Dart) really outputs native code…

Package size for Flutter apps is a lot larger than RN, even the RN Android build that ships it’s own JS runtime. There are complaints everywhere of simple apps reaching 100MB size. As for runtime latency, I’ve recently worked on a RN app that outperformed its native sibling. Looking forward to the Fabric release.

Unless you're importing a ridiculous amount of packages and assets, you'd never hit 100MB with simple apps, that's just people looking at debug mode and thinking that it's the final app size. Simple apps can easily be under 8MB once compiled.

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#376

This is the example flutter app for the web - https://www.nytimes.com/games/prototype/kenken#/ This is flash. You can't do anything in it that fills like the web - no copy paste, right clicking causes things to happen. I don't expect games like this to have links and proper bookmarkable urls, but I doubt it'll work as expected if it did. This is the epitome of the problem with flutter - it re-implements the UI, creat…

> This is flash This was exactly what I thought when reading about this. I'm pretty sure the one codebase for multiple plattforms just won't work. An app has it advantages so has a website. Mixing those up leads to something that just combines the disadvantages of both. And this my main critic on Flutter: It just doesn't feel good. Maybe it does on Android but it surely doesn't on iOS or on the Web. I would rather pr…

> It just doesn't feel good.

This was my thought exactly. It's not that it feels different, but that it's not an improvement.

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#377
post #108

Earlier quoted context omitted.

(I'm the Flutter TL.) According to today's benchmark numbers, we're at 4414KB on Android and 8572KB on iOS (IIRC, iOS encrypts before compressing so it can't get as good a compression). This is for our Hello World test app ( https://github.com/flutter/flutter/blob/master/examples/hell... ), which is more or less the smallest app you can imagine building with Flutter unless you bypass the entire framework and only use…

Fellow Googler here. I think it’s best to report those numbers with the appropriate SI prefix: 4.414 MB and 8.572 MB. Reporting numbers as “X thousand kilobytes” makes it harder to grok the real scale.

Also please be aware not all locals use "." as thousands separator. About half of the world [0], including we here in Germany, actually uses the dot as decimal separator. Thus your number "4.414 MB" actually looks confusingly close like ~4.41 GB to me on first sight. An easy way to avoid this is to not rounding to three digits after your only dot or comma.

[0] https://en.wikipedia.org/wiki/Decimal_separator#Arabic_numer...

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#378
post #372

Earlier quoted context omitted.

Which bit was fast? My wife's MacBook sounded like a jet engine whenever she would play the Facebook flash-based Scrabble. Eventually the machine died of fan failure and I had to spend an entire afternoon doing brain surgery on it. I wasn't surprised when Jobs subsequently banned it from the iPhone!

> Which bit was fast? The performance. The comparison macspoofing made was with JavaScript+DOM, not with native applications. I wrote games in Flash and played around with JavaScript+Canvas back when HTML5 was still fresh and Flash was still king. The difference in performance was huge and Flash was faster for years . You'd hear people saying that JavaScript+Canvas was a valid replacement, sure, but those people had…

All good points. But I'm still struggling with the idea of using the word "fast" to describe a technology that brought a 2GHz GPU-accelerated machine to its knees with Scrabble. Perhaps "sucked less than JavaScript"?

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#379

Earlier quoted context omitted.

You don't agree that you need to provide a way for your customers to replace the Qt libraries? (because that is a fact of LGPL3, read the anti tivoization clause). Do you see any possible security problems with the above? Because in reality it means that you give your customers the possibility to run their own code on your hardware. That is a problem for many companies and products.

>You are forced to help customers replace the Qt libraries in your product. Depends on what you mean by 'help'. You are forced to give the opportunity for them to do the work if they need it. If you have statically linked files, it can't be done by accident. > Do you see any possible security problems with the above? No I don't. When I provide completely closed binaries for my customers, they can hack with the binari…

I think I'm clearly stating my assumptions. GPL3 and LGPL3 requires you to enable the user to replace the GPL/LGPL3 code on your device with the users own version of said code. It does not matter if you link statically.

Now, it would be possible let the user do this and not let it be a problem for your product (in terms of security, reverse engineering, ip theft, etc) but it is more and harder work.

I have used both older version of Qt (LGPL2) without licensing and newer (LGPL3) with licensing in commercial products. The former was not a problem. But using LGPL3 Qt without licensing in a commercial embedded product is a headache (if you are concerned about the problems it might bring), according to me.

Hence, I wish Flutter all the best.

Re: Flutter: a Portable UI Framework for Mobile, Web, Embedded, and Desktop

#380

This is the example flutter app for the web - https://www.nytimes.com/games/prototype/kenken#/ This is flash. You can't do anything in it that fills like the web - no copy paste, right clicking causes things to happen. I don't expect games like this to have links and proper bookmarkable urls, but I doubt it'll work as expected if it did. This is the epitome of the problem with flutter - it re-implements the UI, creat…

This is plain javascript.

  
Post reply on HN