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 Washington
Skills you'll gain: Other Programming Languages, Software Design, Ruby (Programming Language), Programming Principles, Data Structures, Software Architecture, Computer Programming, Functional Design, Debugging
Intermediate · Course · 1 - 4 Weeks

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, Software Design, Software Design Patterns, Functional Design, Event-Driven Programming, Java, Programming Principles, Performance Tuning, Data Structures, Algorithms
Intermediate · Course · 1 - 3 Months

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

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 London
Skills you'll gain: Debugging, Development Environment, Javascript, Computer Programming Tools, Computer Graphics, Software Development Tools, Computer Programming, Graphical Tools, Interactive Design, Human Computer Interaction, Data Management
Beginner · 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 Colorado System
Skills you'll gain: Computational Thinking, C (Programming Language), Data Structures, Programming Principles, Computer Programming, Program Development, Data Storage, Debugging
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Python Programming, Computer Programming, Programming Principles, Debugging, Software Design Patterns, Functional Design, Computational Thinking, Algorithms, Data Structures
Mixed · Course · 1 - 3 Months

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