Topics

Object Oriented Programming

The style of programming that encourages entities messaging each other to perform computations. But things about class-based programming go here too, sadly.

Understanding JavaScript OOP

What does it mean for JavaScript to be a "prototype-based" language? How do common OOP concepts map to this? And how do you program with it?

See all in Object Oriented Programming >

Functional Programming

The style of programming that encourages pure functions and rich types.

A Monad in Practicality: Controlling Time

Monads let you treat asynchronous operations as values, and compose them, giving you a simpler basis for concurrency than callbacks.

A Monad in Practicality: First-Class Failures

Monads can help you deal with failures in ways that are more predictable, and easier to abstract over than exception-based error handling.

See all in Functional Programming >

Concurrency

Dealing with many things happening at once in computers. Includes parallelism and distributed computing.

How do Promises Work?

What promises are, what problem they solve, and how they're implemented (in JavaScript and in theory).

A Monad in Practicality: Controlling Time

Monads let you treat asynchronous operations as values, and compose them, giving you a simpler basis for concurrency than callbacks.

See all in Concurrency >

Opnion Pieces

Rants about different aspects of technology.

No, I Don't Want To Configure Your App!

For the love of whatever you believe in, stop making applications that require the user to spend hours configuring stuff before they can do anything useful with it!

See all in Opnion Pieces >