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.

Dartmouth College
Skills you'll gain: File I/O, Embedded Software, C (Programming Language), Linux, Embedded Systems, Build Tools, Command-Line Interface, Operating Systems, Program Development, Software Installation, Development Environment, Application Development, Computer Programming
Beginner · Course · 1 - 3 Months

University of Maryland, College Park
Skills you'll gain: Android Development, Mobile Development, Android Studio, Application Development, User Interface (UI), Application Design, Java, Development Environment, Debugging
Mixed · Course · 1 - 3 Months

Skills you'll gain: Version Control, Object Oriented Programming (OOP), C# (Programming Language), Microsoft Visual Studio, Development Environment, Program Development, Integrated Development Environments, Computer Programming, Programming Principles
Beginner · Course · 3 - 6 Months

Board Infinity
Skills you'll gain: SAP S/4HANA, Business Logic, SAP Applications, Business Reporting, Debugging, Object Oriented Design, Report Writing, Programming Principles, Object Oriented Programming (OOP), User Interface (UI), Program Development, UI Components, Test Tools, Data Entry, Eclipse (Software), Software Engineering, Maintainability, Development Environment, Data Structures
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Rust (Programming Language), Authentications, Back-End Web Development, Web Servers, Databases, Web Applications, Secure Coding, Restful API, Application Programming Interface (API), Programming Principles, Data Structures, Debugging
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Open Source Technology, Package and Software Management, Web Development, Linux, Shell Script, Database Design, Ubuntu, Relational Databases, Web Development Tools, Unix Shell, Test Driven Development (TDD), Python Programming, Linux Administration, Databases, Object Oriented Programming (OOP), Full-Stack Web Development, Scripting Languages, Computer Programming, Javascript, Database Management
Build toward a degree
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: File I/O, Software Design Patterns, Software Documentation, Testability, Development Testing, Package and Software Management
Advanced · Course · 3 - 6 Months

Skills you'll gain: PHP (Scripting Language), File I/O, Web Applications, Responsive Web Design, MySQL, Web Design and Development, Server Side, HTML and CSS, Back-End Web Development, Database Development, File Management, Data Structures
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Linux, Linux Commands, C (Programming Language), System Programming, Unix Commands, Command-Line Interface, Programming Principles, Development Environment, Computer Programming Tools, Scripting, Data Structures, Program Development, Debugging
Mixed · Course · 1 - 3 Months

Skills you'll gain: Microsoft Visual Studio, C# (Programming Language), Integrated Development Environments, Programming Principles, Computer Programming, Command-Line Interface, Computational Logic
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Rmarkdown, R (Software), Data Import/Export, R Programming, Ggplot2, Data Manipulation, Plotly, Data Visualization, Web Scraping, Interactive Data Visualization, Data Visualization Software, Data Cleansing, Data Preprocessing, Data Transformation, Statistical Programming, Programming Principles, Data Structures
Beginner · Course · 1 - 3 Months

Skills you'll gain: Apple Xcode, UI Components, iOS Development, User Interface (UI) Design, Apple iOS, Mobile Development, User Interface and User Experience (UI/UX) Design, Swift Programming, Responsive Web Design, User Interface (UI), Application Design, Animations, Interactive Design, Data Visualization Software, Interactive Data Visualization, Application Development, Model View Controller, Programming Principles, Application Programming Interface (API), Software Design
Intermediate · Specialization · 3 - 6 Months