Functional programming courses can help you learn concepts like first-class functions, immutability, and higher-order functions, along with practical techniques for managing state and side effects. You can build skills in recursive problem-solving, data transformation, and leveraging pure functions for cleaner code. Many courses introduce tools such as Haskell, Scala, and JavaScript, showcasing how these languages facilitate functional programming principles and enhance software development practices.

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Scalability, Distributed Computing, Event-Driven Programming, Microservices, System Design and Implementation, Software Architecture, Software Design Patterns, Software Design, Cloud Computing, Data Structures
Intermediate · Course · 1 - 3 Months

Codio
Skills you'll gain: Go (Programming Language), Object Oriented Programming (OOP), Web Services, Web Frameworks, Debugging, Python Programming, Restful API, Dependency Analysis, Performance Tuning, Software Engineering
Beginner · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scalability, Scala Programming, Distributed Computing, Event-Driven Programming, System Design and Implementation, Microservices, Software Architecture, Software Design Patterns, Cloud Computing, Software Design, Application Frameworks, Software Testing
Intermediate · Course · 1 - 3 Months

Skills you'll gain: React.js, JavaScript Frameworks, UI Components, Javascript, Front-End Web Development, Web Development
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: Object Oriented Programming (OOP), Javascript, Software Design Patterns, Data Management, Data Structures, Prototyping, Web Development, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Pandas (Python Package), Data Manipulation, Jupyter, Exploratory Data Analysis, Python Programming, Computational Logic
Beginner · Guided Project · Less Than 2 Hours

LearnQuest
Skills you'll gain: Model View Controller, Swift Programming, iOS Development, Apple iOS, Data Structures, Object Oriented Programming (OOP), Mobile Development, Apple Xcode, Computer Programming
Beginner · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Computer Architecture, Embedded Software, Computer Engineering, Computer Programming, Computer Science, Program Development, Data Structures, Linux, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Programming Principles, Computer Programming, Software Documentation, Functional Design, Computer Science, Maintainability
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Kotlin, IntelliJ IDEA
Intermediate · Guided Project · Less Than 2 Hours

Johns Hopkins University
Skills you'll gain: Tidyverse (R Package), Web Scraping, Data Manipulation, R Programming, Data Transformation, Data Cleansing, Big Data, Statistical Programming, Text Mining, Data Import/Export, Data Analysis, Data Structures, Performance Tuning, Application Programming Interface (API)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Software Documentation, Java Programming, Java, Computer Programming, Programming Principles, Computational Thinking, Computer Science
Intermediate · Course · 1 - 4 Weeks