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.
Dartmouth College
Skills you'll gain: Memory Management, Command-Line Interface, C (Programming Language), Linux Commands, Linux, Computer Programming Tools, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, C and C++, Linux Servers, Algorithms, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Debugging, File I/O, Memory Management, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Test Planning, Simulations, System Programming, Computer Programming, Data Structures, Software Development, C and C++, Software Engineering, Command-Line Interface, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Logical Operations
Skills you'll gain: Object Oriented Programming (OOP), File I/O, Python Programming, Operating Systems, Package and Software Management, Code Reusability, File Systems, Computer Programming, Development Environment, Object Oriented Design, Scripting, Scripting Languages, Programming Principles, Data Processing, Debugging, Program Development, Cross Platform Development, Computer Programming Tools, Software Development, Data Structures
Intermediate · Specialization · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), C and C++, Electronic Components, Computer Hardware, Integrated Development Environments, Programming Principles, Computer Programming, Electronics Engineering, Program Development, Software Installation, Development Environment, Digital Communications, Build Tools
Mixed · Course · 1 - 4 Weeks

Skills you'll gain: Programming Principles, Debugging, Computer Programming, Application Design, Cloud Applications, Computer Science, Code Reusability, Maintainability, Computer Systems, Program Development, Computer Programming Tools, Object Oriented Programming (OOP), Software Development, Data Management, Functional Design, Package and Software Management
Beginner · Course · 3 - 6 Months

University of London
Skills you'll gain: Pseudocode, C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Object Oriented Design, File I/O, Integrated Development Environments, Computer Programming, Development Environment, Programming Principles, Data Structures, Program Development, Algorithms, Interactive Design, Data Modeling, FinTech, Application Development, Software Engineering, Test Data, Verification And Validation
Build toward a degree
Intermediate · Specialization · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Code Reusability, Computational Logic, Artificial Intelligence, Data Structures, Memory Management, File I/O, Simulations
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), Unit Testing, Test Driven Development (TDD), Test Script Development, Programming Principles, Software Testing, Data Structures, Python Programming, Program Development, Computer Programming, Development Environment, Debugging, Django (Web Framework), Functional Design, Package and Software Management, Cloud Hosting
Beginner · Course · 1 - 3 Months

Skills you'll gain: File I/O, C and C++, Data Import/Export, C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Data Validation, Programming Principles, Computer Programming, Data Integrity, Data Structures, Code Reusability, File Management, Memory Management, Software Documentation, Computer Science, Maintainability, Computational Logic, Data Storage
Beginner · Specialization · 3 - 6 Months

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Web Servers, Distributed Computing, Network Troubleshooting, Server Side, Web Applications, Middleware, Servers, Network Monitoring, Network Architecture, System Programming, Network Protocols, Systems Architecture, Systems Design, TCP/IP, Computer Networking, Network Performance Management, System Design and Implementation, Microservices, Software Development, Application Programming Interface (API)
Build toward a degree
Beginner · Course · 1 - 3 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Debugging, Computer Programming, Unit Testing, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Software Testing, Code Reusability, Memory Management, Computational Logic
Intermediate · Specialization · 3 - 6 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Program Development, Computer Science, Software Testing, Algorithms, Code Reusability, Graph Theory, C and C++, Computational Logic, Memory Management
Intermediate · Specialization · 3 - 6 Months