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.

University of Michigan
Skills you'll gain: Statistical Hypothesis Testing, Sampling (Statistics), Statistical Modeling, Statistical Methods, Statistical Inference, Statistics, Bayesian Statistics, Data Visualization, Plot (Graphics), Data Literacy, Scientific Visualization, Matplotlib, Statistical Visualization, Statistical Software, Probability & Statistics, Model Evaluation, Data-Driven Decision-Making, Statistical Analysis, Jupyter, Python Programming
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Python Programming, Command-Line Interface, Programming Principles, Computer Programming, Scripting, Computer Programming Tools, Program Development, Development Environment
Beginner · Guided Project · Less Than 2 Hours

University of Michigan
Skills you'll gain: Database Design, SQL, MySQL, HTML and CSS, PHP (Scripting Language), Relational Databases, JSON, Database Management, jQuery, Hypertext Markup Language (HTML), Javascript and jQuery, Ajax, Databases, Data Modeling, Database Application, Database Development, Debugging, Web Applications, Query Languages, Javascript
Intermediate · Specialization · 3 - 6 Months
University of California San Diego
Skills you'll gain: Design Research, Visual Design, Interaction Design, User Experience Design, Statistical Analysis, Usability, Experience Design, UI/UX Research, Ideation, User Interface (UI), Experimentation, Interactive Design, User Interface and User Experience (UI/UX) Design, Human Computer Interaction, A/B Testing, Human Factors, Collaborative Software, Telecommuting, R Programming, Storyboarding
Intermediate · Specialization · 3 - 6 Months

Coursera
Skills you'll gain: Go To Market Strategy, Product Marketing, Campaign Planning, Product Lifecycle Management, Marketing Planning, Campaign Management, Dependency Analysis, Marketing Effectiveness, Plan Execution, Marketing Budgets, Marketing Channel, Conversion Funnel Analysis, Milestones (Project Management), Planning, Release Management, Resource Allocation, Coordinating, Cross-Functional Collaboration, Marketing Analytics, Customer Acquisition Management
Beginner · Course · 1 - 4 Weeks

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

University of Michigan
Skills you'll gain: File I/O, Data Import/Export, Python Programming, Programming Principles, Data Structures
Beginner · Course · 1 - 3 Months

Meta
Skills you'll gain: React Native, Jest (JavaScript Testing Framework), Version Control, User Research, UI/UX Research, Usability Testing, Unix Commands, Restful API, Git (Version Control System), Persona (User Experience), GitHub, Interaction Design, User Experience Design, SQL, User Interface and User Experience (UI/UX) Design, Mobile Development, Design Research, React.js, Web Development Tools, Javascript
Beginner · Specialization · 3 - 6 Months

The Hong Kong University of Science and Technology
Skills you'll gain: Differential Equations, Linear Algebra, Matlab, Engineering Analysis, Numerical Analysis, Integral Calculus, Mathematical Software, Mechanical Engineering, Calculus, Engineering Calculations, electromagnetics, Algebra, Applied Mathematics, Mathematical Modeling, Engineering, Simulation and Simulation Software, Advanced Mathematics, Geometry, Estimation, Mechanics
Beginner · Specialization · 3 - 6 Months

University of California San Diego
Skills you'll gain: Graph Theory, Logical Reasoning, Cryptographic Protocols, Combinatorics, Computational Logic, Deductive Reasoning, Cryptography, Probability, Key Management, Computational Thinking, Encryption, Probability & Statistics, Programming Principles, Network Analysis, Theoretical Computer Science, Bayesian Statistics, Python Programming, Cybersecurity, Algorithms, Arithmetic
Beginner · Specialization · 3 - 6 Months

Rice University
Skills you'll gain: Data Visualization Software, File I/O, Data Visualization, Plot (Graphics), Statistical Visualization, Package and Software Management, Python Programming, Data Cleansing, Programming Principles, Data Processing, Data Persistence, Data Mapping, Data Manipulation, Code Reusability, Data Dictionary, Development Environment, Data Access, Computational Logic, Data Wrangling, Data Analysis
Beginner · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Excel Macros, Programming Principles, Visual Basic (Programming Language), Program Development, Object Oriented Programming (OOP), Computer Programming, Debugging, Data Cleansing, Problem Solving, Code Reusability, Spreadsheet Software, Data Management, Automation
Beginner · Course · 1 - 3 Months