Programming courses can help you learn coding languages like Python, Java, and JavaScript, as well as concepts such as algorithms, data structures, and software development methodologies. You can build skills in debugging, version control, and writing efficient code. Many courses introduce tools like Git for version control, integrated development environments (IDEs) like Visual Studio Code, and frameworks such as React or Django, that support developing web applications and software solutions.

University of Alberta
Skills you'll gain: Computational Thinking, Video Game Development, Game Design, Software Quality (SQA/SQC), Problem Solving, Programming Principles, Computer Programming, Program Development, Algorithms, Python Programming, Computer Science, Debugging, Test Planning, Functional Testing, Other Programming Languages
Beginner · Course · 1 - 3 Months

Vanderbilt University
Skills you'll gain: IntelliJ IDEA, Java Programming, Object Oriented Programming (OOP), Java, Integrated Development Environments, Open Source Technology, Development Environment, Programming Principles, Scalability, Functional Design
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Sampling (Statistics), Logistic Regression, SAS (Software), Predictive Analytics, Automation, Data Integration, Predictive Modeling, Advanced Analytics, Debugging, Change Control, Feature Engineering, Analytical Skills, SQL, Statistical Methods, Report Writing, Data Manipulation, Data Store, Analysis, Data Maintenance, Finance
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Eclipse (Software), Integrated Development Environments, Java Programming, Java, Object Oriented Programming (OOP), Development Environment, Programming Principles, Software Development Tools, Program Development, Software Installation, Debugging, Computer Programming, Computing Platforms, Command-Line Interface
Beginner · Course · 1 - 3 Months

Skills you'll gain: C and C++, C++ (Programming Language), Development Environment, Performance Tuning, Test Tools, System Programming, Docker (Software), Computer Architecture, Containerization, Development Testing, Programming Principles, Software Development Tools, Hardware Architecture, Algorithms, Computer Programming, Python Programming, Debugging, Memory Management, Software-Defined Networking, Scripting
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Unified Modeling Language, Visual Basic (Programming Language), Data Structures, Object Oriented Design, Microsoft Visual Studio, Program Development, Data Storage, Object Oriented Programming (OOP), Microsoft Development Tools, .NET Framework, Computer Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Data Structures, Object Oriented Programming (OOP), Software Development, Memory Management
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: PHP (Scripting Language), Object Oriented Programming (OOP), Object Oriented Design, Code Reusability, Web Development, Maintainability, Software Engineering
Intermediate · Guided Project · Less Than 2 Hours

University of Colorado Boulder
Skills you'll gain: Embedded Software, Linux, Linux Administration, File Systems, Shell Script, Package and Software Management, Electrical Engineering
Advanced · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Unit Testing, Growth Mindedness, Data Structures, Graph Theory, Event-Driven Programming, Social Network Analysis, Interactive Data Visualization, Java, Java Programming, Network Analysis, Object Oriented Programming (OOP), Technical Communication, User Interface (UI), Peer Review, Object Oriented Design, Software Testing, Computer Programming, Program Development, Algorithms, Problem Solving
Intermediate · Specialization · 3 - 6 Months

University of Colorado Boulder
Skills you'll gain: R Programming, Rmarkdown, R (Software), Tidyverse (R Package), Ggplot2, Data Import/Export, Data Visualization, Plot (Graphics), Statistical Visualization, Data Analysis, Statistical Reporting, Data Visualization Software, Data Presentation, Data Science, Data Manipulation, Statistical Analysis, Data Wrangling, Data Cleansing, Data Integration, Communication
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Rust (Programming Language), Data Structures, Code Reusability, Memory Management, Package and Software Management, Algorithms, Software Testing
Intermediate · Course · 1 - 3 Months