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 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

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: Swift Programming, Apple iOS, Unit Testing, Apple Xcode, Development Testing, Mobile Development, Object Oriented Programming (OOP), Data Structures, Application Development, Software Design, Debugging, Functional Design
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

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

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Data Structures, Distributed Computing, Algorithms, Functional Design, Scalability, Java Programming, Other Programming Languages, Performance Tuning
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

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
University of Glasgow
Skills you'll gain: Javascript, HTML and CSS, Web Development, Web Applications, Front-End Web Development, Event-Driven Programming, Computational Thinking, Software Testing, Application Development, Software Development, Software Development Tools, Computer Programming Tools, Development Environment, Programming Principles, Computer Graphics, Animations
Beginner · Course · 1 - 4 Weeks

Rice University
Skills you'll gain: Apache Kafka, Apache Spark, Apache Hadoop, Distributed Computing, Java, Software Architecture, Systems Architecture, Programming Principles, Scala Programming, Servers, Algorithms
Intermediate · Course · 1 - 3 Months

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

JetBrains
Skills you'll gain: Kotlin, Object Oriented Programming (OOP), Java, Java Programming, Android Development, Functional Design, Interoperability, Computer Programming, Unit Testing
Intermediate · Course · 1 - 3 Months