LEARNING PATH: Modern Web Apps with Functional JavaScript

  • flag Udemy
  • student Beginner
  • database eLearning
  • earth English
  • clock 12h


Master professional web application development with functional JavaScript

Covered topics:

  • See how impurities break that modal and how to isolate them
  • Create reusable functions by writing higher-order functions
  • Write more declarative and expressive code without loops
  • Create your own higher-order functions to replace native JS Array methods
  • Build JSX & Virtual-DOM into functional ES2017 apps without using React
  • Discover the simplicity of FP Types that can handle the most difficult application concerns
  • Learn to use Google Firebase and add Real-Time NoSQL power to a web-app
  • Integrate professional functional code into JSX^ React and Redux style web-apps
  • Understand how basic functional programming concepts are woven into rich declarative JavaScript
  • Build a web app with JSX and Virtual-DOM


JavaScript is a multi-paradigm language^ meaning that it supports programming in many different patterns. Functional programming has been around for decades^ but it overtook the JavaScript community in recent years. The impact is undeniable and yet with all the material available it still isn’t always easy to growsss. It is the technique of building software by constructing pure functions^ avoiding shared state^ mutable data^ and side-effects. Functional programming is analytical and the application state flows through pure functions. If you re interested to learn the concepts required to be a functional programmer and write functional web-apps using modern JavaScript^ then go for this Learning Path.

Packt’s Video Learning Paths are a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it.

The highlights of this Learning Path are:

  • Understand pure functions and how to refactor impure functions
  • Learn to handle management patterns like React and DOM events
  • Elevate yourself to a level of comfort writing production level functional apps

Let’s take a quick look at your learning journey...

The primary idea of this Learning Path is to help you build code to run your App in Functional JavaScript.

This Learning Path delivers the building blocks of the functional paradigm in a way that makes sense to JavaScript developers. Animated visualizations help explain difficult concepts such as higher-order functions^ lenses and persistent data^ partial application and currying and then write code so you understand concepts before trying to apply the knowledge.

In this Learning Path you’ll learn techniques like combining smaller units of code into composition pipelines. You’ll learn how to reason about these composed functions and learn the laws of compositionality to deal with common issues that come along when writing compositional logic. You’ll continue building code that mirrors popular framework thinking. Students will learn how to create a state management pattern like React and how to handle DOM events (and other I/O) by encapsulating logic inside generic containers.

Finally^ you’ll learn about maybe^ either^ future and even reactive streams with observables to write asynchronous code that looks more like synchronous FP.

After completing this Learning Path^ you’ll have learned the concepts required to be a functional programmer and write functional web-apps using modern JavaScript.

Meet Your Expert:

We have the best work of the following esteemed author to ensure that your learning journey is smooth:

  • Michael Rosata is a professional JavaScript developer and the author of three courses on Functional JavaScript. He’s written multiple JavaScript applications for internal use at large companies. Michael is the founder of the Massachusetts Web Devs meetup. He has a great passion for learning^ and teaching. You can find him answering questions in the Ramda gitter channel or at michael.rosata@gmail.com. I’d like to thank my family for giving me the opportunity to explore things I enjoy learning^ and to the team at Packt Publishing^ especially Sunny Kandre and Anish Dsouza for making this course possible.