Computer programming courses can help you learn coding languages like Python, Java, and JavaScript, along with concepts such as algorithms, data structures, and software development principles. 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 applications and enhancing your programming capabilities.

University of Colorado System
Skills you'll gain: Unreal Engine, Object Oriented Programming (OOP), C++ (Programming Language), Debugging, Computer Programming, Video Game Development, 3D Assets, Development Environment, Software Documentation, Data Storage, Scripting
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Rust (Programming Language), Command-Line Interface, Package and Software Management, Programming Principles, Secure Coding, Software Development, Computer Programming, Debugging
Intermediate · Guided Project · Less Than 2 Hours

LearnQuest
Skills you'll gain: Java, Java Programming, Eclipse (Software), Object Oriented Programming (OOP), Development Environment, Computer Programming, Program Development, Virtual Machines, Web Applications, Software Installation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Unified Modeling Language, Data Modeling, Data Structures, Scripting, Object Oriented Programming (OOP), Python Programming, Software Design, Computer Programming, Software Engineering
Beginner · Course · 1 - 4 Weeks

University of California San Diego
Skills you'll gain: Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, Object Oriented Programming (OOP), User Interface (UI), Object Oriented Design, Computer Programming, Algorithms, Software Engineering, Data Structures, Programming Principles, Software Documentation, Development Environment, Debugging
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Software, Debugging, Embedded Systems, Integrated Development Environments, C (Programming Language), Development Environment, Electronic Hardware, Electronics, Software Development Tools, Computer Architecture, Computer Programming
Intermediate · Course · 1 - 4 Weeks
Multiple educators
Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, Interactive Data Visualization, Java, Java Programming, User Interface (UI), Object Oriented Programming (OOP), Debugging, Object Oriented Design, Computer Programming, Cryptography, Software Engineering, Performance Tuning, Encryption, Algorithms, Programming Principles, Data Analysis, Software Design, Problem Solving
Beginner · Specialization · 3 - 6 Months
Duke University
Skills you'll gain: Java Programming, Software Design, Debugging, Software Engineering, Javascript, Computer Programming, Event-Driven Programming, Encryption, Algorithms, Image Analysis, Web Applications, Data Processing, Statistical Analysis, Data Import/Export, Predictive Modeling, Integrated Development Environments, Data Manipulation, Data Analysis, Web Servers, Cascading Style Sheets (CSS)
Beginner · Specialization · 3 - 6 Months

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Interactive Design, Program Development, User Interface (UI), Command-Line Interface, Control Panels, Development Environment, Debugging, Data Validation
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Java, Development Environment, Programming Principles, Computer Programming, Integrated Development Environments, Object Oriented Programming (OOP), Data Structures, Debugging
Beginner · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Version Control, GitHub, Debugging, Git (Version Control System), Unit Testing, Data Structures, Python Programming, Software Testing, Programming Principles, Scripting, Computer Programming, Web Development, Algorithms, Program Development, Development Environment, Scripting Languages, Integrated Development Environments, Object Oriented Programming (OOP), Jupyter
Beginner · Course · 1 - 3 Months

Board Infinity
Skills you'll gain: Eclipse (Software), Java Programming, Object Oriented Programming (OOP), Java, Object Oriented Design, Integrated Development Environments, Development Environment, Computer Programming, Debugging, Virtual Machines, Algorithms
Beginner · Course · 1 - 4 Weeks