WebAssembly Today #5
Updates & commentaries on WebAssembly related technologies, including Rust, serverless, cloud, blockchain, and AI. Focused on the server-side.
Istio supports WebAssembly functions ❤️
Service management framework Istio now allows WebAssembly functions to operate on data exchanged between services on the fly. It is another great use of WebAssembly in the cloud and DevOps environment.
A scalable privacy computing service written in Rust and WebAssembly 🔑
Recrypt-as-a-Service is a web service that supports privacy-first data exchanges. It is an example of a Rust + JavaScript hybrid app.
The host application is a Node.js web application written in JavaScript. It makes WebAssembly function calls.
The WebAssembly bytecode program is written in Rust. It runs inside the WebAssembly based SSVM, and is called from the Node.js web application.
A browser-based FFmpeg transcoder powered by WebAssembly 🌌
WebAssembly strikes again in the browser! Video-Transcoder is a browser-based video Transcoder, powered by WebAssembly. All the processing is done in the browser. There are no more uploading video files to a server. Faster and more private!
This project is still very early in development. Read more at its GitHub Repo.
WARDuino, A dynamic WebAssembly VM for Arduino ⌨️
WARDuino is a WebAssembly VM for microcontrollers, like Arduino. One of its unique features is remote debugging on those devices.
Benchmarks show that WARDuino runs approximately 5 times faster than Espruino, a popular JavaScript interpreter for the ESP32 micro-controller.
TinySearch, full-text search engine built with Rust and WebAssembly 🔍
TinySearch is a lightweight, fast, full-text search engine. It is designed for static websites.
TinySearch is written in Rust, and then compiled to WebAssembly to run in the browser. It could be used together with static site generators Such as Jekyll, Hugo, Zola, and Cobalt.
8cc.wasi, a complete C compiler 🛴
8cc.wasi is a WASI port of 8cc built on ELVM. 8cc is a compiler for C programming language and supports all C11 language features.
With 8cc.wasi, we can compile C code into ELVM IR(EIR), and then compile EIR into WASI. Then we can run the WASI file in WebAssembly runtimes.
Rusty News
Rust is adopted by major corporations 😎
Facebook uses Rust in Libra (Facebook’s cryptocurrency) and Mononoke projects. Well known tech companies, such as Microsoft, Amazon, Dropbox, and Discord, are also using Rust internally.
nphysics, a 2 and 3-dimensional rigid body physics engine for Rust 🛠
Rust gets a deterministic physics simulation engine. This is very useful in developing games, robotics, and scientific applications.
By using fixed point math instead of floating-point math, this simulation library can generate the exact same simulations across different hardware. Could also be useful on blockchains where nodes running different hardware must agree on the computation results at all times.
nphysics also supports WebAssembly.
RustCrypto 2.0 releases Rust cates 🎊
RustCrypto 2.0 releases many Rust crates (libraries) for cryptography algorithms. Most of those crates do not depend on the standard OS library (ie no_std), and hence are suitable for blockchain and WebAssembly applications!
Microsoft: Rust is the Industry’s ‘Best Chance’ at safe systems programming 🌹
Microsoft has deemed C++ no longer acceptable for writing mission-critical software. The industry sorely needs to move to a performant, memory-safe language for its low-level system work. And the best choice on the market today is Rust.
Microsoft really loves Rust!
Zenith, terminal graphical metrics written in Rust 💻
Rust is great for systems programming. How about a terminal-based system monitoring tool written in Rust? Zenith looks great in a remote text terminal.
Serverless World
Serverless Market size is $7.6 billion in 2020 💰
MarketsandMarkets™ published a new research report on the Serverless architecture market. The global Serverless Architecture Market size is projected to grow from USD 7.6 billion in 2020 to USD 21.1 billion by 2025, at a Compound Annual Growth Rate (CAGR) of 22.7% during the forecast period.
MongoDB announced its new serverless platform MongoDB Realm 🔢
MongoDB Realm is a serverless database for mobile application backends. It optimizes for battery and network bandwidth use of those devices.
Top Considerations For Serverless Developers 🙋
Talking Serverless published an article on how to choose a serverless platform for development. Key considerations include:
Programming Language Support
Payloads
Event sources
Environment variables
Data Stores
Supplementary Cloud Services
Documentation
Browser based IDE and Workflow
Cloud-native thrives in the COVID-19 era 🌱
Cloud computing is the key to digital transformation in the era of COVID-2019. The use of microservices, containers, and DevOps has a great influence on the adoption of hybrid cloud architectures.