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.

Skills you'll gain: Java Programming, Java, Performance Tuning, Spring Framework, System Programming, Application Performance Management, Algorithms, JUnit, OS Process Management, Application Frameworks, Programming Principles, Spring Boot, Scalability
Beginner · Course · 1 - 3 Months

University of California San Diego
Skills you'll gain: Unit Testing, Growth Mindedness, Data Structures, Graph Theory, Event-Driven Programming, Social Network Analysis, Interactive Data Visualization, Java, Java Programming, Network Analysis, Object Oriented Programming (OOP), Technical Communication, User Interface (UI), Peer Review, Object Oriented Design, Software Testing, Computer Programming, Program Development, Adaptability, Problem Solving
Intermediate · 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, FinTech, Application Development, Command-Line Interface
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: File I/O, Programming Principles, Code Reusability, File Management, Data Structures, Development Environment, Microsoft Visual Studio, Integrated Development Environments, Computer Programming, Software Installation, Program Development, Debugging
Beginner · Course · 1 - 3 Months

Skills you'll gain: PHP (Scripting Language), Object Oriented Programming (OOP), Object Oriented Design, Code Reusability, Web Development, Maintainability, Software Engineering
Intermediate · Guided Project · Less Than 2 Hours

University of Colorado Boulder
Skills you'll gain: Embedded Software, Linux, Linux Administration, File Systems, Shell Script, Package and Software Management, Electrical Engineering
Advanced · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Rmarkdown, Ggplot2, R (Software), Plot (Graphics), Data Visualization, Tidyverse (R Package), Statistical Visualization, R Programming, Data Visualization Software, Statistical Programming, Data Manipulation, Data Analysis Software, Statistical Reporting, Data Analysis, Data Validation, Data Transformation, Code Reusability, Software Installation, Programming Principles, Aesthetics
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Programming Principles, Computational Thinking, Program Development, Development Environment, C++ (Programming Language), Computer Programming, Computational Logic, Computer Programming Tools, Maintainability
Beginner · Course · 1 - 3 Months

Skills you'll gain: Exploratory Data Analysis, Data Wrangling, Statistical Analysis, Data Analysis, Model Evaluation, Data Transformation, R Programming, Data Visualization, Regression Analysis, Predictive Modeling, Statistical Methods, R (Software), Data Manipulation, Plot (Graphics), Data Science, Box Plots, Statistical Visualization, Correlation Analysis, Model Training, Tidyverse (R Package)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Embedded Systems, Embedded Software, C (Programming Language), Code Reusability, Memory Management, C and C++, Programming Principles, Data Structures, Computer Programming Tools, Program Development, Computer Programming, Development Environment
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Java, Integrated Development Environments, Mobile Development, Computer Programming, Programming Principles, Data Structures
Beginner · Guided Project · Less Than 2 Hours

Pohang University of Science and Technology(POSTECH)
Skills you'll gain: Internet Of Things, Wireless Networks, General Networking, Emerging Technologies, Embedded Software, Embedded Systems, Information Technology Architecture, Programming Principles, Electronic Components, Computer Hardware, Computing Platforms, Development Environment, Problem Solving
Beginner · Course · 1 - 3 Months