The Web Won't be the same ever again
Nick Beaugeard
International Speaker | Software Architect | Councillor @ Northern Beaches Council | ISO 27001 Lead Auditor
Firefox, Chrome, Safari and Edge have shipped version 1.0 of Web Assembly and the world of software development and application is about to change. In fact it's changing right now and in my humble opinion substantially for the better.
The first exposure I had to Web Assembly was at a Google Event. There I saw AutoCAD running in a browser. I was suitably impressed. Not that it was AutoCAD in a browser as I've seen lots of things in a browser, but because it was a full, complex application recompiled to run in a browser running near processor speed.
Let me let that sink in... The fine folks at AutoDesk had recompiled a 30 year old C++ code base and it ran in a browser window with no special Java Script.
Now, people who know me know I am not a fan of Java Script (not to be confused with Java). JavaScript, which was first written in a weekend to attempt to bring interactivity to the web is a slow, interpreted and difficult to maintain language, and yet it had the 2nd most job openings in December 2018. I think the reason for that is that the web needs interactivity and the only way to do this was JavaScript.
Back to the demo. Google and AutoCAD showed amazing interactivity in a browser in C++, with just a simple recompile. With NO JavaScript.
So How did they do this? - They used WebAssembly, a new standard shipped in the four major browsers. Basically WebAssembly is assembly language for browsers, and compilers create assembly language from your source code. That might mean that soon, the incredibly popular and ubiquitous GCC compiler might be able to make WebAssembly.
Now, as many of you might know, I'm a Microsoft .Net developer and can if pushed write some half decent C#. Maybe someone could compile .Net to run in WebAssembly...
Dan Roth and Steve Sanderson over at Microsoft have done just that. The Blazor project (a feature of a future post) does just this.
Over the last few months, I've been working with a startup writing an amazingly fast dotnet application which executes solely on the client and in the browser. There is nothing additional to install and I have access to blazingly fast performance, and the same app runs on the phone, tablet, PC and Mac with no modifications.
All without a single line of JavaScript (Well actually 10 lines but nothing's perfect).
WebAssembly has totally changed web development for us and I see a raft of new examples hitting your browser soon. If' you'd like some proof, check the links at the end of this article.
This new technology stack is going to revolutionize development shops, web development, freelancers and give a fast and amazing developer and end user experience. I encourage you to give it a 2nd look.
Some Examples:
I think this is the most exciting development in Web since Web 2.0 (you know - forms and tables)
Senior Full Stack Software Engineer
6 年Javascript which was first written in a weekend, loooooooooool, I love that sentence :-D