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: Remote Access Systems, TCP/IP, Network Protocols, System Programming, Operating Systems, Hardware Architecture, Performance Tuning, Computer Hardware
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), File I/O, Object Oriented Design, Java, Java Programming, File Management, Application Development, Programming Principles, Data Structures, Data Management, Integrated Development Environments
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Debugging, C++ (Programming Language), Software Documentation, API Design, Program Development, Pseudocode, Software Architecture, Software Design, Maintainability, Computational Thinking, System Programming, Data Structures, Programming Principles, Computer Programming, Generative AI Agents, Integrated Development Environments, Technical Documentation, Generative AI, Application Development, Data Validation
Beginner · Professional Certificate · 3 - 6 Months
University of London
Skills you'll gain: Computer Science, Debugging, Development Environment, Computer Systems, Web Applications, Arithmetic, Computer Literacy, Javascript, Network Security, Computer Networking, Computer Programming Tools, Applied Mathematics, Computer Graphics, Web Design and Development, Software Development Tools, Cybersecurity, Computational Thinking, Computer Programming, General Mathematics, Problem Solving
Build toward a degree
Beginner · Specialization · 1 - 3 Months

Logical Operations
Skills you'll gain: R Programming, R (Software), Plot (Graphics), Data Visualization, Statistical Visualization, Statistical Modeling, Data Analysis, Data Science, Statistical Analysis, Data Import/Export, Statistical Machine Learning, Machine Learning Methods, Machine Learning, Decision Tree Learning, Machine Learning Algorithms, Regression Analysis, Data Structures, Computer Programming, Computer Programming Tools, Software Development
Mixed · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Debugging, Mobile Development
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Operations Research, Algorithms, Graph Theory, Linear Algebra, Combinatorics, Computational Thinking, Mathematical Modeling, Theoretical Computer Science, Python Programming
Build toward a degree
Advanced · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Unity Engine, Debugging, Object Oriented Programming (OOP), Video Game Development, C# (Programming Language), Game Design, Computer Programming, Data Storage, Development Environment, User Interface (UI), Scripting
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Basic Electrical Systems, Wireless Networks, C and C++, Computer Programming, Control Systems, Interactive Design, Software Installation, Electronic Components, C++ (Programming Language), Electronics, Display Devices, Embedded Software, Embedded Systems, Robotics, Computer Programming Tools, Development Environment, Integrated Development Environments, Electrical Wiring
Intermediate · Specialization · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), Electronic Components, Computer Hardware, Integrated Development Environments, Computer Programming, Electronics Engineering, Network Protocols, Development Environment, Digital Communications, Open Source Technology
Mixed · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Unreal Engine, C++ (Programming Language), Data Structures, Video Game Development, Data Storage, Object Oriented Programming (OOP), Computer Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Computational Thinking, Programming Principles, Python Programming, Software Installation, Algorithms, Computer Programming, Development Environment
Mixed · Course · 1 - 4 Weeks