https://medium.com/@roshanjalil609/this-is-how-i-would-explain-higher-order-array-methods-to-a-5-year-old-b6d1ff3c74a4