Getting going with functional programming in JavaScript

Functional programming has made a strong resurgence in recent years and for good reason too. Functional software breaks code down into composable deterministic functions, resulting in code that is often simple, elegant, and expressive. It can lead to code that is easier to understand and maintain, and straightforward to test.…

An introduction to higher order functions in JavaScript

The problem When programming for the web, a big part of what we do is marshalling data around our systems. We transform it in places to shape this data in ways that are compatible with both our user interface components and data storage structures. When transforming data, developers will often…

Making asynchronous code look synchronous in JavaScript

Why go asynchronous Asynchronous programming is a great paradigm which offers a key benefit over its synchronous counterpart - non blocking I/O within a single threaded environment. This is achieved by allowing I/O operations such as network requests and reading files from disk to run outside of the…