DEV Community

Parth Makawana
Parth Makawana

Posted on

What happened to “Javascript Killer” WebAssembly? Is it already dead?

Looking at the current technology market situation, the hype around Web3.0, Metaverse, Blockchain, AI, ML etc., reminds us of how rapidly the technology market changes. It is so rapidly evolving that technologies that we thought would be the future of the industry today, would disappear entirely from the industry a day after tomorrow.

We have so many examples of tech that were hyped for doom, many of them are either extinct or on the verge of extinction. Just a few of them are surviving. and merely a handful of them could thrive.

We’ll look back at one such hyped tech “Web Assembly” by answering What, Why and When:

What is WebAssembly?

Why do we call it Hyped for doom?

When will it be dead?

What?

Photo by [Claudio Schwarz](https://unsplash.com/@purzlbaum?utm_source=medium&utm_medium=referral) on [Unsplash](https://unsplash.com?utm_source=medium&utm_medium=referral)

First, let us understand what is WebAssembly or WASM for short? Why did everyone think it would become a “Javascript Killer”?

Now, What is WebAssembly? If we go by the definition from its official website, It states:

WebAssembly (abbreviated Wasm) is a binary instruction format for a stack-based virtual machine. Wasm is designed as a portable compilation target for programming languages, enabling deployment on the web for client and server applications.

Basically, It is a low-level, assembly-like language which gets stored in compact binary format so that it can give a near-native performance.

As mentioned in the definition, WASM was designed as a compilation target for other languages, allowing server-side code (such as C or C++ code) to be compiled into it and executed inside the browser.

It can let you code in any low-level programming language thus removing the barrier of understanding a particular programming language. It has native browser support so it is accepted across the browsers.

Imagine a non-web developer writing a piece of code in a non-web-compatible language using WASM and still being able to create amazing web apps that can run on browsers with near-native speed. That is the power of WASM and that was what’s promised.

Now, It was never intended to crush out javascript in the first place, but to work alongside it and overcome its issues and boost its advantages.

However, as I mentioned it was hyped to a general audience as a replacement for javascript, which is totally incorrect. People across the world started comparing it with javascript as if WASM was a rival to JS but in reality, WASM is a companion of JS and that’s where the tag “Javascript Killer” came into being.

The reason why people started comparing WASM with JS is that WASM promised to solve several issues that JS has like Security issues, Cross-platform support, Improved speed, Improved Debugging, and Garbage collection to name a few.

But did it deliver on that promise? Let’s find out in my next section.

Why?

Photo by [The 77 Human Needs System](https://unsplash.com/@77hn?utm_source=medium&utm_medium=referral) on [Unsplash](https://unsplash.com?utm_source=medium&utm_medium=referral)

Now, Why did we call WASM, hyped for doom? Is it because it did not deliver on its promises? Well, partially, YES!!!

The promises it delivered are Faster and easy coding, cross-platform development, and biggest of all, Improved performance.

It does deliver faster and easy coding as it allows developers to write the code in their native programming language so little or no training and exercise are required.

The biggest marketed feature of WASM was its improved performance over JS. And It does deliver on that promise. The obvious reason for it is that it translates into a binary instruction which is of course lite weight than JS text files. There have been many articles around the internet which did benchmark tests across different browsers and devices.

And usually, WASM was 30–60% faster than JS depending upon the browser and devices.

So what went wrong, you might ask?

Though it exceeded the benchmark tests, Manier times, users and developers have found that real-world performance does not match that of benchmarks. It does exceed JS performance but not as much as the benchmarks suggested. Which basically disappointed many people.

But one of the most prominent failures for WASM was its promise of improved security over JS.

We all know JS has several security issues on its own, and WASM promised to resolve them, however, in real-world applications, it failed to deliver on that promise. If you look at statistics here, It states that Half of the websites using WebAssembly use it for malicious purposes.

So the very tool that was designed to improve security is being used for malicious purposes.

That’s why is said it partially did not deliver on its promise.

But that’s not all.

We, the developers and people of the tech community understand that new technology can not be perfect at first. It takes many iterations to be in shape and start delivering. So we really want WASM to gradually improve and start to deliver over iterations.

But the problem WASM faced apart from its security issues and some performance mismatch between the benchmark and real-time is the marketing and getting the attention of developers and people of the tech community.

Though it was released with a bang in 2017 and later many products like Blazor made headlines with WASM, Many people do not know what WASM is capable of doing or have never got their hand on it to experience how it is different from other front-end/client-side frameworks. It’s been too long to get its well-deserved attention and widespread adaptation in real-world applications.

So, combining poor after-launch marketing along with security issues, It became the hyped for doom tech.

So the question we now raise is how long will it be able to continue this way? Will it survive any further or if not when it will be dead eventually? Let’s find that out in the next segment.

When?

Photo by [Aron Visuals](https://unsplash.com/@aronvisuals?utm_source=medium&utm_medium=referral) on [Unsplash](https://unsplash.com?utm_source=medium&utm_medium=referral)

It’s been 5 years since WASM was released and its potential is still fully not explored and adapted for the obvious reasons we mentioned above.

So will it be able to continue this way and survive, or will it be dead? and when it will be dead?

Well, I truly wish it to succeed as it's an exciting piece of tech with lots of potentials. So I really do not wish it to go into dust this soon. But unless it resolves the issues I mentioned above, It won't be long before WASM may get forgotten.

It has the potential to co-operate with the current technology trends like Gaming, metaverse and crypto/blockchain applications as it can do the huge computation in real-time with high performance. So If adopted well, it can become the prominent force driving client-side development provided it starts delivering on its promises.

Until then, Happy Learning!!!

Discussion (0)