The State of Web Application Development (Is WebAssembly the Future?)

Is WebAssembly The Future?

It is impressive to see the pace at which technology is evolving in the application development space. If someone said in the mid-90s that web would be the mainstream channel for delivering applications, we would have dismissed that. Web’s attractiveness came from its promise of the smooth delivery of content/applications to users without installations and write-once and run it everywhere. But it lacked true application development capabilities. Despite its shortcomings in the application development space, its attractiveness kept us innovating and refining the web to make it a real application platform. That innovation curve on the web took us through different phases of maturity. While pure server-side rendering frameworks such as ASP, JSP, Ruby on Rails, and Ajax calls with partial client-side rendering dominated web 1.0, modern-day Javascript frameworks ReactJs, Angular and Vue.js became the backbone of web 2.0.

While Javascript frameworks like Angular, ReactJs, and Vue.js can provide rich client-side application development capabilities for web, that constant feeling of being limited to Javascript kept the innovation going on. So, what comes next?

A strong desire to bring the experience of using languages such as C, C++, C#, Java, Rust, etc., brought us another innovation – WebAssembly. It is an open standard portable format for running programs in the browser. There are tools to help you to write programs in the languages mentioned above and compile them into WebAssembly. WebAssembly doesn’t have access to DOM in the browser, so Javascript is still required to update the DOM and call the functionality exposed by WebAssembly. WebAssembly has been used to port desktop applications such as Autocad and Doom3 game. Also, the company Figma developed its web based UX Design tool using WebAssembly.

Microsoft has jumped on the bandwagon and created a compelling WebAssembly framework called Blazor. It is something worth checking out, and it could be the first framework that can bring WebAssembly to masses. The future looks promising for WebAssembly, and we may see more adoption of this as tools mature. Given its promise of portable byte code and simple VM, it has the potential to play an essential role in the serverless back end environment.