Backpressure (or back pressure) is something nearly every software engineer will have to deal with at some point, and for some it’s a frequent problem. But the term itself isn’t nearly as understood and recognized as such.

In this post I’m going to elaborate on what exactly backpressure is, when it’s common, and the strategies we can use to mitigate it.

I recently gave a talk about this at ReactiveConf:

The Definition

In the software world “backpressure” is an analogy borrowed from fluid dynamics, like in automotive exhaust and house plumbing.

The Wikipedia definition:

UPDATE 08/2018: Binaryen no longer supports s2wasm and the official "wasm32-unknown-unknown-wasm"target is now stable enough to use via llc and lld. See the footnotes for more info.

While I won’t dive deep or explain what all the LLVM APIs do, hopefully this post helps jumpstart those who want to use LLVM from Rust. …

LazyDOM — an experiment to bring virtual DOM to the browser natively

tl;dr React-style virtual elements are fast but cannot be consumed like real Elements, LazyDOM elements are fast like React elements, but can be consumed like real DOM Elements because they lazily proxy to one. To be clear though, this is only an experiment!

Let’s start with a somewhat deceptively simple example to give you an idea of what LazyDOM…

Now that feature list for ES2016 aka ES7 is out, and doesn’t actually include any of the features most people talk about, it’s officially time to just stop using ES7 to mean “any proposed feature that may or may not even make it”.

Let’s first define a couple things:

ES = ECMAScript = the specification that JavaScript is the de facto implementation of.

TC39 = the people who write the ECMAScript specification.

How we got here

This problem is understandable. When news originally broke that we’d finally be getting additions to the JavaScript language, people were stoked. …

Jay Phelps

WebAssembly • Reactive programming • PL enthusiast • previously @Netflix et al • @GoogleDevExpert

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store