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 Boulder
Skills you'll gain: Object Oriented Design, JUnit, Object Oriented Programming (OOP), Unified Modeling Language, Software Design Patterns, Software Testing, Software Engineering, Java, Java Programming, Computer Programming, Application Design, User Interface and User Experience (UI/UX) Design, Unit Testing, Software Design, Software Architecture, API Design, Model View Controller, Program Development, Software Development, Databases
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: C++ (Programming Language), Application Development, Computer Programming, Programming Principles, File I/O
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Javascript, Programming Principles, Computer Programming, Web Development, Application Development
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Software Installation, Data Validation, Python Programming, Program Development, Computational Thinking, Development Environment, Data Processing, Computer Programming, System Configuration, Algorithms, Debugging
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Package and Software Management, Data Science, Computer Programming, Mathematical Software
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Object Oriented Programming (OOP), Debugging, JSON, Program Development, Data Structures, Code Review, Python Programming, Microsoft Visual Studio, Development Environment, Scripting, Maintainability, Integrated Development Environments, Package and Software Management, Authorization (Computing), Programming Principles, Computer Programming, Web Scraping, Application Programming Interface (API), Scalability
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: NumPy, Pandas (Python Package), Image Analysis, Data Manipulation, Matplotlib, Computer Vision, Data Analysis, Interactive Data Visualization, Python Programming, Data Visualization, JSON, Programming Principles, Scripting, Scripting Languages, Data Structures, Development Environment, Microsoft Visual Studio, Integrated Development Environments, Computer Programming, Software Installation
Beginner · Specialization · 3 - 6 Months

LearnQuest
Skills you'll gain: Software Development Life Cycle, CI/CD, Software Development Methodologies, Jenkins, Continuous Integration, Agile Methodology, Software Development, Cloud Development, Continuous Delivery, Agile Software Development, Cloud Computing Architecture, Cloud Applications, Software Engineering, Scrum (Software Development), Computer Programming, Kubernetes
Beginner · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Cross Platform Development, Program Development, Computer Programming, Software Engineering, Python Programming, Software Installation, Web Development, Software Design
Beginner · Guided Project · Less Than 2 Hours

University of California, Davis
Skills you'll gain: Programming Principles, Python Programming, Scripting, Data Cleansing, Automation, Computational Thinking, Scripting Languages, Computer Programming, Application Programming Interface (API)
Intermediate · Course · 1 - 4 Weeks

Clemson University
Skills you'll gain: Data Structures, Algorithms, Computational Thinking, Theoretical Computer Science, Computer Programming, Computer Science, Probability, Design Strategies, Analysis, Performance Testing, Scalability
Build toward a degree
Intermediate · Course · 1 - 3 Months

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