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: File I/O, Data Import/Export, C++ (Programming Language), C and C++, Programming Principles, Data Structures, File Management, Computer Programming, Data Store, Memory Management, Computer Science, Development Environment
★ 4.7 (243) · Beginner · Course · 1 - 4 Weeks
LearnQuest
Skills you'll gain: Containerization, File I/O, Package and Software Management, Unified Modeling Language, Software Testing, Docker (Software), Development Environment, Unit Testing, Application Deployment, Plot (Graphics), Pandas (Python Package), Scripting, Data Modeling, DevOps, Data Persistence, Programming Principles, Python Programming, Scripting Languages, Data Structures, Computer Programming
★ 4 (210) · Beginner · Specialization · 3 - 6 Months

Corporate Finance Institute
Skills you'll gain: Dashboard, Dashboard Creation, Tableau Software, Interactive Data Visualization, Data Visualization Software, Data Modeling, Data Visualization, SQL, Data Presentation, E-Commerce, Databases, Performance Reporting, Data Manipulation, Data Storytelling, Data Analysis, Performance Analysis, Relational Databases, Business Intelligence, Data Transformation, Financial Analysis
★ 4.8 (110) · Beginner · Specialization · 3 - 6 Months
University of Michigan
Skills you'll gain: Django (Web Framework), Application Development, Web Development, Application Deployment, Database Design, Web Applications, Back-End Web Development, Authentications, Object-Relational Mapping, Hypertext Markup Language (HTML), Data Modeling, UI Components, Relational Databases, Python Programming, Data Validation, User Accounts, Network Protocols, User Interface (UI) Design
★ 4.8 (398) · Intermediate · Course · 1 - 3 Months

Wesleyan University
Skills you'll gain: Statistical Hypothesis Testing, Statistical Analysis, Statistical Software, Correlation Analysis, Statistical Programming, Data Analysis Software, SAS (Software), Analysis, Data Analysis, Statistical Methods, Quantitative Research, Data Manipulation, Probability & Statistics, Analytical Skills, Data Management, Statistical Inference
★ 4.5 (417) · Mixed · Course · 1 - 4 Weeks

New York Institute of Finance
Skills you'll gain: Reinforcement Learning, Recurrent Neural Networks (RNNs), Financial Trading, Deep Learning, Portfolio Management, Machine Learning Methods, Artificial Intelligence and Machine Learning (AI/ML), Model Training, Artificial Neural Networks, Machine Learning Software, Applied Machine Learning, Model Optimization, Markov Model, Securities Trading, Model Deployment, Risk Management
★ 3.4 (251) · Intermediate · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Geographic Information Systems, GIS Software, Geospatial Information and Technology, Spatial Data Analysis, Spatial Analysis, NoSQL, Data Modeling, Database Design, Data Store, Databases, Data Storage Technologies, Database Systems, SQL, Data Storage, Query Languages, Relational Databases
★ 3.5 (100) · Beginner · Course · 1 - 3 Months
University of Michigan
Skills you'll gain: Programming Principles, Computer Programming, Code Reusability, Python Programming, Program Development, Software Installation, Computational Logic, Development Environment
★ 4.8 (106) · Mixed · Course · 1 - 3 Months

Khalifa University
Skills you'll gain: Oral Comprehension, Language Learning, Language Competency, Culture, Vocabulary, Cultural Sensitivity, Grammar, Oral Expression, Literacy, Verbal Communication Skills, Language Interpretation, Translation, and Studies, Student-Centred Learning
★ 4.6 (159) · Beginner · Specialization · 3 - 6 Months
Stanford Online
Skills you'll gain: Bayesian Network, Machine Learning Methods, Statistical Inference, Markov Model, Statistical Machine Learning, Graph Theory, Sampling (Statistics), Applied Machine Learning, Statistical Methods, Probability & Statistics, Algorithms, Probability Distribution, Machine Learning Algorithms
★ 4.6 (491) · Advanced · Course · 1 - 3 Months

Skills you'll gain: Feature Engineering, Dimensionality Reduction, Data Integration, Data Preprocessing, Exploratory Data Analysis, Data Visualization, Plot (Graphics), Data Compilation, Matlab, Scientific Visualization, Data Processing, Data Cleansing, Data Wrangling, Data Manipulation, Histogram, Data Transformation, Data Science, Text Mining, Predictive Modeling, Unstructured Data
★ 4.7 (351) · Intermediate · Course · 1 - 3 Months

Scrimba
Skills you'll gain: Data Structures, Programming Principles, Python Programming, Computer Programming, Web Development Tools, Software Engineering, Web Development
★ 4.5 (43) · Beginner · Course · 1 - 4 Weeks