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: Object Oriented Programming (OOP), Python Programming, Data Structures, Scripting, Web Development, Full-Stack Web Development, Automation, Programming Principles, Business Process Automation, Data Manipulation, File Management, Back-End Web Development, Debugging, Application Deployment, Development Environment
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Electronic Components, C and C++, C++ (Programming Language), Embedded Software, Hardware Troubleshooting, Program Development, Maintainability, Debugging, Development Environment
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Scalability, Application Design, Event-Driven Programming, Object Oriented Programming (OOP), Functional Design, Application Development, User Flows, Computer Programming, Integrated Development Environments, Software Architecture, Debugging, Mobile Development, Data Validation, Data Analysis
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Computer Programming, Virtual Machines, Package and Software Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: iOS Development, Swift Programming, Apple iOS, Application Development, Mobile Development, User Interface (UI) Design, Software Architecture, Portfolio Management, Human Computer Interaction, Interactive Design, Usability, Software Design, Application Design, Software Design Patterns, Secure Coding, Object Oriented Programming (OOP), Financial Trading, Data Visualization Software, Application Lifecycle Management, Maintainability
Beginner · Specialization · 3 - 6 Months

Vanderbilt University
Skills you'll gain: Prompt Engineering, ChatGPT, Matlab, AI Personalization, Debugging, AI Enablement, LLM Application, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: File I/O, Java Programming, Object Oriented Programming (OOP), Data Structures, Java, Cryptography, Software Engineering, Computer Programming, Algorithms, Encryption, Web Servers
Beginner · Course · 1 - 3 Months

Skills you'll gain: Data-Driven Decision-Making, Database Design, Data Processing, Scripting Languages, Scripting, Data Structures
Intermediate · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: C (Programming Language), Embedded Systems, Data Structures, System Programming, Algorithms, Computer Programming, Linux, Computer Programming Tools, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: Sampling (Statistics), Logistic Regression, SAS (Software), Predictive Analytics, Automation, Data Integration, Advanced Analytics, Debugging, Statistical Programming, SQL, Statistical Methods, Report Writing, Data Manipulation, Model Evaluation, Data Analysis, Statistical Reporting, Data Access, Microsoft Excel, Analysis, Finance
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Java, Mobile Development, Java Programming, Object Oriented Programming (OOP), Application Frameworks, Android Development, Application Development, Program Development, Software Development
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: Computer Graphics, Visualization (Computer Graphics), C# (Programming Language), .NET Framework, Graphical Tools, Animations, Animation and Game Design, Image Analysis, User Interface (UI), User Interface (UI) Design, Application Development
Intermediate · Course · 1 - 4 Weeks