Live data from Hacker News

Prime Video Uses WebAssembly

amazon.science

131–140 of 254 posts

Re: Prime Video Uses WebAssembly

#131
post #61

Earlier quoted context omitted.

Frontend engineering is a thing because of the accidental complexity of a massive software stack that's evolved by accretion and gone through fad after fad after fad. I'm not looking down on frontend engineers, but I don't believe right-to-left languages or focus order inevitably leads to hundreds of thousands of lines of code or 50+ MB binaries.

Where do you think all that code lives, then? The support for dark mode, the ability to look at the pixel data of an image so that you can display text with the right color on top of it to have high enough contrast, the subtle animation when you tab between elements in a scrollable grid, the annotations for accessibility, the code that makes drag and drop work like you expect... As much as you don't think it is "hund…

Hey, I share your passion for human interfaces - huge kudos to you. I built the main interface for the redesigned Amazon Photos iOS app and went through a lot of the things you mentioned - totally agree that it pays off. If you ever want to chat over coffee my email is johnanthony.dev@gmail.com

Re: Prime Video Uses WebAssembly

#132

Personally, to me , whenever I read these stories about how Amazon is doing this novel use of WebAssembly, or how Uber is doing ludicrous engineering effort to keep their React-based app under 300MB for the App Store, I can't help but think: "Man, that's an awful lot of work to avoid writing a native app."

I hope native apps die. Most companies won't put in the level of effort into their engineering that the Chrome/Firefox teams do - specifically, they're not going to take security as seriously.

Agreed! Why write a native app when you can just use Babel to transpile to Google Sheets formulas? Sure it doesn’t support threading but modern devices are so fast nowadays it doesn’t even matter.

Re: Prime Video Uses WebAssembly

#133

I really wouldn't use Amazon Prime as a shining example of WA.

why not? so they aren't using webassembly correctly? who is a better example and why?

It is painfully slow comparing with its competitors, and for no good reason to be so.

Overall it has the shittiest experience, also thanks to the monstrosity that is X-ray.

At the best, this article can only say Prime Video would be more shitty without WASM maybe?

Re: Prime Video Uses WebAssembly

#134
post #61

Earlier quoted context omitted.

Frontend engineering is a thing because of the accidental complexity of a massive software stack that's evolved by accretion and gone through fad after fad after fad. I'm not looking down on frontend engineers, but I don't believe right-to-left languages or focus order inevitably leads to hundreds of thousands of lines of code or 50+ MB binaries.

This comes off incredibly naive of FE engineering. Buttons and Doodads? sigh. A significant factor as to why Apple has succeeded the past 2 decades is due to the design of their products - from the sleek aluminum bodies of their hardware to the UI/UX of their operating systems. Unless you want your UI to look like something out of 1995, you're going to have to make it look good. Making it look good will require a dec…

I, for one, would love if UIs looked like it's 1995 again. Imagine the crispness, everything is fast, responsive and written in sensible languages. A simpler, and better time.

Re: Prime Video Uses WebAssembly

#135
> Prime Video

> xyz [4K/UHD]

4K is not available when using a computer

> HD is not available because you're not using Windows

when using Windows

> HD is not available because you don't have HDCP

Graphics driver begs to differ.

Prime SD is usually somewhere between 240p and 320p, HD looks like a decently encoded 720p file. Never seen it but I'm guessing 4K might actually approach the quality of a 2007 Blu-Ray.

Re: Prime Video Uses WebAssembly

#136

Earlier quoted context omitted.

I disagree with this perspective. From a startup pov, going with native apps will require multiple teams (Usually just Android + iOS, but occasionally Windows as well) React Native will only require one team, or just one engineer depending on the size of the project Better yet, If your front end developer is fluent in React(web), then that developer is already fluent in React Native. I completely disagree on the "awf…

Former Dev that did Web -> Ionic -> RN -> Native iOS over the course of 6 years speaking here. - Web devs typically don’t have strong instincts for mobile apps, they require more mentorship & onboarding time. - Animation and interactivity is strongly limited in RN - You’re always so many levels removed from the actual APIs being used. For example, using UIKit and CoreAnimation are absolutely amazing and super lightwe…

> Web devs typically don’t have strong instincts for mobile apps, they require more mentorship & onboarding time.

I don't agree entirely. I do understand that there are differences in concerns regarding web and mobile, but the similarities overrun that of the differences, ESPECIALLY if they're working with react + rn.

mentorship + onboarding time aren't words I would choose if a developer wanted to move from React to React Native - you make it sounds like a dev is joining a new company.

> Animation and interactivity is strongly limited in RN - You’re always so many levels removed from the actual APIs being used. For example, using UIKit and CoreAnimation are absolutely amazing and super lightweight on CPU/GPU in comparison. UICollectionView is a modern miracle that offers so much more control than FlatList.

Again performance is not something I will ever disagree with, the only part I disagree with is where people typically put that bar of "we need native because of performance" - It's a lot higher than most people think.

Furthermore, your example of Flatlist in animations is confusing. A better example would probably be React Spring. Granted, RN animation is levels above, obviously, but it doesn't mean RN can't implement the same style of animations as native can

https://twitter.com/VilacaRodolfo/status/1178351034051284993

> JS/Babel/node_modules is hell, no I won’t elaborate.

ok

> Multi-threading, priority/concurrent queues etc for maintaining good all-around perf while doing intense operations is very strong with native platforms. RN just has sophisticated band-aids.

not arguing performance. that is always a given.

Again, I will reiterate.

If React Native is good enough for Discord, it's good enough for 3 quarters of mobile apps out there.

Happy coding!

Re: Prime Video Uses WebAssembly

#137

Prime Video app sucks. Spend less time over-optimizing, more time improving usability.

I cannot believe how Amazon is one of the biggest company on the planet and still cannot seem to figure out UI/UX for any of their product. Amazon (the website) having an awful UX might be "by design" (i.e dark patterns) but it make no sense for Amazon Video, AWS dashboard, the kindle/device side of the Amazon website, ...

Re: Prime Video Uses WebAssembly

#138
post #81

Personally, to me , whenever I read these stories about how Amazon is doing this novel use of WebAssembly, or how Uber is doing ludicrous engineering effort to keep their React-based app under 300MB for the App Store, I can't help but think: "Man, that's an awful lot of work to avoid writing a native app."

Between electron, webassembly, and other technologies, I don't think the line between web app and native app is as clear as it used to be, especially relative lift and performance. In the end, the only difference may be "one is launched in a browser and one is launched from the start menu"

It is very clear: are ALL controls which could be standard (provided by native OS toolkit) really standard (and respect system theming, customization, etc) and are ALL keyboard shortucts and other behaviors of OS standard toolkit supported? I don't care are code is native (as in compiled ahead of time / just in time / interpreted), but I'm care for behaviors and it consistency, both across one app and whole system.

I'm forced to use Slack at $job, and it is awful, for example. Some text fields looks as text fields and are used as text fields, but don't respect "Shift+End/Home/Arrows" keyboard commands. Other does. It is annoying as hell. It is Electron.

Even more «native» toolkits, like GTK and QT are have small discrepancies. Simple example: my Windows has English MUI (interface language) but Russian locale (time and date format, etc). In POSIX terms it is something like LC_MESSAGES=en_GB & LC_ALL=ru_RU (according to POSIX more specific categories have priority over LC_ALL). 95% of both QT-based and GTK-based software with translation to Russian speak Russian to me (and if I'm lucky has setting somewhere to enforce English). They think that «(system language)» is Russian. But it is not! It is not very «native», IMHO. Ok, GTK-based software is typicality build via cygwin/mingw, so it is really not very native and is «hacked» to run on Windows, but most of QT-based software IS build for Windows, as Windows is fully supported, tier 1 platform for QT. But still.

If I start to write down all small nitpicks about cross-platform software, which shows that it it not native, I could find many in any cross-platform software. Corner cases in keyboard shortcuts, non-copyable messageboxes, strange tab behaviors, non-standard open/save/print dialogs, etc, etc, etc. If you use platform for 25+ years (yes, Windows changed a lot from 3.11 for Workgroups which was my first version, but these changes were small ones, step-by-step, and A LOT of things in UX didn't change still!), you have a shitton of muscle memory and all these nitpicks throw you off.

Yes, I know, that there is no "native" toolkit for Linux. IMHO, it is a big problem, much bigger, that all problems of X11 which Wayland want to solve.

Re: Prime Video Uses WebAssembly

#139
post #74
post #13

Earlier quoted context omitted.

I'm rewriting an MVC 5 app in Blazor as we speak. I'm "full-stack" but my JS skills are pretty low compared to C#, which I am extremely comfortable with. It is actually extremely fun to work with. Havin ability to inject a service directly into a page is amazing. I'm hoping Blazor gets more popular. However, I will see how this project goes and if I hit any major road blocks, so my opinion my shift. So far it seems l…

What I would really love is to see XAML-like layout in the browser. CSS is a mess I can never wrap my mind around even with the flex model. Whereas the XAML model is much simpler (a measure pass to size components, an arrange pass to lay them).

I think css is mostly a sane low level layout system (which allow you to produce whatever pixel you want, like opengl or whatever) instead of a predefined component system. It will never have those nicely designed components buildin (because it is not its goal). And the complexity price comes from the flexibility it demands.

Re: Prime Video Uses WebAssembly

#140

Earlier quoted context omitted.

This comes off incredibly naive of FE engineering. Buttons and Doodads? sigh. A significant factor as to why Apple has succeeded the past 2 decades is due to the design of their products - from the sleek aluminum bodies of their hardware to the UI/UX of their operating systems. Unless you want your UI to look like something out of 1995, you're going to have to make it look good. Making it look good will require a dec…

I, for one, would love if UIs looked like it's 1995 again. Imagine the crispness, everything is fast, responsive and written in sensible languages. A simpler, and better time.

While I agree in some cases, tech companies aren't marketing to those with that specific taste pallete
Post reply on HN