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: User Interface (UI), Design Thinking, UI Components, Software Design, Usability, User Interface and User Experience (UI/UX) Design, Event-Driven Programming, Maintainability, Integrated Development Environments, User Interface (UI) Design, Payment Systems, Interactive Design, Application Design, MySQL, Jupyter, Database Application, Python Programming, Transaction Processing, Application Development, Microsoft Windows
Beginner · Specialization · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: Theoretical Computer Science, Algorithms, Data Structures, Graph Theory, Operations Research, Public Key Cryptography Standards (PKCS), Cryptography, Computational Thinking, Design Strategies, Pseudocode, Programming Principles, Applied Mathematics, Computer Science, Program Development, Encryption, Combinatorics, Analysis, Mathematical Modeling, Tree Maps, Python Programming
Build toward a degree
Advanced · Specialization · 3 - 6 Months

Skills you'll gain: Javascript, Scripting Languages, Node.JS, TypeScript, Data Manipulation, JSON, Web Development Tools, Generative AI, Data Structures, Programming Principles, Object Oriented Programming (OOP), Web Servers, Development Environment
Intermediate · Course · 1 - 4 Weeks

Meta
Skills you'll gain: Data Storytelling, Business Metrics, Key Performance Indicators (KPIs), Data Management, Data Collection, Data Governance, Bayesian Statistics, Data Visualization, Descriptive Statistics, Statistical Hypothesis Testing, Information Privacy, Data Cleansing, Pandas (Python Package), Data Quality, Data Analysis, Data Visualization Software, Spreadsheet Software, Exploratory Data Analysis, SQL, Python Programming
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: Scatter Plots, Jupyter, Programming Principles, Histogram
Intermediate · Course · 1 - 3 Months

University of Toronto
Skills you'll gain: Apple iOS, Swift Programming, iOS Development, Model View Controller, Apple Xcode, Mobile Development, User Interface (UI), Application Design, Application Development, Objective-C (Programming Language), UI Components, Animations, User Interface and User Experience (UI/UX) Design, Object Oriented Programming (OOP), Application Frameworks, Interaction Design, Programming Principles, Integrated Development Environments, Computer Graphics, Persistence
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Cryptography, Encryption, Python Programming, Mathematical Software, Programming Principles, Scripting, Algorithms, Debugging, Data Structures, File Management
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Microsoft Visual Studio, Development Environment, Maintainability, Integrated Development Environments, Scalability, Software Development Tools, Python Programming, Debugging, Computer Programming Tools, Software Installation
Advanced · Course · 1 - 4 Weeks

Skills you'll gain: User Story, Software Development Life Cycle, Software Architecture, Sprint Retrospectives, Agile Software Development, Kanban Principles, DevOps, Backlogs, Software Design, Scrum (Software Development), Information Technology, Computer Hardware, Sprint Planning, Software Development Methodologies, Agile Methodology, Agile Project Management, Team Building, Risk Management, Leadership, Communication
Beginner · Professional Certificate · 3 - 6 Months

Princeton University
Skills you'll gain: Data Structures, Algorithms, Java, Performance Testing, Computer Programming, Java Programming, Theoretical Computer Science, Object Oriented Programming (OOP)
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Prompt Engineering, Prompt Patterns, ChatGPT, Generative AI, Large Language Modeling, Responsible AI, Artificial Intelligence, Software Development Tools, Software Testing, Test Automation, Software Development, DevSecOps, Application Security, CI/CD, AI Product Strategy, Natural Language Processing, Software Engineering, Artificial Intelligence and Machine Learning (AI/ML), Deep Learning, Software Architecture
Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Restful API, Flask (Web Framework), Application Deployment, Web Applications, Python Programming, IBM Cloud, Server Side, Artificial Intelligence, Code Review, Programming Principles, Development Environment, Unit Testing
Intermediate · Course · 1 - 4 Weeks