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.

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

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

LearnQuest
Skills you'll gain: Model View Controller, Swift Programming, iOS Development, Apple iOS, Data Structures, Object Oriented Programming (OOP), Mobile Development, Apple Xcode, Computer Programming
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, Functional Design, Computer Science, Maintainability
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Data Structures, Python Programming, Programming Principles, Computer Programming, Program Development, Object Oriented Programming (OOP), Scripting, Debugging, Scripting Languages, Algorithms, Functional Design
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: Integrated Development Environments, Software Design Patterns
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Spring Boot, Application Development, API Testing, Application Frameworks, Software Testing, Test Case, Development Environment, Model View Controller, Software Development Tools, Java Platform Enterprise Edition (J2EE), Authentications, Software Design Patterns, SQL, Data Persistence, Mockups, JSON, User Interface (UI), Functional Design, Databases, Dependency Analysis
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Plotly, Object Oriented Programming (OOP), Matplotlib, Pandas (Python Package), Data Visualization, Interactive Data Visualization, Seaborn, Data Analysis, NumPy, Data Visualization Software, Data Structures, Restful API, Python Programming, Application Programming Interface (API), Scatter Plots, Data Manipulation, Programming Principles, Computer Programming, Data Transformation, Program Development
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Apache Maven, Java Programming, Java, Build Tools, Eclipse (Software), Database Application, Full-Stack Web Development, CI/CD, Web Applications, Application Servers, Software Configuration Management, Continuous Integration, Application Development, Business Logic, UI Components, Integrated Development Environments, Role-Based Access Control (RBAC), Automation, Software Design Patterns, Program Development
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: C++ (Programming Language), System Programming, Algorithms, Performance Tuning
Advanced · Course · 1 - 3 Months

Scrimba
Skills you'll gain: React.js, UI Components, Front-End Web Development, Web Content Accessibility Guidelines, User Interface (UI), JavaScript Frameworks, Interaction Design, Web Development Tools, Event-Driven Programming, Web Frameworks, Cascading Style Sheets (CSS), Application Programming Interface (API)
Intermediate · Course · 3 - 6 Months