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.

Skills you'll gain: File I/O, Data Import/Export, Java Programming, Java, Programming Principles, Computer Programming, Data Structures, File Systems, File Management, Data Store, Computer Science
Beginner · Course · 1 - 4 Weeks

Codio
Skills you'll gain: Matplotlib, Statistical Methods, Statistical Hypothesis Testing, Plot (Graphics), Data Analysis, Statistical Analysis, Data Import/Export, Data Visualization, Data Cleansing, Probability & Statistics, Data Manipulation, Descriptive Statistics, Pandas (Python Package), Data Wrangling, Correlation Analysis, Python Programming, Programming Principles, Computer Programming, Scripting, Computational Logic
Mixed · Course · 1 - 3 Months

Skills you'll gain: Programming Principles, Computer Programming, Python Programming, Computational Logic, Computer Science
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Object Oriented Design, Software Documentation, Java Programming, Java, Technical Documentation, Computer Programming, Programming Principles, Code Reusability, Computer Science
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Embedded Software, Performance Tuning, System Programming, Software Development Tools, Embedded Systems, Memory Management, Microarchitecture, Software Development, Hardware Architecture, Debugging, Secure Coding, Build Tools, Application Security, Computer Architecture, System Configuration, Programming Principles, C (Programming Language), Digital Signal Processing, Application Development, C++ (Programming Language)
Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, C and C++, Programming Principles, Data Structures, Secure Coding, Algorithms, Software Design, Application Security, Other Programming Languages, System Programming, Python Programming, Computer Architecture, Computer Programming, Java, Unix
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Java Programming, Java, Memory Management, Development Environment, Programming Principles, Computer Programming Tools, Computer Programming, Integrated Development Environments, Data Structures, Software Installation
Beginner · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), File I/O, Data Persistence, Object Oriented Design, Java, Java Programming, File Management, Memory Management, Code Reusability, Application Development, File Systems, Maintainability, Computer Programming, Software Design, Development Environment, Program Development, Programming Principles, Computer Programming Tools, Data Structures, Integrated Development Environments
Beginner · Specialization · 3 - 6 Months

Peking University
Skills you'll gain: Data Structures, Algorithms, C++ (Programming Language), Memory Management, C and C++, Graph Theory, Object Oriented Programming (OOP), File I/O, Object Oriented Design, Computational Thinking, C (Programming Language), Programming Principles, Theoretical Computer Science, Program Development, Computer Programming, Computer Science, Application Development, Systems Development, Data Storage, Computer Architecture
Beginner · Specialization · 3 - 6 Months
LearnQuest
Skills you'll gain: Java Programming, Spring Framework, Java, File I/O, Object Oriented Programming (OOP), Object Oriented Design, Java Platform Enterprise Edition (J2EE), Programming Principles, Software Design, Computer Programming, Application Frameworks, Data Structures, Software Installation, Virtual Machines, Code Reusability, Web Development, Package and Software Management, Memory Management, Computational Logic, Development Environment
Intermediate · Specialization · 3 - 6 Months
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Memory Management, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Software Development Tools, Program Development, Hardware Architecture, Systems Architecture, Eclipse (Software), Data Structures, Build Tools, C and C++, Programming Principles, Microarchitecture
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: File I/O, Object Oriented Programming (OOP), Java, Integrated Development Environments, Object Oriented Design, Java Programming, Development Environment, Maintainability, Computer Programming Tools, Software Development Tools, Software Design, Data Structures, Program Development, Data Persistence, Software Architecture, Debugging, Memory Management, Code Reusability, Programming Principles, File Management
Beginner · Specialization · 1 - 3 Months