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: 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

The Hong Kong University of Science and Technology
Skills you'll gain: Server Side, Restful API, Ajax, Node.JS, Web Applications, Web Servers, Web Development, Model View Controller, Javascript, JavaScript Frameworks, PHP (Scripting Language), Authentications, JSON, Hypertext Markup Language (HTML), Software Architecture, Application Development, Real Time Data, Data Storage
Intermediate · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Creative Design, Data Structures, Programming Principles, Software Visualization, Python Programming, Computer Programming, Predictive Modeling, Algorithms, Computational Thinking, Debugging
Beginner · Course · 1 - 4 Weeks

Board Infinity
Skills you'll gain: ABAP RESTful Programming Model (RAP), SAP S/4HANA, Restful API, Core Data (Software), Secure Coding, Security Controls, HTML and CSS, UI Components
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: NumPy, PyTorch (Machine Learning Library), Predictive Modeling, Matplotlib, Artificial Intelligence, Development Environment, Pandas (Python Package), Deep Learning, Classification And Regression Tree (CART), Python Programming, Artificial Neural Networks, Data Manipulation, Tensorflow, Regression Analysis, Machine Learning, Computer Programming, Model Evaluation
Beginner · Course · 3 - 6 Months

Skills you'll gain: Databases, Data Validation
Intermediate · Course · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Linux, Operating System Administration, Operating Systems, Integrated Development Environments, File Systems, Internet Of Things, Development Environment, Embedded Systems, Python Programming, OS Process Management, Computer Hardware, UI Components, Computer Programming
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Embedded Systems, C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Development Testing, System Programming, C (Programming Language), Development Environment, Verification And Validation, Integrated Development Environments, Software Design Patterns, Peripheral Devices, Debugging
Intermediate · Course · 1 - 3 Months

Fred Hutchinson Cancer Center
Skills you'll gain: Debugging, Responsible AI, Maintainability, ChatGPT, OpenAI, Computer Programming Tools, Bioinformatics, Artificial Intelligence, Prompt Engineering, Large Language Modeling, Software Development, Generative AI, Programming Principles, Data Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: C++ (Programming Language), Data Structures, Interactive Design, Program Development, Object Oriented Programming (OOP), Computer Programming, Java Programming, Software Development, Computational Logic, Computer Science
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: GitLab, AI Workflows, Code Review, Integrated Development Environments, Computer Programming Tools, Development Environment, Debugging
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: IntelliJ IDEA, Integrated Development Environments, Java, Development Environment, Debugging, Object Oriented Programming (OOP), Programming Principles
Beginner · Course · 1 - 4 Weeks