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 Michigan
Skills you'll gain: File I/O, Data Import/Export, Python Programming, Functional Design, Programming Principles, Data Structures, Debugging
Beginner · Course · 1 - 3 Months

Illinois Tech
Skills you'll gain: Test Driven Development (TDD), Python Programming, Object Oriented Programming (OOP), Scripting Languages, Computer Programming, Unit Testing, File I/O, Web Development, Program Development, Open Source Technology, Data Processing, Database Application, Data Structures, User Interface (UI)
Build toward a degree
Intermediate · Course · 1 - 3 Months

Ball State University
Skills you'll gain: Data Analysis, Programming Principles, Statistical Analysis, Computer Programming, Python Programming, Object Oriented Programming (OOP), Natural Language Processing, Scripting, NumPy, Algorithms, Debugging, Data Structures
Build toward a degree
Beginner · Course · 1 - 3 Months

Skills you'll gain: Pseudocode, Programming Principles, Debugging, Diagram Design, Functional Design, Computer Programming Tools, Computer Programming, Software Documentation
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Scripting, Scripting Languages, Python Programming, Data Science, Programming Principles, Computer Programming, Software Engineering
Beginner · Course · 1 - 4 Weeks

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

University of Toronto
Skills you'll gain: Swift Programming, iOS Development, Apple iOS, Apple Xcode, Mobile Development, Objective-C (Programming Language), Object Oriented Programming (OOP), Programming Principles, Integrated Development Environments, Image Analysis, Computer Programming
Mixed · Course · 1 - 3 Months

Jordan University of Science and Technology
Skills you'll gain: Object Oriented Programming (OOP), C# (Programming Language), Software Engineering, Data Structures, Software Development, Computer Programming, Programming Principles, Java, Debugging, Query Languages
Intermediate · Course · 1 - 4 Weeks

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

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

University of Leeds
Skills you'll gain: Jupyter, Programming Principles, Computer Programming, Python Programming, Development Environment, Scripting, Software Installation, Data Structures, Data Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Functional Design, Performance Tuning, Application Programming Interface (API)
Intermediate · Course · 1 - 4 Weeks