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 Story, Backlogs, Scaled Agile Framework, Project Estimation, Sprint Planning, Agile Project Management, Agile Software Development, Scrum (Software Development), Sprint Retrospectives, Agile Methodology, Stakeholder Communications, Team Building, Agile Product Development, Jira (Software), Estimation, Planning, Project Management, Kanban Principles, Product Management, Prioritization
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Unity Engine, Animations, Visualization (Computer Graphics), 3D Assets, Software Design Patterns, Video Game Development, Object Oriented Programming (OOP), Data-oriented programming, Game Design, Scalability, Virtual Environment, Software Development Tools, Virtual Reality, Computer Graphics, Performance Tuning, Data Validation, Real Time Data, Computer Graphic Techniques, Scripting, C# (Programming Language)
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Model Deployment, Business Logic, Application Deployment, Decision Support Systems, Business Process Automation, Test Case, Verification And Validation, Automation, Program Development, Computer Programming, Docker (Software), Model Evaluation, Complex Problem Solving, Application Programming Interface (API)
Intermediate · Guided Project · Less Than 2 Hours

Niel Asher Education
Skills you'll gain: Manual Therapy, Athletic Training, Respiratory Therapy
Advanced · Course · 1 - 4 Weeks

Johns Hopkins University
Skills you'll gain: Rmarkdown, Data Science, R (Software), GitHub, Data Literacy, Version Control, Data Analysis, Big Data, R Programming, Git (Version Control System), Statistical Programming, Data Quality, Data Management
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Apple Xcode, Apple iOS, Swift Programming, Data Persistence, JSON, Application Deployment, Mobile Development, User Interface (UI), Application Development, User Interface (UI) Design, Application Programming Interface (API), Data Structures
Beginner · Course · 1 - 3 Months

Skills you'll gain: Simulations, Resource Management, Call Center Experience, Process Management, Workflow Management, Data Analysis, Process Analysis, Plot (Graphics), R Programming, Statistical Analysis, Statistical Modeling
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Unreal Engine, Animation and Game Design, Animations, 3D Assets, User Interface (UI), Creativity
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: ASP.NET, .NET Framework, Software Design Patterns, Software Design, Maintainability, Software Architecture, C# (Programming Language), Microsoft Visual Studio, Restful API, User Interface (UI), Object-Relational Mapping, Debugging, Unit Testing, Front-End Web Development, Data Store, Authentications
Intermediate · Course · 1 - 3 Months

Duke University
Skills you'll gain: Software Design, Databases, Computer Programming, Object Oriented Programming (OOP), User Interface (UI), Algorithms, Data Analysis, Java, Data Structures, Data Processing
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Prompt Engineering, OpenAI API, LangChain, ChatGPT, Prompt Patterns, Generative AI, LLM Application, Large Language Modeling, Application Programming Interface (API), Application Development
Intermediate · Course · 3 - 6 Months
University of Glasgow
Skills you'll gain: Application Deployment, Application Development, Code Review, Software Development, Prototyping, Web Applications, JavaScript Frameworks, Software Engineering, Javascript, Computational Thinking, Version Control, Programming Principles, Program Management
Beginner · Course · 1 - 4 Weeks