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 Presentation, Data Storytelling, Presentations, Data Cleansing, Data Visualization, Rmarkdown, Data-Driven Decision-Making, Data Validation, Data Ethics, Analytical Skills, Interactive Data Visualization, Dashboard, Spreadsheet Software, Ggplot2, SQL, Data Literacy, Data Collection, Sampling (Statistics), Data Analysis, Google Analytics
Beginner · Professional Certificate · 3 - 6 Months

University of California, Davis
Skills you'll gain: Virtual Teams, Team Leadership, Intercultural Competence, Organizational Leadership, Team Management, Cultural Diversity, Team Building, Diversity and Inclusion, Cultural Sensitivity, Leadership, Leadership and Management, Cross-Functional Collaboration, Cultural Responsiveness, Interpersonal Communications, Conflict Management, Relationship Building, Culture, Stakeholder Communications, Communication Strategies, Diversity Awareness
Beginner · Specialization · 3 - 6 Months

Universidad Nacional de Colombia
Skills you'll gain: Mathematical Modeling, Machine Learning, Applied Mathematics, System Design and Implementation, Software Development Tools, Programming Principles, Logical Reasoning, Arithmetic, Algorithms
Intermediate · Course · 1 - 4 Weeks

Scrimba
Skills you'll gain: JSON, Event-Driven Programming, Javascript, Mobile Development, Data Structures, Application Development, Object Oriented Programming (OOP), Video Game Development, Web Applications, Data Persistence, Scripting, Computer Programming, Front-End Web Development, Web Development, Debugging
Beginner · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Model Evaluation, Statistical Modeling, Applied Machine Learning, Unsupervised Learning, Statistical Machine Learning, Classification And Regression Tree (CART), Data Science, Decision Tree Learning, Statistical Methods, Artificial Neural Networks, Statistical Analysis, Regression Analysis, Predictive Modeling, Classification Algorithms, Supervised Learning, R Programming, Machine Learning Algorithms, Dimensionality Reduction, Machine Learning, Random Forest Algorithm
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Cyber Operations, Threat Management, Threat Detection, Cybersecurity, Scripting, Python Programming, Encryption, Network Protocols
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Data Structures, Graph Theory, Algorithms, Java, Java Programming, Theoretical Computer Science, Computer Programming, Computational Thinking, Programming Principles, Performance Tuning, Object-Relational Mapping, Computer Programming Tools
Intermediate · Specialization · 1 - 3 Months

University of California, Davis
Skills you'll gain: Chemical Engineering, Hazard Analysis, Safety Assurance, Process Engineering, Engineering Analysis, Environmental Engineering, Engineering Calculations, Mathematical Modeling, Applied Mathematics
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Descriptive Statistics, Data Analysis, Exploratory Data Analysis, Quantitative Research, R Programming, Statistical Analysis, Probability & Statistics, Statistics, Data Science
Beginner · Guided Project · Less Than 2 Hours

Universidad Nacional Autónoma de México
Skills you'll gain: Package and Software Management, Jupyter, Ubuntu, Python Programming, Computational Thinking, Mac OS, Scripting Languages, Programming Principles, Cross Platform Development, Software Documentation, Command-Line Interface, Data Structures
Beginner · Course · 1 - 3 Months

MathWorks
Skills you'll gain: Medical Imaging, Magnetic Resonance Imaging, Image Analysis, X-Ray Computed Tomography, Data Import/Export, Biomedical Engineering, Matlab, Scientific Visualization, Deep Learning
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Agile Methodology, Scrum (Software Development), Software Testing, Agile Software Development, Embedded Systems, Docker (Software), Git (Version Control System), Linux Administration, System Programming, Linux, C++ (Programming Language), Internet Of Things, File Systems
Build toward a degree
Advanced · Course · 1 - 4 Weeks