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.

Peking University
Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Program Development, Object Oriented Design, Computer Programming, Programming Principles, Code Review, JUnit, Software Development, Network Model, UI Components, Data Structures, User Interface (UI), Debugging, Application Development, Data Access, File I/O, Event-Driven Programming, Algorithms
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Penetration Testing, Application Security, Secure Coding, Exploitation techniques, Software Design Patterns, Vulnerability Assessments, Amazon Web Services, SQL, Operating Systems, C (Programming Language)
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Matplotlib, Data Visualization, Seaborn, Logistic Regression, NumPy, Data Analysis, Jupyter, Data Science, Machine Learning, Machine Learning Algorithms, Python Programming, Supervised Learning, Classification Algorithms, Algorithms
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Malware Protection, Exploit development, Cyber Threat Hunting, Cyber Security Assessment, Application Security, Threat Detection, Virtual Machines, Debugging, System Programming, Scripting, Windows PowerShell, Virtualization, Computer Architecture, Excel Macros, Linux
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Plotly, Dashboard, Pandas (Python Package), Data Manipulation, Interactive Data Visualization, Data Visualization Software, Data Visualization, Web Applications, Data Science, Data Analysis, Python Programming
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: PyTorch (Machine Learning Library), Convolutional Neural Networks, Deep Learning, Artificial Neural Networks, Applied Machine Learning, Supervised Learning, Classification Algorithms, Model Evaluation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Image Analysis, Image Quality, Matlab, Computer Vision, Traffic Flow Optimization, Automation, Digital Signal Processing, Anomaly Detection, Spatial Data Analysis, Geospatial Information and Technology, Medical Imaging, Spatial Analysis, Data Preprocessing, Quantitative Research, Algorithms, Data Store
Beginner · Specialization · 1 - 3 Months

University of London
Skills you'll gain: MongoDB, JavaScript Frameworks, Web Development Tools, Web Applications, Authentications, Web Development, Database Application, User Accounts, Application Security, Package and Software Management, Javascript, Software Installation
Mixed · Course · 1 - 3 Months

Skills you'll gain: Quality Monitoring, Cloud API, Application Programming Interface (API), Web Services, Customer Relationship Management (CRM) Software, Customer Communications Management, Account Management, Business Communication, Data Migration
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Application Development, User Interface and User Experience (UI/UX) Design, Web Design and Development, Front-End Web Development, No-Code Development, WordPress, Web Applications, Web Development, Full-Stack Web Development, Back-End Web Development, Content Management Systems
Beginner · Course · 1 - 3 Months

Skills you'll gain: LangChain, Tool Calling, LLM Application, AI Workflows, Agentic systems, Generative AI Agents, Artificial Intelligence and Machine Learning (AI/ML), Application Development, Software Development
Intermediate · Course · 1 - 4 Weeks

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