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.

DeepLearning.AI
Skills you'll gain: LLM Application, Tool Calling, Large Language Modeling, Unstructured Data, Generative AI Agents, Query Languages, SQL, Web Services, Prompt Engineering, Application Development, Database Management, Application Programming Interface (API), Data Processing
Intermediate · Project · Less Than 2 Hours

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Object Oriented Design, Programming Principles, Data Structures, Data Modeling, Data Management
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Unified Modeling Language, Visual Basic (Programming Language), Data Structures, Object Oriented Design, Data Modeling, Microsoft Visual Studio, Program Development, Object Oriented Programming (OOP), .NET Framework, Computer Programming
Intermediate · Course · 1 - 4 Weeks

Codio
Skills you'll gain: Go (Programming Language), Object Oriented Programming (OOP), Web Services, Debugging, Python Programming, Restful API, Server Side, Performance Tuning, Version Control, Software Engineering
Beginner · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: C (Programming Language), Computer Architecture, Embedded Software, Computer Programming, Program Development, Data Structures, Linux, Debugging
Beginner · Course · 1 - 3 Months

Dartmouth College
Skills you'll gain: C (Programming Language), Programming Principles, Embedded Systems, Program Development, Computer Engineering, Development Environment, Algorithms, Data Structures, System Programming, Computer Programming, Debugging
Beginner · Course · 1 - 3 Months

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: Object Oriented Programming (OOP), Javascript, Web Applications, Application Programming Interface (API), Programming Principles, JSON, Restful API, Front-End Web Development, Event-Driven Programming, Responsive Web Design, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Programming Principles, Computer Programming, Software Documentation, Computer Science
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Javascript, Software Design Patterns, Data Management, Data Structures, Prototyping, Web Development, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

University of London
Skills you'll gain: Debugging, Development Environment, Javascript, Program Development, Computer Graphics, Computer Programming, User Interface (UI), Interactive Design, Human Computer Interaction, Data Management, Animations
Beginner · Course · 1 - 4 Weeks

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