Code Cartoons Articles
Announcing the Bytecode Alliance: Building a secure by default, composable future for WebAssembly
Lin Clark introduces the Bytecode Alliance, and uses Code Cartoon illustrations to share their vision of a WebAssembly ecosystem that is secure by default, fixing cracks in today’s software foundations. Based on advances in the emerging WebAssembly community, founding members of the Alliance - Mozilla, Fastly, Intel, and Red Hat - believe we can make this vision real. And we invite others to join the collaboration.
WebAssembly Interface Types: Interoperate with All the Things!
People are excited about running WebAssembly outside the browser. People are also excited about running WebAssembly from languages like Python, Ruby, and Rust. Lin Clark's Code Cartoons are back, illustrating an in-depth look at WebAssembly Interface Types, and the proposed spec to make it possible for WASM to interoperate with All The Things!
Standardizing WASI: A system interface to run WebAssembly outside the web
WebAssembly is an assembly language for a conceptual machine, not a physical one. This is why it can be run across a variety of different machine architectures. WebAssembly needs a system interface for a conceptual operating system, not any single operating system. This way, it can be run across all different OSs. WASI is a system interface for the WebAssembly platform that will be a true companion to WebAssembly and uphold the key principles of portability and security.
Rust 2018 is here… but what is it?
Starting today, the Rust 2018 edition is in its first release. With this edition, we’ve focused on making Rust developers as productive as they can be. Most of the language changes are completely compatible with existing Rust code. Because they don’t break any code, they also work in any Rust code… even if that code doesn’t use Rust 2018. This is because of the way the language is evolving. Lin Clark illustrates and explains.
WebAssembly’s post-MVP future: A cartoon skill tree
People have a misconception—they think that the WebAssembly that landed in browsers back in 2017—is the final version. In fact, we still have many use cases to unlock, from heavy-weight desktop applications, to small modules, to JS frameworks, to all the things outside the browser… Node.js, and serverless, and the blockchain, and portable CLI tools, and the internet of things. The WebAssembly that we have today is not the end of this story—it’s just the beginning.
At Mozilla, we want WebAssembly to be as fast as it can be. This started with its design, which gives it great throughput. Then we improved load times with a streaming baseline compiler. With this, we compile code faster than it comes over the network. Now, in the latest version of Firefox Beta, calls between JS and WebAssembly are faster than many JS to JS function calls. Here's how we made them fast - illustrated in code cartoons.
Baby’s First Rust+WebAssembly module: Say hi to JSConf EU!
A cartoon intro to DNS over HTTPS
At Mozilla, we closely track threats to users' privacy and security. This is why we've added tracking protection to Firefox and created the Facebook container extension. In today's cartoon intro, Lin Clark describes two new initiatives we're championing to close data leaks that have been part of the domain name system since it was created 35 years ago: DNS over HTTPS, a new IETF standard, and Trusted Recursive Resolver, a new secure way to resolve DNS that we’ve partnered with Cloudflare to provide.
ES modules: A cartoon deep-dive
Making WebAssembly better for Rust & for all languages