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: React Native, Prompt Engineering, Software Development Life Cycle, Flutter (Software), Swift Programming, Mobile Development, Software Architecture, Apple Xcode, Android Studio, Android Development, React Redux, Apple iOS, Responsive Web Design, Git (Version Control System), GitHub, Android (Operating System), Cascading Style Sheets (CSS), React.js, User Experience Design, AI Personalization
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: C++ (Programming Language), Object Oriented Design, Object Oriented Programming (OOP), Debugging, Data Structures, C (Programming Language), Development Environment, Software Design Patterns, Programming Principles, Computational Thinking, Computer Programming, Integrated Development Environments, File Management, Algorithms, Maintainability, Simulations, Data Validation
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: PL/SQL, Oracle Databases, SQL, Stored Procedure, Computational Logic, Programming Principles, Business Logic, Data Validation, Data Integrity
Mixed · Course · 1 - 4 Weeks

University of Amsterdam
Skills you'll gain: Qualitative Research, Scientific Methods, Statistical Analysis, Statistical Hypothesis Testing, Research, Research Design, Sampling (Statistics), Research Reports, Science and Research, Interviewing Skills, Data Analysis, Data Collection, Research Methodologies, Social Sciences, Surveys, Quantitative Research, Statistics, Regression Analysis, Statistical Inference, R Programming
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Cryptography, Object Oriented Programming (OOP), Encryption, Application Development, Data Structures, Software Development, Automation, Machine Learning Algorithms, Data Processing, Public Key Cryptography Standards (PKCS), Databases, Python Programming, Natural Language Processing, Algorithms, Key Management, SQL, Machine Learning Methods, Software Installation, Programming Principles, Data Validation
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Software Design, Programming Principles
Intermediate · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Excel Macros, Programming Principles, Visual Basic (Programming Language), Data Structures, Computer Programming, Spreadsheet Software, Problem Solving, Automation, Algorithms, Scripting Languages, Debugging, Data Management, Data Cleansing
Beginner · Course · 1 - 3 Months
LearnQuest
Skills you'll gain: Java Programming, Spring Framework, Java, Eclipse (Software), Object Oriented Programming (OOP), Object Oriented Design, Integrated Development Environments, Development Environment, Java Platform Enterprise Edition (J2EE), Software Design, Software Installation, Computer Programming, Programming Principles, Program Development, Virtual Machines, Web Development, Debugging, Package and Software Management, Data Structures, File Management
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Debugging, Object Oriented Design, JSON, Program Development, Data Structures, Python Programming, Microsoft Visual Studio, Development Environment, Scripting, Maintainability, Integrated Development Environments, Package and Software Management, Programming Principles, Computer Programming, Web Scraping, Application Programming Interface (API), File Management, Scalability, Scripting Languages
Beginner · Specialization · 3 - 6 Months

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

Skills you'll gain: Object Oriented Design, Computer Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: iOS Development, Apple iOS, Apple Xcode, User Interface (UI), Mobile Development, Swift Programming, Unit Testing, User Interface (UI) Design, UI Components, Mobile Development Tools, Objective-C (Programming Language), Application Development, Data Structures, Programming Principles, Test Case, Software Testing, Object Oriented Programming (OOP), Integrated Development Environments, Development Environment, Prototyping
Beginner · Specialization · 3 - 6 Months