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 California San Diego
Skills you'll gain: Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, Object Oriented Programming (OOP), User Interface (UI), Object Oriented Design, Computer Programming, Algorithms, Software Engineering, Data Structures, Programming Principles, Software Documentation, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Debugging, R Programming, Data Structures, Microsoft Development Tools, Software Documentation, Programming Principles, Program Development, Development Environment, Data Manipulation, Integrated Development Environments, Scripting Languages, Scripting
Beginner · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Version Control, GitHub, Debugging, Git (Version Control System), Unit Testing, Data Structures, Python Programming, Software Testing, Programming Principles, Scripting, Computer Programming, Web Development, Algorithms, Program Development, Development Environment, Scripting Languages, Integrated Development Environments, Object Oriented Programming (OOP), Jupyter
Beginner · Course · 1 - 3 Months

The University of Edinburgh
Skills you'll gain: Software Engineering, Programming Principles, Animation and Game Design, Software Development, Software Design, Event-Driven Programming, Computer Programming, Computational Thinking, Debugging, Algorithms
Beginner · Course · 1 - 3 Months

Skills you'll gain: C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Data Validation, Object Oriented Design, Programming Principles, Computer Programming, Data Structures, File Management, Integrated Development Environments, Software Documentation, Computer Science, Data Storage
Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Debugging, Java, Algorithms, Java Programming, Statistical Analysis, Software Design, Computer Programming, Data Import/Export, Integrated Development Environments, Data Manipulation, Object Oriented Programming (OOP), Data Analysis, Software Testing, Problem Solving
Beginner · Course · 1 - 3 Months
Stanford University
Skills you'll gain: Algorithms, Bioinformatics, Graph Theory, Computational Thinking, Data Structures, Theoretical Computer Science
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Debugging, Embedded Systems, Integrated Development Environments, C (Programming Language), Development Environment, Electronic Hardware, Electronics, Software Development Tools, Computer Architecture, Computer Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Data Manipulation, Web Scraping, R Programming, Data Analysis, Data Science, Data Structures, Data Import/Export, Exploratory Data Analysis, Programming Principles, Jupyter, Integrated Development Environments
Beginner · Course · 1 - 3 Months
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Pseudocode
Beginner · Course · 1 - 3 Months

University of Pennsylvania
Skills you'll gain: Data Structures, Programming Principles, Python Programming, Computer Programming, Computational Thinking, Scripting, Software Development Tools, Integrated Development Environments, Data Import/Export, Jupyter, File Management
Beginner · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Product Roadmaps, Cross-Functional Collaboration, Product Development, Cross-Functional Team Leadership, Team Building, Collaboration, Meeting Facilitation, Teamwork, Empathy, Team Management, Team Motivation, Cooperation, Personal Development, Product Management, Team Leadership, Strategic Leadership, Discussion Facilitation, Self-Awareness, Leadership, Conflict Management
Beginner · Specialization · 1 - 3 Months