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.

Duke University
Skills you'll gain: Rust (Programming Language), Containerization, Data Pipelines, CI/CD, Docker (Software), Jenkins, Application Deployment, DevOps, LLM Application, Continuous Integration, Hugging Face, Unit Testing, Large Language Modeling, Test Case, Restful API, Serverless Computing, Command-Line Interface, Natural Language Processing, Computer Programming, Cloud Computing
★ 3.9 (315) · Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Memory Management, Programming Principles, Computer Architecture, System Programming, Software Visualization, Program Development, Theoretical Computer Science, Software Architecture, System Software, Software Design, Semantic Web, Computer Programming Tools, System Design and Implementation, Integrated Development Environments, Code Review, Java Programming, Data Validation, Program Standards, Programmable Logic Controllers, Java
Beginner · Specialization · 3 - 6 Months

Logical Operations
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Data Structures, File I/O, Data Processing, Application Development, Code Reusability, Maintainability, File Management, File Systems, Programming Principles, Computer Programming, Python Programming, System Configuration, Data Import/Export, Software Development, Virtual Machines
★ 4.7 (23) · Beginner · Specialization · 1 - 3 Months

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C and C++, C++ (Programming Language), Algorithms, Memory Management, Data Structures, Other Programming Languages, System Programming, Computer Programming, Python Programming, Numerical Analysis
★ 4.5 (103) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Bash (Scripting Language), Shell Script, Linux Commands, Unix Shell, Linux Administration, Linux, Scripting, Scripting Languages, grep, Unix Commands, File Management, Unix, Command-Line Interface, Debugging, Code Reusability, System Configuration, Data Processing, File I/O, User Interface (UI), IT Automation
★ 4.6 (27) · Beginner · Specialization · 1 - 3 Months

Dartmouth College
Skills you'll gain: Embedded Software, Embedded Systems, C (Programming Language), System Programming, Microarchitecture, Hardware Architecture, Software Design, C and C++, Computer Architecture, Maintainability, Event-Driven Programming, Debugging, Computer Hardware, Memory Management, Code Reusability, Secure Coding, Programming Principles, Data Structures, Peripheral Devices, Data Storage
Intermediate · 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, Data Store, Memory Management, Software Documentation, Computer Science, Maintainability, Computational Logic, Development Environment
★ 4.6 (1.3K) · Beginner · Specialization · 3 - 6 Months

Chegg Skills
Skills you'll gain: Pseudocode, Python Programming, Programming Principles, Program Development, Data Structures, Data Storage, Computational Logic, Computational Thinking, IT Automation, Code Reusability, Computer Programming, Back-End Web Development, Debugging, Problem Solving, Data Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Programming Principles, Software Visualization, Program Development, Theoretical Computer Science, Software Design, Software Architecture, Front-End Web Development, Software Development Tools, Java Programming, Build Tools, Debugging, Make.com, Java, System Implementation, Requirements Analysis
Beginner · Course · 1 - 3 Months

Edureka
Skills you'll gain: JUnit, Apache Maven, Restful API, Java Programming, Java, Application Deployment, Microservices, Docker (Software), Object Oriented Programming (OOP), Spring Boot, Spring Framework, Containerization, CI/CD, Unit Testing, API Design, Application Programming Interface (API), Hibernate (Java), Computer Programming, Object Oriented Design, Programming Principles
★ 4.1 (18) · Intermediate · Specialization · 1 - 3 Months

Skills you'll gain: Apache Maven, File I/O, Build Tools, Data Import/Export, Object Oriented Programming (OOP), JSON, Java Programming, Debugging, Object Oriented Design, JUnit, Code Reusability, Software Documentation, Programming Principles, Data Structures, File Systems, Computer Programming, Web Services, File Management, Java, Computer Science
★ 4.5 (198) · Beginner · Specialization · 3 - 6 Months

Pearson
Skills you'll gain: System Programming, Rust (Programming Language), Data Structures, Memory Management, Relational Databases, Other Programming Languages, Databases, Data Access, C (Programming Language), Programming Principles, Application Development, Code Reusability, Object Oriented Programming (OOP), C++ (Programming Language), Interoperability, Systems Integration, File I/O, Command-Line Interface, Program Development, Software Development
★ 3.9 (8) · Beginner · Specialization · 1 - 3 Months