2018-05

Working with stdout and stdin of a child process in Node.js

[2018-05-05] dev, javascript, nodejs, async

In this blog post, we run shell commands as child processes in Node.js. We then use async language features to read the stdouts of those processes and write to their stdins.

2018-04

Coding recipe: extracting loop functionality (via callbacks and generators)

[2018-04-29] dev, javascript, coding

In this blog post, we look at two ways of extracting the functionality of a loop: internal iteration and external iteration.

Tip: npm-installing directories

[2018-04-24] dev, javascript, nodejs, npm

Quick tip: npm lets you install directories, which is occasionally useful for organizing projects. For example, as a temporary step before uploading packages to npm (think lightweight npm link).

Understanding TypeScript’s type notation

[2018-04-08] dev, javascript, typescript

This blog post is a quick introduction to TypeScript’s notation for static types.

Reading streams via async iteration in Node.js

[2018-04-01] dev, javascript, nodejs, async

Node.js 10 was released on April 24, 2018. This version provides experimental support for asynchronously iterating over readable streams. This blog post explains how that works.

2018-03

JavaScript vs. TypeScript vs. ReasonML

[2018-03-18] dev, javascript, typescript, reasonml

In this blog post, I describe the pros and cons of three programming languages/dialects: JavaScript, TypeScript and ReasonML. My descriptions are based on recent experiences with TypeScript and ReasonML on a few smaller real-world projects and on years of experience with JavaScript.

2018-02

ECMAScript 2019: the final feature set

[2018-02-22] dev, javascript, es2019

Update 2019-01-29: The feature set of ECMAScript 2019 is now final (source) and described in this blog post.

ES2020: String.prototype.matchAll

[2018-02-06] dev, javascript, es feature, es2020

The proposal “String.prototype.matchAll” by Jordan Harband is currently at stage 3. This blog post explains how it works.

JavaScript’s a mess – and that’s a good thing

[2018-02-05] dev, javascript, esnext

JavaScript never removes old features – new versions are always backward compatible. I wish we could clean it up, but staying compatible has too many benefits, as I’ll explain in this blog post.

ES2021: numeric separators

[2018-02-02] dev, javascript, esnext, es2021

The proposal “Numeric Separators” by Sam Goto and Rick Waldron lets us use _ as a separator in numeric literals. This blog post explains how that works.