Thanks for this post. This is the most straightforward article I've read about Web Assembly.
I think people haven't really started playing with because it involves the browser but it's supposed to be used for tasks that are typically run in the back end. We haven't yet broken through that mentality of having things happen where we expect them to.
Nailed it, it requires a (big) shift in mentality.
Some are still trying to understand how to use web workers effectively or edge computing.
By adding WebAssembly (which is getting multi threading) to the mix we'll be able to efficiently run web apps using the CPU of the client instead of running jobs on the server and then delivering the result to the client.
I'm not against web assembly or anything, but I think the whole idea of client-server architecture was to push processing to the server side and keep the clients as thin as possible. Web assembly lets us use our personal preferred language on the front-end and that's a great thing. But I'd prefer if it somehow restricts the processing to a minimum. I don't want my browser to crash when I open a web page on a budget mobile or laptop.
The last thing I want is websites demanding something like "WARNING: this site requires _ CPU cores and _ gb RAM to work properly in your browser."
IMO, it's to balance resources not simply use them in one area. You're essentially looking at Parkinson's Law moving the processing burden back and forth as technology improves in different areas.
Nice article btw!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.