Free courses can help you learn coding languages like Python and JavaScript, data analysis techniques, and web development fundamentals. You can build skills in problem-solving, algorithm design, and creating interactive websites. Many courses introduce tools such as Git for version control, SQL for database management, and various frameworks that streamline web development, allowing you to apply your skills in practical projects.

National Taiwan University
Skills you'll gain: Programming Principles, Computer Programming, C (Programming Language), Data Structures, C and C++, Program Development, Memory Management
★ 4.8 (370) · Mixed · Course · 1 - 3 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Field-Programmable Gate Array (FPGA), Display Devices, Hardware Design, Electronic Hardware, Electronics, Electronic Components, Computational Logic, Remote Access Systems, Basic Electrical Systems, Embedded Systems, C (Programming Language), Color Theory, Memory Management, Image Quality
★ 4.2 (15) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Microarchitecture, Computer Architecture, Computer Hardware, System Programming, Data Storage, Memory Management, Performance Tuning, Computational Logic, Computer Programming, C (Programming Language), Program Development, C# (Programming Language)
★ 4.7 (80) · Beginner · Course · 1 - 3 Months

Skills you'll gain: Transaction Processing, Data Persistence, Performance Tuning, System Programming, Memory Management, Operating Systems, C++ (Programming Language), C (Programming Language), System Configuration, Hardware Architecture, File Systems, Data Integrity, Computer Architecture, Data Storage, Computer Hardware, Data Storage Technologies, Application Development
★ 5 (71) · Beginner · Course · 1 - 4 Weeks

Packt
Skills you'll gain: Test Driven Development (TDD), C and C++, C++ (Programming Language), Debugging, Maintainability, C (Programming Language), System Programming, Functional Design, Secure Coding, Software Architecture, Cross Platform Development, Memory Management, Interoperability, Performance Tuning, Network Troubleshooting
Beginner · Course · 1 - 3 Months

Birla Institute of Technology & Science, Pilani
Skills you'll gain: Microarchitecture, Program Development, Distributed Computing, Performance Testing, Algorithms, Memory Management, Computer Hardware, C (Programming Language)
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Memory Management, Scalability, Performance Tuning, .NET Framework, C# (Programming Language), System Programming, C (Programming Language), Debugging, Data Structures, Software Engineering, Interoperability
Intermediate · Course · 1 - 3 Months
Skills you'll gain: Memory Management, Operating Systems, C (Programming Language), C and C++, Performance Tuning, System Programming, System Software, Unix, Hardware Architecture
★ 4.7 (66) · Advanced · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: File I/O, Simulations, C (Programming Language), Computational Thinking, Automation, Algorithms, Data Structures, Programming Principles, Memory Management
★ 4.4 (36) · Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Systems, C (Programming Language), Embedded Software, Data Structures, Code Reusability, Memory Management, C and C++, Programming Principles, Data Management, Software Development
Intermediate · Guided Project · Less Than 2 Hours

University of California, Irvine
Skills you'll gain: Objective-C (Programming Language), iOS Development, Apple iOS, Memory Management, Prototyping, Mobile Development, C and C++, Application Development, C (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Data Structures
★ 4.6 (558) · Mixed · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: Command-Line Interface, Linux Commands, Linux, Embedded Systems, Linux Servers, Computer Engineering, File Systems, Unix, Operating Systems, C (Programming Language), File Management, Memory Management, Computer Programming Tools, Computer Programming, Open Source Technology, OS Process Management
★ 4.7 (35) · Beginner · Course · 1 - 3 Months