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: System Programming, Interoperability, Object Oriented Programming (OOP), Data Structures, Software Development, Debugging
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: System Programming, Debugging, Secure Coding, C++ (Programming Language), Programming Principles, Software Development, Object Oriented Programming (OOP)
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, 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, Data Store, Software Documentation, Computer Science, Functional Design, Pseudocode, Maintainability
Beginner · Specialization · 3 - 6 Months

Johns Hopkins University
Skills you'll gain: Performance Tuning, Data-oriented programming, System Programming, C and C++, Computer Architecture, Algorithms, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months

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

Rice University
Skills you'll gain: Apache Kafka, Apache Spark, Apache Hadoop, Distributed Computing, Dataflow, Java Programming, Java, Software Architecture, Systems Architecture, Scala Programming, Data Structures, System Programming, Programming Principles, Servers, Application Frameworks, Debugging, Algorithms, Performance Tuning, Functional Design, Performance Testing
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), C++ (Programming Language), Object Oriented Design, Application Design, Solution Design, Software Visualization, Program Development, Verification And Validation
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

Skills you'll gain: Computer Graphics, Visualization (Computer Graphics), C# (Programming Language), .NET Framework, Graphical Tools, Animations, Animation and Game Design, Image Analysis, User Interface (UI), User Interface (UI) Design, Application Development
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Generative AI, PyTorch (Machine Learning Library), Generative Model Architectures, Multimodal Prompts, Artificial Neural Networks, Deep Learning, Large Language Modeling, Tensorflow, Convolutional Neural Networks
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: PHP (Scripting Language), Object Oriented Programming (OOP), Object Oriented Design, Web Development, Maintainability, Software Engineering
Intermediate · Guided Project · Less Than 2 Hours