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 San Diego
Skills you'll gain: Unit Testing, Data Structures, Java, JUnit, Performance Tuning, Debugging, Algorithms, Object Oriented Programming (OOP), Theoretical Computer Science, Unstructured Data
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Database Design, IBM DB2, Relational Databases, Databases, Database Management, PostgreSQL, MySQL, SQL, Database Architecture and Administration, Data Manipulation, Data Modeling, Data Import/Export, Data Integrity
Beginner · Course · 1 - 4 Weeks

University of Michigan
Skills you'll gain: C (Programming Language), Python Programming, Programming Principles, System Programming, Computer Programming, Unix, Computer Science
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Database Design, Database Management Systems, SQL, Relational Databases, Databases, MySQL, Database Administration, Data Integrity, Query Languages, Data Manipulation
Beginner · Course · 1 - 3 Months

Skills you'll gain: Node.JS, Full-Stack Web Development, Server Side, Back-End Web Development, Restful API, Web Applications, Web Development, Cloud Computing, Web Servers, Javascript, GitLab, Authentications, JSON, Computer Science, Middleware
Intermediate · Course · 1 - 4 Weeks
Instituto Tecnológico de Aeronáutica
Skills you'll gain: JUnit, Object Oriented Programming (OOP), Java, Java Programming, Object Oriented Design, Unified Modeling Language, Unit Testing, Software Engineering, Agile Software Development, Software Design, Software Development, Maintainability, Programming Principles, Eclipse (Software)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Android Studio, Android Development, Android (Operating System), Mobile Development, Gradle, Application Development, Integrated Development Environments, Development Environment, Virtual Environment, Extensible Markup Language (XML), UI Components
Beginner · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: Advocacy, Training Programs, Health Systems, Health Policy, Primary Care, Education and Training, Community Health, Smart Goals, Intercultural Competence, Sanitation, Crisis Intervention, Health Promotion, Community Development, Health Care Administration, Train The Trainer, Behavioral Health, Public Health and Disease Prevention, Public Health, Healthcare Ethics, Health Equity
Beginner · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: Field-Programmable Gate Array (FPGA), Hardware Design, Systems Design, Application Specific Integrated Circuits, Test Case, Verification And Validation, Electronic Hardware, Computational Logic, Electrical and Computer Engineering, Simulation and Simulation Software, Embedded Systems, Computer Engineering, Computer Programming
Intermediate · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: Bioinformatics, Data Analysis Software, Big Data, R Programming, Statistical Programming, Data Manipulation, Data Structures, Software Installation, Data Import/Export
Mixed · Course · 1 - 4 Weeks

ESSEC Business School
Skills you'll gain: Marketing Analytics, Customer Analysis, Business Marketing, Business Analytics, Customer Insights, R Programming, Data-Driven Decision-Making, Data Analysis Software, Target Market, Statistical Analysis, Statistical Modeling, Predictive Modeling, Customer Relationship Management, Statistical Methods
Mixed · Course · 1 - 3 Months
University of Michigan
Skills you'll gain: JSON, jQuery, Javascript and jQuery, Ajax, Debugging, Event-Driven Programming, Javascript, PHP (Scripting Language), Object Oriented Programming (OOP), Data Import/Export, Web Applications
Intermediate · Course · 1 - 4 Weeks