6 ms·
This is what Flutter on the web is, by the way. You can try it out here: https://gallery.flutter.dev/#/ https://gallery.flutter.dev/#/ and marvel at the impos
by stefan_ 5y ago
This is what Flutter on the web is, by the way. You can try it out here:
https://gallery.flutter.dev/#/ https://gallery.flutter.dev/#/
and marvel at the impossible to select text, one of the many affordances violently excised here.
If it wasn't still incredibly slow even on a cutting-edge Zen3, Nvidia 3070 system they might almost be on to something here.
- ape4 5y agoA dystopia. You can't control-F in the page. Can't copy and paste a word you don't know into a translator or dictionary. Can't share text unofficially - like copy a sentence into a email, etc.
- DrJokepu 5y agoAlso, you know, accessibility. This could be a real serious problem for people with disabilities.
- bryanrasmussen 5y agoI'm hoping for a revamped EU accessibility act https://ec.europa.eu/social/main.jsp?catId=1202 https://ec.europa.eu/social/main.jsp?catId=1202 that also covers document and office applications, and with GDPR sized fines.
- Silhouette 5y agoWe have to be careful not to throw the baby out with the bathwater here, though. Obviously accessibility is an important issue for both commercial and ethical reasons, but if you're talking about writing laws and severe penalties for breaking them then you will always have to choose what minimum standards you will always require and then accept that it might be unreasonable for a software developer to go further. For example, suppose the entire purpose of a certain office application is to draw some clever visualisation that helps the office workers to understand complex relationships in their business data. Maybe that presentation style has been chosen based on years of experience and saves a lot of time and avoids a lot of mistakes compared to a simple text report or table of figures. However, maybe it also doesn't work for someone whose vision is too limited to usefully see or interact with the visualisation. Perhaps you could present the same data and relationships in a different way, a format that would be more amenable to sound- or touch-based interfaces for those with severely limited or no vision. In reality, that might mean writing a second entirely separate application, one that might cost more than the original to implement and support, for an audience that will usually be very small and often empty. So where should the line be drawn? In an ideal world we want to be as inclusive as possible regardless of anyone's individual limitations, but we also want to provide the most effective presentation possible to those who don't have the same limitations. In general doing both might be prohibitively expensive, so how do you make realistic, ethical decisions in this space, and given that every software application is different, how do you codify the standards you want to make mandatory for the accessibility reasons?
- anticensor 5y agoThe website says: Cannot read property 'match' of undefined TypeError: Cannot read property 'match' of undefined at /var/app/current/routes/avs.js:44:29 at Layer.handle [as handle_request] (/var/app/current/node_modules/express/lib/router/layer.js:95:5) at next (/var/app/current/node_modules/express/lib/router/route.js:137:13) at Route.dispatch (/var/app/current/node_modules/express/lib/router/route.js:112:3) at Layer.handle [as handle_request] (/var/app/current/node_modules/express/lib/router/layer.js:95:5) at /var/app/current/node_modules/express/lib/router/index.js:281:22 at param (/var/app/current/node_modules/express/lib/router/index.js:354:14) at param (/var/app/current/node_modules/express/lib/router/index.js:365:14) at param (/var/app/current/node_modules/express/lib/router/index.js:365:14) at Function.process_params (/var/app/current/node_modules/express/lib/router/index.js:410:3)
- mumblemumble 5y agoThis is 100% the reason why I decided not to use Flutter back when I was shopping. It probably would have reduced my developer effort considerably compared to basically every other option that made it to my short list, but I can't in good conscience build something that isn't accessible.
- brabel 5y agoFlutter claims to be fully accessible: https://flutter.dev/docs/development/accessibility-and-localization/accessibility https://flutter.dev/docs/development/accessibility-and-local... Did you actually try it?
- mumblemumble 5y agoNo, I just looked at the documentation and saw that it isn't supported on all the platforms I'd be targeting. For example, that page you link is specific to iOS and Android targets. Nary a mention of what to do when you're targeting the Web. But it's also, at least as of when I did my comparison, explicitly not supported on at least some desktop targets.
- blackbrokkoli 5y agoThank you for saying "claims to". Copy pasting a response I made elsewhere: This is making a mockery of accessibility. It's the equivalent of having a company that actively discriminates against everyone not passing a internally developed test to check whether you are a "neurotypical" and then respond to criticism by pointing at the wheelchair ramp you installed on one of your entrances. If I can't copy paste words from your websites to put them into a translator, if I can only use your website when I use one of the two corporate-affiliate-selected screen readers (not even platform-agnostic ones), when I can't look at your website from anything that does not have 4+ cores and a 4G or better connection...saying accessiblity is a "first class citizen" or even citizen at all is laughable at best.
- brabel 5y agoI said "claims to" because I don't know how I can verify if it is. The other person responding to me correctly mention how they suggest tools to scan for accessibility issues on iOS and Android, but they don't say how to do that on the web... have you managed to somehow figure out what is not currently working, exactly? Regarding performance: Chrome uses Skia to render the DOM, why do you think rendering Flutter, also based on Skia, should be so much worse?
- calderwoodra 5y agoAccessibility is a first class citizen in flutter. https://flutter.dev/docs/development/accessibility-and-localization/accessibility https://flutter.dev/docs/development/accessibility-and-local...
- zffr 5y agoI wish that page mentioned how accessibility works for Flutter websites. Seems to only mention Android and iOS.
- blackbrokkoli 5y agoThis is making a mockery of accessibility. It's the equivalent of having a company that actively discriminates against everyone not passing a internally developed test to check whether you are a "neurotypical" and then respond to criticism by pointing at the wheelchair ramp you installed on one of your entrances. If I can't copy paste words from your websites to put them into a translator, if I can only use your website when I use one of the two corporate-affiliate-selected screen readers (not even platform-agnostic ones), when I can't look at your website from anything that does not have 4+ cores and a 4G or better connection...saying accessiblity is a "first class citizen" or even citizen at all is laughable at best.
- threatofrain 5y agoYou're talking about very different issues of accessibility, one of which is the financial accessibility of client technology and reliable web connection. That is attacked through very different means. For example, FB being free and ad funded addresses that issue; but this is a business model and not a technological standard. Society subsidizing technology is another possibility. But these very serious issues of access and the solutions to negotiate with them are very different from purely technical solutions to access.
- wizzwizz4 5y agoHyperText Markup Language is accessible, doesn't require a powerful computer, and can be copy-pasted into a translator. If your website is unreadable in view-source:, it's probably inaccessible in some way. It's not hard to make an accessible website. If it's hard to make that accessible website look the way you want? Tough luck; hire a competent web designer, or scale back your artistic vision, because you sure ain't sacrificing the ability for people to actually use your website for some pretty colours, are you now?
- bluetwo 5y agoDue to Section 508, this sounds like it would make Google Docs unsuitable for government work.
- fulafel 5y agoThe copy and paste problem is sidestepped in android by the os native ocr, it might become common elsewhere too.
- fmakunbound 5y agoI can’t tell if you’re being facetious. Text is rendered to a canvas frame buffer and then the solution to text selection involves OCR?
- davidgay 5y agoAmusingly, the Amiga lacked cut&paste support in most applications, so someone developed a tool that did precisely that. Leading to questions like this: http://forum.amiga.org/index.php?topic=10580.0 http://forum.amiga.org/index.php?topic=10580.0
- fulafel 5y agoCab I be facetious and factually describe the current state of affairs simultaneously?
- wizzwizz4 5y agoI mean, that's how MacPaint was going to work. (They eventually ditched “edit text once it's written” entirely, for fear that people would use MacPaint for word processing, but the code was all written.)
- eitland 5y agoSo basically they are recreating the problems from Flash in 2021, but now using web standards ;-) ? Here's me almost hoping that ADA lawyers will have many field days with this tech. Edit: since this time there is no good excuse for it.
- FlyingSnake 5y agoAdd to that, a11y as a 2nd class citizen.
- slver 5y agoDo you honestly believe they won’t implement copying a sentence.
- nofunsir 5y agoI honestly believe they WILL implement copy paste... ... along with tracking exactly what you copied, when, where you hovered your mouse, inserting all sorts of features into your copied piece of “plain text” ... along with the ability to force-turn off copying from server side whenever it benefits them. You WILL use ChromeOS (by another name) and you WILL like it
- slver 5y agoAll of this is done without canvas. Maybe less drama would help.
- nofunsir 5y ago> All of this is done without canvas. Currently it’s pretty easy to get around such blocks. Compare with how hard it is to get around modern, proper DRM. I have faith this implementation will be modern and proper, as the fate of the ad industry and those who rely on it, rely on it.
- deleted 5y ago[deleted]
- anthropodie 5y agoFlutter for web is not ready and flutter devs seriously should remove those demos because it's ruining reputation of Flutter for Android, iOS and Desktop which is absolutely a delight to work with. I never developed apps for mobile being a backend developer but now I have developed few in record time. Flutter for mobile is amazing and it's going to change the game. I am not really sure about Flutter for web though.
- amelius 5y agoIt's basically Flash [1]. What's old is new again. [1] https://en.wikipedia.org/wiki/Adobe_Flash https://en.wikipedia.org/wiki/Adobe_Flash
- NoGravitas 5y agoThey have played us for absolute fools.
- birktj 5y agoThat is absolutely horrible. I am only waiting for the day when people start making desktop apps using electron + Flutter on the web.
- zelphirkalt 5y agoRight now probably some people seeing this on HN will be thinking about it.
- anthropodie 5y agoFlutter for web I don't know where it will be in 5 years but flutter for desktop is going to eat electron apps for sure.
- uneekname 5y agoOh boy, I can't even scroll smoothly through these pages...
- mihcsab 5y agoIt`s not slow on an old intel i3 laptop and on a motorola one phone. I keep seeing these comments about flutter web with different examples, they are never slow on my old devices. Also you can make the text selectable if you want to.
- ehnto 5y agoWhich is itself a commentary on the immaturity of the technology. I certainly wouldn't run it in production if I can't trust that all devices of a certain performance level can run it. Random performance issues on top-tier hardware is going to be a non-starter.
- barbecue_sauce 5y agoAs a user or as a developer?
- mihcsab 5y agoDeveloper. Texts aren't selectable on mobile by default and they want the web version to act the same.
- aardvarkr 5y agoJust loaded it and it ran awfully. We all have anecdotal experiences and it doesn’t make yours any less valid than mine but it does point out that they don’t show much besides what you personally experienced.
- mihcsab 5y agowdym by awfully? This makes me crazy, the gallery loaded instanltly, every item I click loads instantly, no problem with scrolling. There is a five second loading delay on the phone when the app loads, the items after that open just as fast as on the laptop. The only thing I saw that didn'r run smoothly on my weak phone is the flutter plasma demo[0], but it runs without any tearing on the laptop. [0] https://flutterplasma.dev/ https://flutterplasma.dev/
- ehnto 5y agoUnselectable text, and links that are actually javascript so you can't preview them, or open them in new tabs. But who are we kidding, the web is javascript all the way down now.
- clon 5y agoIt refreshes dormant memories of what Flash used to feel like. For me the balance is still the same. Fine for highly interactive things such as games. For everything else, ugh...
- mattgreenrocks 5y agoI had these exact complaints about web apps many years ago, and I was dead wrong. Nobody cared that web apps were slow, had/has horrible UX compared to native apps, and feel janky by comparison. These demos elicit similar feelings. Now, they're not as fast as I like, but they feel better than most webapps already. (It reminds me of Flash, actually.) If the Flutter dev experience is good enough, this will eat traditional web apps slowly. In a way, the web was designed for this sort of scenario: a delivery mechanism agnostic of the client implementation. We've gone from pushing server-generated HTML to megabytes of JS + SPAs, and now a WASM/Canvas hybrid seems inevitable. It all comes down to how well these perform on mobile devices, what the dev experience is like, and how the end product feels. There's still a lot up in the air, but, I'm honestly impressed with the progress shown by Flutter here. There's still a host of considerations unaddressed (including accessibility) that I hope they have an approach for.
- mrighele 5y agoDespite their shortcomings webapps won because they had a number of advantages that native lacked, most of all software distribution. What has flutter to offer that a regular webapp lacks? (not performance, it seems)
- morelisp 5y agoResume lines.
- lazysheepherd 5y agoThis is correct, I am afraid.
- brabel 5y agoThe fact that it (the same code base with minor changes) runs on desktop and mobile platforms?
- mattgreenrocks 5y ago
- dublinben 5y agoIt's Flash websites all over again!
- agumonkey 5y agoAnd I thought Gemini was not polished enough. It might be a beacon in this potential darkness
- fmakunbound 5y agoWow, that’s truly a masterpiece in awful. Are they also rendering everything to canvas and then reinventing layouts, controls, etc. to get it so laggy?
- calderwoodra 5y agoThe demo doesn't have it, but they did fix the selectable text issue, just need to wrap your text in a SelectableText widget.
- eitland 5y agoBut this means the default is for text to be unselectable. Which clearly says all I need to know about it :-/
- calderwoodra 5y agoYep, I agree. Even though it's normal on mobile devices, it's weird behavior for the web. Given the way flutter is designed (sharable code base, eVeRyThInG iS a WiDgEt), I don't see an easy and obvious solution here.
- dcchambers 5y agoYikes. How does the inability to select or search text pass even the most basic of UI/UX and accessibility guidelines?
- selfhoster11 5y agoWeb UIs are already an incredibly cut-down implementation of a real OS GUI. I'm not looking forward to something even worse than that.
- gentleman11 5y agoAs a former angularjs user, I’m not keen to learn another framework that will get abandoned or replaced in a few years
- brabel 5y agoI have to agree, it runs really slowly (really struggles on scrolling) on my Macbook Air from last year, which normally runs heavy JS sites just fine. EDIT: to be fair, it runs quite smoothly on Safari and Google Chrome... only Firefox seems to have trouble with Flutter on the Web for some reason.
- WD-42 5y agoI didn't believe you at first, but then I gave it a try. Yes, they actually built an email client from which you cannot copy text: https://gallery.flutter.dev/#/reply https://gallery.flutter.dev/#/reply
- p_j_w 5y agoThat's a demo for a gallery, not an e-mail client.
- nindalf 5y agoOr we could take a look at the example Google Doc linked in TFA - https://docs.google.com/document/d/1N1XaAI4ZlCUHNWJBXJUBFjxSTlsD5XctCz6LB3Calcg/preview https://docs.google.com/document/d/1N1XaAI4ZlCUHNWJBXJUBFjxS... Seems like it's fast (on my machine at least), can select text and Ctrl+F works. I totally understand the urge to complain and doom say, but could we at least stick to the example at hand? I'm sure if you went through this doc you'd find things to complain about. That would be more relevant to the discussion.
- capitainenemo 5y agoAfter trying it for a few seconds, noticed X select-to-copy was broken, as well as the browser spellcheck feature that my daughter relies on heavily in Google Docs (where a text area can be spellchecked in french or english depending on the active spellcheck). I didn't spend more than a few seconds on it, but those were the features I immediately noticed. This is going to be a painful transition for us since she uses both of those a great deal with her schoolwork. Since the doc was read-only, I couldn't test IME/XCompose - hopefully those work at least.
- nindalf 5y agoAnd they speak about plugins being broken in TFA. I'm not surprised that your daughter's plugin doesn't work today, because they announced the change today. Presumably, those plugins can be rewritten to adapt to canvas. Just give them time.
- capitainenemo 5y agoWell, I was referring to the built-in browser spellcheck and the X windows copy/paste. Both of those probably rely more heavily on normal native widgets. Not saying it is impossible of course. The X windows copy/paste could be done using the invisible text approach firefox uses in PDF.js. That would also help with accessibility somewhat. But I'm not sure how they could integrate with browser spellcheck without basically going back to a less canvas-y approach. Invisible text areas surely would have layout problems aligning with the rendered font. But, I guess we'll see. I'm guessing Linux users are not a major factor in their decisions though. Firefox users probably even less so.