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.

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Apache Spark, Apache Hadoop, Application Design, User Interface (UI), Distributed Computing, Programming Principles, Leaflet (Software), Big Data, Data Processing, Data Structures, Software Design Patterns, Functional Design, Object Oriented Design, Data Manipulation, Object Oriented Programming (OOP), Interactive Data Visualization, Scientific Visualization, Computer Programming, Algorithms
Intermediate · Specialization · 3 - 6 Months

LearnQuest
Skills you'll gain: Software Design Patterns, Object Oriented Programming (OOP), Object Oriented Design, Computational Thinking, Programming Principles, Software Design, Algorithms, Software Architecture, Computer Programming, Python Programming, Model View Controller
Beginner · Course · 1 - 4 Weeks

University of Cape Town
Skills you'll gain: Data Import/Export, Box Plots, Jupyter, Statistical Analysis, Data Visualization, Plot (Graphics), Scientific Visualization, Statistical Programming, Programming Principles, Exploratory Data Analysis, Descriptive Statistics, Data Manipulation, Mathematical Software, Epidemiology, Numerical Analysis, Other Programming Languages, Computer Programming, Statistical Hypothesis Testing, Scripting, Computational Logic
Beginner · Course · 1 - 4 Weeks

Edureka
Skills you'll gain: Java, Java Programming, Object Oriented Programming (OOP), Computer Programming, Object Oriented Design, Memory Management, Programming Principles, Software Engineering, Debugging, Program Development, Data Structures, IntelliJ IDEA, Application Development, Software Development, Virtual Machines
Beginner · Course · 1 - 4 Weeks

University of Toronto
Skills you'll gain: Swift Programming, iOS Development, Apple Xcode, Mobile Development, Objective-C (Programming Language), Object Oriented Programming (OOP), Memory Management, Application Development, Development Environment, Programming Principles, Integrated Development Environments, Image Analysis, Computer Programming, Functional Design
Mixed · Course · 1 - 3 Months

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

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Object Oriented Design, File I/O, Programming Principles, Computer Programming, Code Reusability, Data Structures, Software Engineering, Program Development, Data Access, Data Persistence, Unit Testing, Debugging, OS Process Management, Performance Tuning
Build toward a degree
Intermediate · Course · 1 - 3 Months

Skills you'll gain: COBOL (Programming Language), Continuous Integration, Development Testing, Test Automation, Unit Testing, Development Environment, Middleware, Program Development, z/OS, Mainframe Computing, Debugging, Integrated Development Environments, Mainframe Technologies, Data Structures, Computer Programming, Programming Principles, Application Programming Interface (API), File I/O, Performance Tuning, Automation
Intermediate · Course · 3 - 6 Months

Skills you'll gain: Python Programming, Computational Thinking, Programming Principles, Computer Programming, Object Oriented Programming (OOP), Code Reusability, Data Structures, Data Processing, Computer Graphics, Data Manipulation, Development Environment
Beginner · Course · 1 - 3 Months

Skills you'll gain: Swift Programming, Apple Xcode, iOS Development, Apple iOS, Data Structures, Programming Principles, Mobile Development, Code Reusability, Data Storage, Application Development, Object Oriented Programming (OOP), Development Environment, Computer Programming, Web Development
Beginner · Course · 1 - 3 Months

LearnQuest
Skills you'll gain: Unified Modeling Language, Object Oriented Programming (OOP), Object Oriented Design, Test Driven Development (TDD), Software Design Patterns, Software Design, Programming Principles, Program Development, Development Testing, Process Driven Development, Computer Programming, Software Development Methodologies, Distributed Computing
Beginner · Course · 1 - 4 Weeks
Multiple educators
Skills you'll gain: Unit Testing, Data Structures, Event-Driven Programming, File I/O, Interactive Data Visualization, Java, Java Programming, Object Oriented Design, Object Oriented Programming (OOP), User Interface (UI), Debugging, Software Testing, Computer Programming, Cryptography, Software Engineering, Bioinformatics, Algorithms, Data Analysis, Software Design, Problem Solving
Beginner · Specialization · 3 - 6 Months