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 Michigan
Skills you'll gain: Django (Web Framework), Database Design, Web Applications, Application Development, Web Development, Authentications, Web Servers, Data Modeling, Session Initiation Protocols, User Accounts, Data Validation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Selenium (Software), File I/O, Object Oriented Programming (OOP), Test Automation, Web Development Tools, Computer Programming, Scripting, Python Programming, Automation, Scripting Languages, Integrated Development Environments, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Generative Adversarial Networks (GANs), PyTorch (Machine Learning Library), Deep Learning, Convolutional Neural Networks, Image Analysis, Python Programming
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: User Story, Business Requirements, Requirements Analysis, Requirements Elicitation, Business Analysis, User Requirements Documents, Gap Analysis, Project Documentation, Functional Specification, Diagram Design, Process Analysis, Business Process Modeling, Needs Assessment
Beginner · Course · 1 - 4 Weeks

Universidad Nacional Autónoma de México
Skills you'll gain: Android Development, Android Studio, Mobile Development, Application Development, Application Lifecycle Management, User Interface (UI) Design, Data Persistence, UI Components, Authorization (Computing), User Interface (UI), Data Storage, Database Management, File I/O
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Debugging, Java Programming, Java, Programming Principles, Computer Programming, Integrated Development Environments, Computer Science, Data Structures
Beginner · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Code Review, Debugging, Scripting, Python Programming, Programming Principles, Software Development
Intermediate · Guided Project · Less Than 2 Hours

DeepLearning.AI
Skills you'll gain: Retrieval-Augmented Generation, LangChain, JavaScript Frameworks, LLM Application, Node.JS, Prompt Engineering, AI Orchestration, Python Programming
Intermediate · Project · Less Than 2 Hours

Banco Interamericano de Desarrollo
Skills you'll gain: Failure Analysis, Risk Analysis, Risk Modeling, Feasibility Studies, Risk Management, Hazard Analysis, Project Risk Management, Analysis, Risk Mitigation, Business Risk Management, Mitigation, Business Priorities, Financial Analysis, Disaster Recovery, Cost Benefit Analysis, Climate Change Adaptation, Investment Management, Governance, Resilience, Environment
Advanced · Specialization · 1 - 3 Months

Skills you'll gain: File I/O, Data Import/Export, Java Programming, Java, Computer Programming, Data Structures, Object Oriented Programming (OOP), Integrated Development Environments, Computer Science
Beginner · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Applied Machine Learning, Jupyter, Machine Learning Algorithms, Model Evaluation, Machine Learning, Predictive Modeling, Data Science, Python Programming, Predictive Analytics, Data Analysis, Technical Communication
Intermediate · Guided Project · Less Than 2 Hours

University of Illinois Urbana-Champaign
Skills you'll gain: Teaching, Differentiated Instruction, Pedagogy, Instructional Strategies, Human Learning, Cultural Diversity, Research, Student-Centred Learning, Media and Communications, Curriculum Development
Beginner · Course · 1 - 4 Weeks