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

Skills you'll gain: Ruby (Programming Language), Object Oriented Programming (OOP), Debugging, Development Environment, Integrated Development Environments, Computer Programming, Programming Principles, Apple Xcode, Software Installation, Microsoft Windows, Command-Line Interface
Beginner · Course · 1 - 3 Months

Skills you'll gain: Eclipse (Software), Integrated Development Environments, Java Programming, Object Oriented Programming (OOP), Development Environment, Program Development, Software Installation, Debugging, Computer Programming
Beginner · Course · 1 - 3 Months

Skills you'll gain: C# (Programming Language), Software Architecture, .NET Framework, Object Oriented Design, Distributed Computing, Scalability, Object Oriented Programming (OOP), Software Design, Microservices, Debugging, MongoDB, Data Access, Model View Controller, Performance Tuning, Computer Programming, Maintainability, NoSQL
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Java, Mobile Development, Java Programming, Object Oriented Programming (OOP), Application Frameworks, Android Development, Application Development, Program Development, Software Development
Intermediate · Guided Project · Less Than 2 Hours

University of Colorado Boulder
Skills you'll gain: R Programming, Rmarkdown, Tidyverse (R Package), Ggplot2, Data Import/Export, Data Visualization, Data Analysis, Data Visualization Software, Data Science, Data Manipulation, Data Storytelling, Statistical Analysis, Data Cleansing, Data Integration, Data Transformation, Communication
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Object Oriented Design, Computer Programming, Programming Principles, Data Structures, Debugging
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: NumPy, Debugging, Pandas (Python Package), Statistics, Data Analysis, Descriptive Statistics, Data-oriented programming, Data Processing, Maintainability, Numerical Analysis, Critical Thinking, Technical Support
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Version Control, Software Documentation, Microsoft Copilot, Microsoft Visual Studio, Program Development, Statistical Analysis, Development Environment, Programming Principles, Debugging
Beginner · Course · 1 - 3 Months

University of Geneva
Skills you'll gain: Data-oriented programming, Computational Thinking, Operating Systems
Intermediate · Course · 1 - 3 Months

Pohang University of Science and Technology(POSTECH)
Skills you'll gain: Internet Of Things, Wireless Networks, General Networking, Emerging Technologies, Embedded Software, Communication Systems, Electronic Hardware, Embedded Systems, Information Technology Architecture, Computer Programming Tools, Python Programming, Problem Solving
Beginner · Course · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: Performance Tuning, OS Process Management, Data Structures, C and C++, Performance Testing, Distributed Computing, Hardware Architecture, Algorithms, Computer Architecture, Program Development, Debugging
Intermediate · Course · 1 - 3 Months