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: User Research, Usability Testing, Stakeholder Engagement, User Experience Design, User Experience, Experience Design, Persona (User Experience), Workflow Management, Human Centered Design, User Centered Design, UI/UX Strategy, Wireframing, Prototyping, Design Thinking, Cross-Functional Collaboration, Information Architecture, Storytelling
Beginner · Course · 1 - 3 Months

Universidad Nacional Autónoma de México
Skills you'll gain: R Programming, Statistical Programming, Ggplot2, Data Manipulation, Simulations, Statistical Software, Statistical Visualization, Visualization (Computer Graphics), Data Processing, Graphing, Programming Principles, Scripting, Exploratory Data Analysis, Data Structures, Software Installation, Package and Software Management
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Data Structures, Algorithms, Data Storage, Programming Principles, File Systems, Graph Theory, Computer Programming, C++ (Programming Language), Java, Debugging
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Data Structures, Graph Theory, Operations Research, Public Key Cryptography Standards (PKCS), Cryptography, Computational Thinking, Design Strategies, Pseudocode, Programming Principles, Applied Mathematics, Computer Science, Program Development, Encryption, Combinatorics, Analysis, Mathematical Modeling, Tree Maps, Python Programming
Build toward a degree
Advanced · Specialization · 3 - 6 Months

University of Minnesota
Skills you'll gain: Software Testing, JUnit, Verification And Validation, Unit Testing, Test Case, Test Automation, Development Testing, Test Planning, Code Coverage, Software Quality Assurance, Functional Testing, Testability, Integration Testing, Test Data, Issue Tracking
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Javascript, Scripting Languages, Node.JS, TypeScript, Data Manipulation, JSON, Web Development Tools, Generative AI, Data Structures, Programming Principles, Object Oriented Programming (OOP), Web Servers, Development Environment
Intermediate · Course · 1 - 4 Weeks

Meta
Skills you'll gain: Data Storytelling, Business Metrics, Key Performance Indicators (KPIs), Data Management, Data Collection, Data Governance, Bayesian Statistics, Data Visualization, Descriptive Statistics, Statistical Hypothesis Testing, Information Privacy, Data Cleansing, Pandas (Python Package), Data Quality, Data Analysis, Data Visualization Software, Spreadsheet Software, Exploratory Data Analysis, SQL, Python Programming
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Microsoft Visual Studio, Development Environment, Maintainability, Integrated Development Environments, Scalability, Software Development Tools, Python Programming, Debugging, Computer Programming Tools, Software Installation
Advanced · Course · 1 - 4 Weeks

Princeton University
Skills you'll gain: Data Structures, Algorithms, Java, Performance Testing, Computer Programming, Java Programming, Theoretical Computer Science, Object Oriented Programming (OOP)
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Event-Driven Programming, Payment Systems, User Interface (UI), MySQL, Application Design, Database Application, Python Programming, Transaction Processing, Application Development, User Interface (UI) Design, Database Management, Software Design, Debugging
Mixed · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Excel Macros, Visual Basic (Programming Language), Programming Principles, Data Import/Export, Microsoft Excel, Problem Solving, Data Structures, Computer Programming, Scripting, Simulations, Algorithms, Spreadsheet Software, UI Components, Debugging, Data Management, User Interface (UI), Data Cleansing, Automation, Data Validation
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: LLM Application, LangChain, Large Language Modeling, OpenAI, Natural Language Processing, Generative AI Agents, ChatGPT, Responsible AI, Application Programming Interface (API), Generative AI, Restful API, Agentic systems, Open Source Technology, MLOps (Machine Learning Operations), Data Processing, Python Programming
Beginner · Course · 1 - 4 Weeks