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: Unity Engine, Android Development, C# (Programming Language), Video Game Development, Animation and Game Design, User Interface (UI), Mobile Development, User Interface and User Experience (UI/UX) Design, Microsoft Visual Studio, Software Installation
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Data Structures, Algorithms, Data Storage, Programming Principles, Computer Programming, C++ (Programming Language), Java Programming, Java, File Management
Intermediate · Course · 1 - 3 Months

University of California, Davis
Skills you'll gain: Peer Review, Language Learning, Spanish Language, Oral Expression, Grammar, Oral Comprehension, Vocabulary, Culture, Writing and Editing, Language Competency, Research, Writing
Beginner · Specialization · 3 - 6 Months

University at Buffalo
Skills you'll gain: Personal protective equipment, Electrical Substation, Electrical Power, Electric Power Systems, Electrical Systems, Environmental Regulations, Energy and Utilities, Basic Electrical Systems, Oil and Gas, Safety Training, Electrical Equipment, Occupational Safety and Health Administration (OSHA), Hazard Analysis, Workforce Development, Billing, Sustainable Development, Safety Standards, Sustainable Technologies, Supply Chain, Regulatory Affairs
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Android Development, User Interface (UI) Design, Animation and Game Design, C# (Programming Language), Mobile Development, Software Installation, Linear Algebra, Computer Graphics
Beginner · Specialization · 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

University of Alberta
Skills you'll gain: Agile Software Development, Project Risk Management, Requirements Analysis, Agile Methodology, Kanban Principles, Risk Management, Project Planning, Requirements Elicitation, Sprint Retrospectives, Requirements Management, Functional Requirement, Business Requirements, Sprint Planning, Software Development Methodologies, Software Development Life Cycle, Scrum (Software Development), Software Technical Review, Risk Management Framework, Product Management, Project Management
Beginner · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Database Design, SQL, MySQL, PHP (Scripting Language), Relational Databases, JSON, jQuery, Hypertext Markup Language (HTML), Javascript and jQuery, Ajax, Databases, Data Modeling, Database Application, Database Development, Debugging, Web Applications, Object Oriented Programming (OOP), Web Development, Secure Coding, Javascript
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Supervised Learning, Feature Engineering, Applied Machine Learning, Object Oriented Programming (OOP), Unsupervised Learning, Model Evaluation, Recurrent Neural Networks (RNNs), Convolutional Neural Networks, Transfer Learning, Machine Learning Algorithms, Data Visualization, Natural Language Processing, Seaborn, Predictive Modeling, Flask (Web Framework), Python Programming, Deep Learning, PyTorch (Machine Learning Library), Programming Principles, Web Applications
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Exploratory Data Analysis, Data Manipulation, Statistical Analysis, R (Software), Analytical Skills, Ggplot2, Data Storytelling, R Programming, Statistical Methods, Quantitative Research, Data Visualization Software, Data Science, Data Preprocessing, Probability & Statistics, Scatter Plots, Business Analytics, Statistical Visualization, Correlation Analysis, Descriptive Statistics, Data Analysis
Beginner · Specialization · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Back-End Web Development, System Programming, Debugging, Computer Programming Tools, Data Access
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Data Storytelling, Data Ethics, Data Analysis, Data-Driven Decision-Making, Analytics, Workflow Management, Business Analytics, Data Science, Statistical Reporting, Business Intelligence, Project Design, Project Management, Communication, Stakeholder Communications, Machine Learning
Advanced · Course · 1 - 3 Months