10 Sources for Free Computer Programming Courses Online
See our list of the top free online computer programming courses. Learn about what courses are available and what topics they cover to find the course that's right for you.
Free Online Course Info
Students can work at their own pace to complete the following courses. While college credit cannot be earned, the information needed to learn about computer programming is available through lecture videos, text, quizzes and other training materials.
Computer Science for Everyone
The Start Learning How to Write Programs course offers training through video tutorials. This course provides 17 units that cover topics in algorithm design, pointers, memory allocation, data structures, data types, program flow and binary. The Writing Basic Programs course presents training through lesson transcripts. Topics offered during this course include related mathematics, preparing to write a tic-tac-toe program, arrays, casts, multi-dimensional functions and additional information on data structures. Students can also participate in quizzes at the end of every unit for both classes.
Google's Python Class offers information through text and lecture videos. At the end of each lesson, exercises are available for students to apply learned concepts. Students may encounter topics in strings, lists, dicts, files, utilities, lists, sorting and regular expressions.
Hobart and William Smith Colleges
Introduction to Programming Using Java, Sixth Edition is a free textbook offered online by Hobart and William Smith Colleges. This book's chapters cover topics such as subroutines, multi-processing, GUI programming, arrays, objects, classes and networking. Along with programming exercises and quizzes, students can also find a glossary that provides common terms and definitions.
These resources are online books from Sams Publishing, with text, coding examples and pictures. Students can also access quizzes and activities. Topics covered by Teach Yourself Java 2 in 24 Hours include the basics of programming, repeating actions, describing objects, building user interfaces, creating threaded programs, writing files and working with graphics. Teach Yourself Visual Basic 6 in 24 Hours teaches about analyzing programs, controls, properties, looping, dialogue boxes, database basics and ActiveX. The Visual C++ 6 Unleashed book provides training in MCF programming, using dialog boxes, creating property sheets, Internet programming, debugging, multi-threading and database programming.
The Introduction to Computer Programming lesson is tasked to familiarize the online student with terminology, common concepts, definitions and different programming languages. All of the materials are presented through text and can culminate in a comprehensive quiz. This lesson can also lead to tutorials related to Java, CSS, HTML, PHP and VBScript.
Massachusetts Institute of Technology
- Introduction to Computer Science and Programming
- Practical Programming in C
- Structure and Interpretation of Computer Programs
The Introduction to Computer Science and Programming course offers training through video lectures, assignments and exams. Most of this course's readings can be found online. This course covers common code patterns, abstractions through functions, floating point numbers, binary, code testing and debugging. The Practical Programming in C class provides students with lecture notes and assignments. Lab guidelines are also provided. During this course, students may encounter topics in variables, control flow, dynamic memory allocation, concurrency, function pointers and external libraries.
Structure and Interpretation of Computer Programs has resources that include lecture notes, video lectures, recitations, reading materials, project guidelines and exams. Topics covered include higher-order procedures, computer processes, compound data, generic operators, computational objects, logic programming and storage allocation.
National Programme on Technology Enhanced Learning
Principles of Programming Languages covers concepts in type checking, monomorphism, normal forms, structured data, programming commands, environments, syntax and binding. This YouTube lecture series consists of 40 videos that last up to 35 hours. Many of these video lectures include visual aids to help demonstrate topics.
Programming Video Tutorials
Tutorials offered by this website are presented through training videos and text. The C++ Tutorial consists of 35 chapters that cover topics in arrays, pointers, operators, constructors, variables, namespaces and constants. Students using this website also have access to additional tutorials that cover C#, SQL, Java, PHP, CSS, HTML and XML.
University of Southern Queensland
Object-Oriented Programming in C++ doesn't provide students with the required reading materials detailed in the list of readings. Students must use lecture notes and training modules for most of the course. These lectures provide audio files and PowerPoint presentations. The training modules provide texts, concept charts, exercises, examples and readings. This course covers topics in helper functions, class relationships, file access techniques, limiting access, design patterns, streams and functors. This course also provides students with assignments, exercises and an examination.
Universiti Teknologi Malaysia
Computer Programming III was created to train students in multiple programming languages, including XSLT, XML, HTML, KML and PHP. Course materials are presented through .PDF files that offer coding examples, training charts, text explanations and links to external sources. This course also provides students with additional resources that include tests, labs, exercises, an assignment and final examination guidelines.