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.

Skills you'll gain: C++ (Programming Language), File I/O, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Computer Programming, Data Structures, Algorithms, Integrated Development Environments, Debugging
Beginner · 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: Development Environment, Computer Graphics, Visualization (Computer Graphics), Cross Platform Development, Computer Graphic Techniques, C++ (Programming Language), Video Game Development, Program Development, Software Installation, System Configuration, Debugging
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Apache Maven, File I/O, Data Import/Export, Object Oriented Programming (OOP), JSON, Java Programming, Debugging, Object Oriented Design, JUnit, Software Documentation, Data Structures, Computer Programming, Restful API, Integrated Development Environments, Java, Programming Principles, Data Validation, Network Protocols, Unit Testing, Computer Science
Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Program Development, Debugging, Python Programming, Computer Programming, Pseudocode, Game Design, Interactive Design, Design and Product, Creative Design, Computer Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Unified Modeling Language, Visual Basic (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Modeling, Microsoft Development Tools, Computer Programming, .NET Framework, Software Engineering, Data Structures
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Ruby (Programming Language), Program Development, File I/O, Development Environment, Maintainability, Data Structures, Computer Programming, Debugging, Performance Tuning
Beginner · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Unit Testing, Growth Mindedness, Data Structures, Graph Theory, Event-Driven Programming, Social Network Analysis, Interactive Data Visualization, Java, Java Programming, Network Analysis, Object Oriented Programming (OOP), Technical Communication, User Interface (UI), JUnit, Object Oriented Design, Computer Programming, Adaptability, Performance Tuning, Algorithms, Problem Solving
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: SAS (Software), Data Analysis, Exploratory Data Analysis, Statistical Programming, Data Manipulation, Data Transformation, Data Import/Export, Data Validation
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Program Development, C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Development Environment, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours
Skills you'll gain: Unified Modeling Language, File I/O, Visual Basic (Programming Language), Database Management, System Software, Databases, Relational Databases, Algorithms, Computer Architecture, Network Security, Computer Hardware, SQL, Computer Science, Development Environment, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Computer Programming, Microsoft Development Tools, Programming Principles
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Data Manipulation, Data Access, Data Import/Export, SAS (Software), Microsoft Excel, Data Analysis, Statistical Programming, Data Preprocessing, Debugging
Intermediate · Course · 1 - 3 Months