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.

Johns Hopkins University
Skills you'll gain: C and C++, Distributed Computing, Hardware Architecture, Programming Principles, Computer Architecture, Data Access, Program Development, Algorithms, Python Programming, Computer Programming Tools, Data Sharing, Development Environment, Debugging
Beginner · Course · 1 - 3 Months

Logical Operations
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Database Application, Python Programming, Unit Testing, Computer Programming, Restful API, Cross Platform Development, Package and Software Management, Scripting, Data Science, Program Development, Computer Programming Tools, Software Development, Data Processing, Debugging, Programming Principles, User Interface (UI) Design, Regression Analysis, Machine Learning
Intermediate · Specialization · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Software Documentation, Software Engineering, Technical Documentation, Maintainability, Programming Principles, Software Design, Python Programming
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Scalability, Application Design, Event-Driven Programming, Object Oriented Programming (OOP), Functional Design, Application Development, User Flows, Computer Programming, Integrated Development Environments, Software Architecture, Debugging, Mobile Development, Data Validation, Data Analysis
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Generative AI, Cloud Deployment, Artificial Intelligence, Data-Driven Decision-Making, Computer Programming
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Application Development, Object Oriented Design, Data Visualization Software, Visualization (Computer Graphics), Programming Principles, Computer Graphics, Computational Thinking, Graphing, Verification And Validation, Program Development, Development Environment, Software Visualization, Graphic and Visual Design, Data Presentation, Software Design Patterns, Application Design, Data Validation, Computer Programming
Beginner · Specialization · 3 - 6 Months

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

Johns Hopkins University
Skills you'll gain: Performance Tuning, Data-oriented programming, System Programming, C and C++, Computer Architecture, Algorithms, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months

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

Skills you'll gain: System Programming, Debugging, Secure Coding, C++ (Programming Language), Programming Principles, Software Development, Object Oriented Programming (OOP)
Intermediate · Course · 1 - 4 Weeks

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

University of Colorado System
Skills you'll gain: Unreal Engine, Object Oriented Programming (OOP), C++ (Programming Language), Debugging, Computer Programming, Video Game Development, 3D Assets, Development Environment, Software Documentation, Data Storage, Scripting
Intermediate · Course · 1 - 4 Weeks