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 California, Davis
Skills you'll gain: Threat Modeling, Open Web Application Security Project (OWASP), Secure Coding, Cryptography, Authentications, Exploit development, Encryption, Penetration Testing, Vulnerability Assessments, Data Security, Application Security, Exploitation techniques, Security Controls, Software Design, C and C++, Verification And Validation, Java, Programming Principles, Debugging, Cybersecurity
Intermediate · Specialization · 3 - 6 Months

Multiple educators
Skills you'll gain: Tensorflow, Keras (Neural Network Library), Machine Learning Methods, Model Evaluation, Machine Learning, Google Cloud Platform, Machine Learning Algorithms, Applied Machine Learning, Financial Trading, Reinforcement Learning, Recurrent Neural Networks (RNNs), Supervised Learning, Data Pipelines, Time Series Analysis and Forecasting, Statistical Machine Learning, Technical Analysis, Deep Learning, Securities Trading, Portfolio Management, Artificial Intelligence and Machine Learning (AI/ML)
Intermediate · Specialization · 1 - 3 Months

Universitat Pompeu Fabra of Barcelona
Skills you'll gain: Digital Signal Processing, Music, Music Theory, Open Source Technology, Python Programming, Time Series Analysis and Forecasting, NumPy, Mathematical Modeling
Intermediate · Course · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: Biostatistics, Bioinformatics, Exploratory Data Analysis, Statistical Analysis, Statistical Methods, Statistical Hypothesis Testing, Statistics, R Programming, Probability & Statistics, Data Preprocessing, Data Analysis, Statistical Inference, Regression Analysis, Data Pipelines, Data Transformation, Logistic Regression
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Data Collection, Marketing, Marketing Analytics, Google Analytics, Digital Marketing, Customer Data Management, Application Programming Interface (API), Market Data, Personally Identifiable Information, Web Analytics, Information Privacy, API Gateway, Data Integration, Data Analysis, Data-Driven Decision-Making, Advertising
Beginner · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Programming Principles, C++ (Programming Language), Data Structures, Computer Programming, Algorithms, Development Environment, Debugging
Beginner · Course · 1 - 3 Months

ISAE-SUPAERO
Skills you'll gain: Mechanics, Thermal Management, Energy and Utilities, Hazard Analysis, Risk Control, Physical Science, Simulations, Applied Mathematics, Control Systems, Systems Of Measurement, Vibrations, Engineering Analysis, Engineering Calculations, Physics, Engineering, Mathematical Modeling
Beginner · Specialization · 3 - 6 Months
Duke University
Skills you'll gain: Database Design, MySQL, Relational Databases, SQL, Data Modeling, Databases, Business Intelligence, Big Data, Business Analysis, Data Analysis
Mixed · Course · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: Regression Analysis, Statistical Modeling, R Programming, Linear Algebra, Data Science, Mathematical Modeling, Data Modeling, Statistics, Statistical Analysis, Applied Mathematics, General Mathematics, Derivatives
Advanced · Course · 1 - 3 Months

Wesleyan University
Skills you'll gain: Descriptive Statistics, Data Manipulation, Data Presentation, Data Management, Data Literacy, Graphing, SAS (Software), Peer Review, Data Analysis, Statistics, Research Reports, Exploratory Data Analysis, Python Programming
Mixed · Course · 1 - 3 Months

King Abdullah University of Science and Technology
Skills you'll gain: Statistical Analysis, Bioinformatics, Unix, Scientific Visualization, R Programming, Rmarkdown, Unix Commands, Data Analysis, Data Quality, Statistical Hypothesis Testing, Exploratory Data Analysis, Pandas (Python Package), Python Programming, NumPy, Data Manipulation
Beginner · Course · 1 - 4 Weeks
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Electronics, Software Development Tools, Hardware Architecture, Data Structures, Electronic Hardware, Microarchitecture, Programming Principles, Performance Tuning, Computer Architecture, Control Systems, Computer Programming
Intermediate · Specialization · 3 - 6 Months