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: Object Oriented Programming (OOP), Java, Object Oriented Design, Java Programming, Maintainability, Software Design, Data Structures, Software Architecture, Memory Management, Programming Principles, Code Reusability, Data Management, Performance Tuning
Intermediate · Course · 1 - 4 Weeks

University of Illinois Urbana-Champaign
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Development Environment, Engineering Software, Computer Programming, Software Engineering, Data Structures, Memory Management, Computer Programming Tools, Debugging, Program Development
★ 4.7 (3K) · Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Debugging, Integrated Development Environments, Data Structures, Programming Principles, Development Environment, Computational Logic, Python Programming, Code Reusability, Scripting, Functional Design, Command-Line Interface, Memory Management, Software Installation
Beginner · Course · 3 - 6 Months

University of Pennsylvania
Skills you'll gain: Social Network Analysis, Social Media Strategy, Content Marketing, Social Media Content, Social Media Marketing, Shared Media, Consumer Behaviour, Driving engagement, Marketing Communications, Content Creation, Influencing, Social Media Campaigns, Persuasive Communication, Advertising, Marketing, Earned Media, Marketing Psychology, Promotional Strategies, Decision Making
★ 4.8 (5.3K) · Mixed · Course · 1 - 4 Weeks

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), Go (Programming Language), File I/O, Data Structures, Object Oriented Programming (OOP), Object Oriented Design, Software Design Patterns, Debugging, Computer Programming, Programming Principles, Unit Testing, Algorithms, C (Programming Language), Program Development, Software Design, Graph Theory, Software Testing, Code Reusability, Memory Management, C and C++
★ 4.4 (2.5K) · 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

Board Infinity
Skills you'll gain: Fine-tuning, Large Language Modeling, LLM Application, Hugging Face, Prompt Patterns, Retrieval-Augmented Generation, Prompt Engineering, Debugging, Transfer Learning, Product Support, Model Training, Model Deployment, Model Optimization, Model Evaluation, Data Transformation, Data Cleansing, Natural Language Processing, Data Validation, Memory Management
Beginner · Course · 1 - 3 Months

Skills you'll gain: Linux Administration, System Programming, Linux, Embedded Software, Linux Servers, Linux Commands, System Software, System Configuration, Operating Systems, Debugging, Memory Management, Embedded Systems, Cross Platform Development, Open Source Technology, Secure Coding, Configuration Management, C (Programming Language), Hardening, Program Development, Development Environment
Intermediate · Course · 1 - 3 Months

Skills you'll gain: z/OS, Job Control Language (JCL), Mainframe Computing, Mainframe Technologies, System Programming, Computer Architecture, Systems Architecture, Program Development, File I/O, Programming Principles, Maintainability, Computational Logic, Data Structures, Data Access, Data Mapping, Computer Science, Computer Programming, Memory Management, Data Validation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Java Programming, Java, Performance Tuning, Memory Management, Web Servers, Web Applications, Server Side, Computer Networking, TCP/IP, OS Process Management, Context Management, Software Development, Encryption, Network Protocols, Scalability, Maintainability
Intermediate · Course · 1 - 4 Weeks
Skills you'll gain: Debugging, Technical Communication, Network Troubleshooting, Performance Tuning, Problem Management, Technical Documentation, System Monitoring, Capacity Management, Incident Management, Memory Management, Continuous Integration, Continuous Monitoring
★ 4.6 (3.1K) · Beginner · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: Embedded Software, Embedded Systems, C (Programming Language), System Programming, Microarchitecture, Hardware Architecture, Software Design, C and C++, Computer Architecture, Maintainability, Event-Driven Programming, Debugging, Computer Hardware, Memory Management, Code Reusability, Secure Coding, Programming Principles, Data Structures, Peripheral Devices, Data Storage
Intermediate · Course · 1 - 3 Months