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.

Skills you'll gain: File I/O, Unified Modeling Language, Visual Basic (Programming Language), Object Oriented Programming (OOP), Microsoft Visual Studio, Object Oriented Design, Program Development, Microsoft Development Tools, .NET Framework, Code Reusability, Software Engineering, Data Structures
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Performance Tuning, Python Programming, OS Process Management, Scalability, Web Scraping, Database Management
Intermediate · Course · 1 - 4 Weeks

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

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
Skills you'll gain: Unified Modeling Language, File I/O, System Programming, Visual Basic (Programming Language), System Software, Hardware Architecture, Databases, Relational Databases, Algorithms, Computer Architecture, Network Security, Computer Hardware, SQL, Development Environment, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Program Development, Computer Programming, Microsoft Development Tools
Beginner · Specialization · 3 - 6 Months

University of Pennsylvania
Skills you'll gain: Object Oriented Design, Java, Object Oriented Programming (OOP), Unit Testing, Java Programming, Application Development, Data Structures, Application Design, Software Testing, Program Development, Programming Principles, Systems Development, Test Driven Development (TDD), Computer Programming, Other Programming Languages
Beginner · Course · 1 - 4 Weeks

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

Skills you'll gain: C and C++, C++ (Programming Language), File I/O, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Data Structures, Code Reusability, Memory Management, Algorithms
Beginner · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Test Planning, Embedded Software, Embedded Systems, User Requirements Documents, Functional Specification, Systems Design, Requirements Analysis, System Requirements, System Design and Implementation, Software Design, Systems Development, Prototyping, Program Development, Software Documentation, Conceptual Design, Python Programming
Mixed · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Object Oriented Design, Computer Programming, Programming Principles, Software Design, Code Reusability, Data Structures
Beginner · Course · 1 - 3 Months

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 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