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.

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

University of London
Skills you'll gain: Pseudocode, File I/O, C++ (Programming Language), Integrated Development Environments, Object Oriented Programming (OOP), Development Environment, Algorithms, Debugging, Data Structures
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

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

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

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

Korea Advanced Institute of Science and Technology(KAIST)
Skills you'll gain: Scala Programming, Other Programming Languages, Computer Programming, Programming Principles, Theoretical Computer Science, Extensible Languages and XML, Concept Of Operations
Mixed · 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

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Java Programming, Object Oriented Programming (OOP), File I/O, Programming Principles, Data Structures, Software Engineering, Unit Testing, Debugging, OS Process Management, Performance Tuning
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Rust (Programming Language), Data Structures, Maintainability, Debugging, Software Design Patterns
Intermediate · Course · 1 - 3 Months

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

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

Illinois Tech
Skills you'll gain: Object Oriented Programming (OOP), Web Scraping, Data Structures, Test Driven Development (TDD), Computer Programming, Python Programming, Scripting Languages, User Interface (UI), Open Source Technology, Database Development, Program Development, File I/O, Data Persistence, Software Design
Intermediate · Course · 1 - 3 Months