C programming courses can help you learn syntax, data structures, algorithms, and memory management. You can build skills in debugging, optimizing code, and implementing efficient algorithms. Many courses introduce tools like GCC for compiling code, GDB for debugging, and libraries such as the Standard Template Library (STL) to enhance functionality. You'll also explore concepts like pointers, file handling, and dynamic memory allocation, which are crucial for developing robust applications.

Skills you'll gain: Object Oriented Programming (OOP), Data Visualization, Seaborn, Flask (Web Framework), Programming Principles, Web Applications, Statistical Methods, Data Analysis Software, Pandas (Python Package), Probability & Statistics, Data Manipulation, Data Structures, UI Components
Intermediate · Course · 1 - 3 Months

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

Skills you'll gain: Data Visualization Software, Graphing, Data Presentation, Histogram, User Interface (UI)
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: SAS (Software), Data Analysis, Exploratory Data Analysis, Statistical Programming, Data Manipulation, Data Transformation, Data Import/Export, Data Validation
Intermediate · Course · 1 - 4 Weeks

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scalability, Scala Programming, Distributed Computing, Event-Driven Programming, System Design and Implementation, Microservices, Software Architecture, Software Design Patterns, Cloud Computing, Software Design, Application Frameworks, Software Testing
Intermediate · Course · 1 - 3 Months

University of California, Irvine
Skills you'll gain: Test Planning, Embedded Systems, User Requirements Documents, Functional Requirement, Systems Design, Requirements Analysis, System Design and Implementation, Software Design, Prototyping, Technical Design, Computer Hardware, Python Programming
Mixed · Course · 1 - 3 Months

University of Colorado Boulder
Skills you'll gain: System Programming, Embedded Software, Linux, Embedded Systems, Debugging, Operating Systems, Peripheral Devices, Build Tools, Shell Script, File Systems, USB, Development Environment, C (Programming Language)
Advanced · Course · 1 - 4 Weeks

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), JUnit, Object Oriented Design, Computer Programming, Adaptability, Performance Tuning, Algorithms, Problem Solving
Intermediate · Specialization · 3 - 6 Months

University of Colorado System
Skills you'll gain: Unity Engine, Video Game Development, Object Oriented Programming (OOP), C# (Programming Language), Event-Driven Programming, File I/O, UI Components, User Interface (UI), Debugging, Data Structures
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Apache Maven, File I/O, Data Import/Export, Object Oriented Programming (OOP), JSON, Java Programming, Debugging, Object Oriented Design, JUnit, Software Documentation, Data Structures, Computer Programming, Restful API, Integrated Development Environments, Java, Programming Principles, Data Validation, Network Protocols, Unit Testing, Computer Science
Beginner · Specialization · 3 - 6 Months

Duke University
Skills you'll gain: Program Development, Debugging, Python Programming, Computer Programming, Pseudocode, Game Design, Interactive Design, Design and Product, Creative Design, Computer Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Rust (Programming Language), Data Structures, Package and Software Management, Maintainability, Algorithms, Software Testing, Unit Testing, Software Design Patterns, Development Testing
Intermediate · Course · 1 - 3 Months