logoalt Hacker News

apatheticoniontoday at 1:52 AM2 repliesview on HN

This is the part about the "wasm won't replace JavaScript" argument I see being slept on and why I am so disheartened about how practically no progress has been made on it.

Most trivial apps don't need to be optimized, and for them, JavaScript is fine.

But for complex interactive web applications - it really fuggin matters.

Think; - vscode

- facebook

- jira

- linkedin

- reddit

There's no reason these applications should be slow, single threaded, and consume gigabytes of memory - but that's a limitation of the technology.

I know first hand that Atlassian has spent millions of dollars building bundlers in different forms just to save a few milliseconds of load time.

Just let me write the front end in Rust and if the browser detects that no JavaScript is running - don't start a JavaScript engine.

While you're at it, improve the SharedWorker story so I can effectively share data between tabs (enables cross tab sync, great for chat apps and local caching). I recently tried to make an offline-only application with a wasm-based sqlite implementation in a SharedWorker and the API just doesn't work.


Replies

djmipstoday at 3:11 AM

Geez. if you need Wasm to solve this then I just don't know...

show 1 reply
hollerithtoday at 2:13 AM

I'm going to resist wasm as much as practical. At least that is my current intention based on what I have learned from being a web user for the last 33.5 years.

First of all, wasm won't run in my browser (I determined that by evaluating `typeof WebAssembly` in the console tab of Developer Tools), a choice made not by me, but by the maintainer of my browser (Trivalent) -- probably for security reasons. I trust the maintainer of my browser about security-related decisions.

Besides security, another reason I am going to resist wasm is that it gives the site owner more power at my expense. The way it is now, I can modify web sites using extensions. For example, for years, I ran an extension that deletes "fixed elements" from web page (which didn't work on 100% of sites with fixed elements, but was still a welcome assistance to me because it worked on about 70% of sites). Wasm would make it more difficult for an extension to modify a site in ways that users with various preferences and various disabilities might want -- because code is more difficult to modify than data is, and the way web pages are now, there is a lot of data in a web page stored in 'locations' that an extension can programmatically find and modify.

In summary, site owners already have too much control over my experience (relative to me and authors of software such as a browser extension acting on my behalf), and wasm would give them even more control.

It would be one thing if I used the web mainly to run sophisticated applications. I do not: I use it mainly to find simple data resources, mostly text and URLs, written by ordinary people such as yourself. When anyone anywhere wants to get some information out to the world and consider how best to do that, 99% percent of the time, the first thought that comes to mind is to put some text or maybe a video or some other kind of data on the web. I see sentiments like the one you expressed just now as interfering with the flow of this text or other kind of data to me -- by making the process more complicated, less customizable by the user and giving "middlemen" like advertiser more ways to profit from this flow.

Again: I never wanted or asked for a platform for the delivery of sophisticated applications over the internet (using web protocols) to get all mixed up and combined with the world's most important and most convenient platform that ordinary users (i.e., not site owners or professional technologists for the most part) use to publish and consume simple data objects like text and URLs and such.

show 2 replies