If you’re familiar with Object-Oriented-Programming and you’ve heard of Functional Programming (FP) but struggled to understand it or had difficulty seeing the benefits, this article is for you. In this article, I will discuss some core concepts of FP and how it is simply Function-Oriented-Programming (FOP).

Functions are everything in FP, and there are many different types of functions. In this article I will discuss three types of functions:

  • Pure Functions
  • Honest Functions
  • Higher Order Functions

Pure Functions

The english definition of pure is:

not mixed or adulterated with any other substance or material

Some synonyms for the word pure are:

  • Unmixed


If you’ve worked in a Node project before, you know all too well the pain of bumping the version of your package when making a change.

First of all, you have to remember to bump the version or else your CI/CD pipeline will fail to publish your changes. This includes running npm version (major|minor|patch) or yarn version --(major|minor|patch) .

Second of all, if you have successfully bumped the version but your colleague beats you to it and merges their PR first, you have to go and bump the version again.

This pain is multiplied if you’re working in a monorepo…

Francesco Ferraioli

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