What impact will Web Assembly have?

Did you find this post useful? Show some love!
DISCUSSION (16)

"The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry." - Henry Petroski

It's a quote spread around all the time by people fascinated by the idea that even hardware is unimaginably faster than it was back the day, the relative speed of software "feels" to be about the same. Many contribute this ability of software to things like JavaScript and other scripting languages saying there's too much overhead. I think it's also that we actually do do more but I digress.

What WebAssembly promises is to let us (the web) do even more with even less. While I think the barrier to entry is still a little high, WASM brings smaller code deliverables, faster code, and less overhead. I am excited to see what we'll make with it.

edit: something else that I forgot to mention, is that since WASM is a compiler target and not a language itself, it serves as a medium for any language to come to the web provided a compatible compiler is made. I think that is really cool.

smaller code deliverables

Can you give an example of something most interesting that could come out of this?

WASM provides the ability to compile existing libraries to WASM and push code previously thought too heavy for the browser. Big existing engines like Unity are being made "natively" available for web development, and with type="module" coming to Workers soon bigger and bigger apps will be feasible. On the other end, this provides a way to make smaller web apps even more performant and use less bandwith.

Not entirely true, for native libraries sure, but other than that it's not really smaller and very limited in what it can do

It's still very young and barely past its MVP. The MVP was to just get a basic workable implementation in the big browsers. For more info checkout their Roadmap and planned future features.

Compatible compilers will help us bring C++ to the web!! 😋

How will native gaming in the browser change the way high-fidelity games are conceived? The web vs native in every respect has an effect folks onboard onto a new thing. Thoughts?

For the game developer audience, WebAssembly represents an addition to an already long list of supported target platforms (Windows, Mac, Android, Xbox, Playstation, …), rather than being a new original platform to which projects are developed from scratch.
From WebAssembly for Native Games on the Web

less disruptive and more another platform.

WebAssembly also brings the possibility of finally not "needing" the other platforms. All those platforms would have to do is ship an OS with a good browser and every game made well and with Gamepad API support would be available on every one of those platforms.

* I know that wouldn't happen for economic reasons, but you could still make platform exclusives with private keys and DRM etc.

Early on I think your asterisk remark is needed, but in the long long run it could be a realistic possibility.

That's the hope! 🤞🤞
The OS I want to make is actually very close to this idea with some little differences only because with some apps the web doesn't make sense everywhere, but still made with web tech

Atwoods law states that everything that could possibly be written in JavaScript will ultimately be written in JavaScript.

Web Assembly is first of all a fallback for JavaScript in case something is not feasible in terms of performance or download size. At the same time, it's a compiler target for clang, which makes running other languages like C, C++, or Rust really easy.

Ben Halpern DEV.TO FOUNDER

Hey there, we see you aren't signed in. (Yes you, the reader. This is a fake comment.)

Please consider creating an account on dev.to. It literally takes a few seconds and we'd appreciate the support so much. ❤️

Plus, no fake comments when you're signed in. 🙃

The reason I'm excited about it is that it hopefully means it will become practical to use other languages than JavaScript as the scripting language for client side development. By "other languages" I of course mean Python because it is the best 😬

I think there will be great usages of this technology. The one I can think of, is when users are uploading some images to your service. Imagine doing the image opimisation on client, before sending it to the server. Saving cellular data and speeding up upload speed.

I already tried it out, it looks promising. Altought I found quite difficult, to find any proper documentation, how to actually cross-compile some code. The community is small, but that will probably change as more and more devs will use it. Since the worldwide support is about 77,5 % and even Safari already implemented it. And it's also usable for mobile devices, not like browser plugins!

  • Native graphical softwares in the browser.
  • Write once, run anywhere.
  • Eventually the browser can become the ultimate UI framework for desktop and mobile (see previous point).
Classic DEV Post from Jan 12

What was the worst bug you've ever written?

So I just wrote my worst bug ever. The Practical Dev @thepracticalde...

READ POST
Follow @ben to see more of their posts in your feed.
Ben Halpern
A Canadian living in New York, having a lot of fun cultivating this community! Creator and webmaster of dev.to.
More from @ben
I'm having some "not this again" feelings with Parcel, how should I be feeling about this tool?
#javascript #discuss #webdev
Should browsers still allow users to disable JavaScript?
#healthydebate #webdev #javascript #browsers
Trending on dev.to
How much did you know when you got your first freelance Web Dev project?
#help #webdev #freelancing #career
Debugging TypeScript Using VSCode and Chrome
#typescript #webdev #debug #showdev
JSON, JSON, JSON
#javascript #webdev
Web Developer Security Checklist V2
#security #aws #webdev #devops
That's one small step for a developer, one giant leap for the web
#javascript #webdev
Code Talk - September 2018
#webdev #discuss #javascript #git
Redesign of my portfolio
#showdev #webdev #career #frontend
Stacks n Queues
#webdev #career #computerscience #beginners