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.

University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), Data Structures, Object Oriented Design, Object Oriented Programming (OOP), Computer Programming, Unit Testing, Programming Principles, Algorithms, C (Programming Language), Software Testing, Code Reusability, Graph Theory
Intermediate · Course · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Go (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Structures
Intermediate · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: Object Oriented Programming (OOP), Computer Programming, Program Development, Python Programming, Computer Graphics
Intermediate · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: R (Software), Object Oriented Programming (OOP), Object Oriented Design, R Programming, Debugging, Code Reusability, Functional Design, Programming Principles, Computer Programming Tools, Data Structures, Analysis, Performance Tuning, Performance Testing
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Structures, Object Oriented Programming (OOP), Software Development, Memory Management
Intermediate · Course · 1 - 4 Weeks

Ball State University
Skills you'll gain: Program Development, Data Analysis, Programming Principles, Statistical Analysis, Computer Programming, Analytics, Python Programming, Natural Language Processing, Text Mining, NumPy, Data Processing, Code Reusability, Mathematical Software, Computational Logic
Build toward a degree
Beginner · Course · 1 - 3 Months

Logical Operations
Skills you'll gain: R Programming, R (Software), Data Science, Data Analysis, Statistical Modeling, Data Visualization, Statistical Analysis, Statistical Visualization, Regression Analysis, Statistical Machine Learning, Plot (Graphics), Data Structures, Computer Programming, Decision Tree Learning, Machine Learning Methods, Machine Learning, Software Development, Computer Programming Tools, Data Import/Export, Machine Learning Algorithms
Intermediate · Specialization · 1 - 3 Months

University of Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Programming Principles, Computer Programming, Code Reusability, Data Storage
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: Swift Programming, Apple iOS, iOS Development, Application Deployment, Mobile Development, Programming Principles, Application Development, UI Components, User Interface (UI), Knowledge of Apple Software, User Interface (UI) Design, Functional Design
Beginner · Course · 1 - 3 Months

Edureka
Skills you'll gain: Development Environment, Web Development, Computer Programming, Program Development, Other Programming Languages
Beginner · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Algorithms, Performance Tuning, Other Programming Languages, Functional Design, Performance Testing, Unsupervised Learning, Computer Programming
Intermediate · Course · 1 - 4 Weeks