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: Javascript, JavaScript Frameworks, Node.JS, Event-Driven Programming, Application Programming Interface (API), Debugging
Intermediate · Course · 1 - 4 Weeks

Rice University
Skills you'll gain: Apache Kafka, Apache Spark, Apache Hadoop, Distributed Computing, Dataflow, Java Programming, Java, Software Architecture, Systems Architecture, Scala Programming, Data Structures, System Programming, Programming Principles, Servers, Application Frameworks, Debugging, Algorithms, Performance Tuning, Functional Design, Performance Testing
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Plot (Graphics), Scripting, Scientific Visualization, Visualization (Computer Graphics), Graphing, Programming Principles, Debugging, Matlab, Computational Thinking, Numerical Analysis, Data Manipulation, Linear Algebra
Mixed · Course · 1 - 4 Weeks

Arizona State University
Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Event-Driven Programming, Python Programming, User Interface (UI), Computer Programming, Human Computer Interaction, Application Development, Graphical Tools
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Program Development, C and C++, C++ (Programming Language), Object Oriented Programming (OOP), Computer Programming, Development Environment, Software Development, Computer Science
Beginner · Guided Project · Less Than 2 Hours

University of Pennsylvania
Skills you'll gain: Object Oriented Design, Java, Object Oriented Programming (OOP), Unit Testing, Java Programming, Application Development, Data Structures, Software Testing, Programming Principles, Test Driven Development (TDD), Computer Programming
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Matplotlib, Seaborn, Plot (Graphics), Pandas (Python Package), NumPy, Data Visualization Software, Data Visualization, Programming Principles, Computer Programming, Histogram, Functional Design, Package and Software Management, Data Import/Export, Scripting, Scripting Languages, Data Manipulation, Python Programming, Data Science, Data Structures, Software Engineering
Beginner · Specialization · 1 - 3 Months

Skills you'll gain: Ruby (Programming Language), Debugging, Scripting Languages, Data Structures, Scripting, Program Development, Object Oriented Programming (OOP)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Unix Shell, Unix Commands, Unix, Shell Script, Bash (Scripting Language), Command-Line Interface, Remote Access Systems, Scripting, Systems Administration, Operating System Administration, Linux Commands, File I/O, IT Automation, Linux, User Accounts, File Systems, System Monitoring, Operating Systems, File Management, Performance Tuning
Beginner · Specialization · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: System Programming, Embedded Systems, Linux, File I/O, Linux Commands, Linux Servers, Operating Systems, Bash (Scripting Language), Shell Script, OS Process Management, Build Tools, C and C++, Cross Platform Development, Debugging, Electrical Engineering
Advanced · Course · 1 - 4 Weeks

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

Skills you'll gain: SAS (Software), Data Import/Export, Statistical Analysis, Data Analysis, Statistical Programming, Data Manipulation, Exploratory Data Analysis, Data Preprocessing, Computer Programming
Intermediate · Course · 1 - 3 Months