Navigating Mars Using TypeScript and Functional Programming!
Let's learn about immutability, functions, and composition while solving the Mars Rover kata in TypeScript.

Navigating Mars Using TypeScript and Functional Programming! free download
Let's learn about immutability, functions, and composition while solving the Mars Rover kata in TypeScript.
Over the past five years, functional programming paradigms have entered the development mainstream. Whether its Elm that introduced the Model View Update pattern which inspired React's Redux and Angular's ngrx architecture or Haskell that introduced us to Maybe and Either which influenced Rust, functional concepts are becoming more common.
However, in order to understand these advanced concepts, you need a solid foundation to build upon which is what we'll be tackling in this course. By tackling the Mars Rover kata, you'll get hands-experience with the three core concepts of functional programming.
Immutability - Removing complexity by reducing where data can change
Functions - Removing complexity by reducing what functions can do, ensuring that they're easier to understand
Composition - Building new functions by composing existing functions
By learning immutability, you learn how to arrange your code so that you don't have to track as much state in your application, reducing your troubleshooting time.
By learning what functions are, you'll learn how to spot pure functions (e.g., those that are easy to test/troubleshoot) and how to minimize the amount of business rules in the impure functions (e.g., those that are hard to test)
With these two concepts in hand, you'll learn how you can take existing functions and combine them into new functions, gaining re-usability.
If you're interested in functional programming but not sure where to start, then this course is for you!