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: Data Storytelling, Data Visualization, Data Ethics, Exploratory Data Analysis, Sampling (Statistics), Data Presentation, Data Visualization Software, Feature Engineering, Regression Analysis, Descriptive Statistics, Statistical Hypothesis Testing, Advanced Analytics, Data Analysis, Tableau Software, Data Science, Statistical Analysis, Machine Learning, Object Oriented Programming (OOP), Interviewing Skills, Python Programming
Build toward a degree
Advanced · Professional Certificate · 3 - 6 Months

Skills you'll gain: SQL, Relational Databases, Stored Procedure, Databases, Query Languages, Jupyter, Data Manipulation, Data Analysis, Pandas (Python Package), Transaction Processing, Python Programming
Beginner · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: Android Studio, Android Development, Object Oriented Programming (OOP), Java Programming, Java, Mobile Development, Data Structures, Integrated Development Environments, Computer Programming, Debugging, Algorithms
Beginner · Course · 1 - 3 Months

Skills you'll gain: Software Development Life Cycle, Software Architecture, Software Design, Software Development Methodologies, Software Design Patterns, Development Environment, Unified Modeling Language, Software Engineering, Web Applications, Software Development Tools, Software Development, Application Deployment, Programming Principles, Front-End Web Development, Back-End Web Development, Python Programming
Beginner · Course · 1 - 3 Months

DeepLearning.AI
Skills you'll gain: Generative AI, Large Language Modeling, Prompt Engineering, PyTorch (Machine Learning Library), Python Programming, Applied Machine Learning, Scalability, Natural Language Processing, Responsible AI, Machine Learning, Reinforcement Learning, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Meta
Skills you'll gain: React Native, iOS Development, Core Data (Software), Restful API, Version Control, Apple iOS, UI/UX Research, Usability Testing, Apple Xcode, Data Structures, Swift Programming, Jest (JavaScript Testing Framework), User Interface (UI), Unix Commands, Git (Version Control System), Persona (User Experience), GitHub, Interaction Design, Mobile Development, Javascript
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Debugging, Object Oriented Design, JSON, Program Development, Data Structures, Python Programming, Microsoft Visual Studio, Development Environment, Scripting, Maintainability, Integrated Development Environments, Package and Software Management, Programming Principles, Computer Programming, Web Scraping, Application Programming Interface (API), File Management, Scalability, Scripting Languages
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Software Design, Programming Principles
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Video Game Development, Game Design, Python Programming, Debugging, Development Testing, Animation and Game Design, Software Testing, Programming Principles, Event-Driven Programming, Business Logic, User Interface (UI), User Interface (UI) Design, Development Environment
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: React Native, Prompt Engineering, Software Development Life Cycle, Flutter (Software), Swift Programming, Mobile Development, Software Architecture, Apple Xcode, Android Studio, Android Development, React Redux, Apple iOS, Responsive Web Design, Git (Version Control System), GitHub, Android (Operating System), Cascading Style Sheets (CSS), React.js, User Experience Design, AI Personalization
Beginner · Professional Certificate · 3 - 6 Months

Vanderbilt University
Skills you'll gain: Git (Version Control System), JUnit, Android Studio, Android Development, Unit Testing, Maintainability, Software Design Patterns, Test Automation, Object Oriented Programming (OOP), Integration Testing, Test Driven Development (TDD), Mobile Development, Software Testing, Testability, Software Engineering, System Testing, Java Programming, Java, Application Security, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Data Structures, C (Programming Language), Development Environment, Software Design Patterns, Programming Principles, Computational Thinking, Computer Programming, Integrated Development Environments, File Management, Algorithms, Maintainability, Simulations, Data Validation
Intermediate · Specialization · 1 - 3 Months