Are you a techie looking to acquire some computer science knowledge without a hefty university price tag? You’re in luck! Tons of colleges and universities are offering free access to their valuable course materials free of charge.
For most, all you have to do is visit their site and begin learning. So if you’re ready, here are 50 free computer sciences classes that you can take advantage of right now.
Algorithms and Artificial Intelligence
1. Algorithms (ArsDigita University) – Study the design of algorithms according to methodology and application.
2. Artificial Intelligence (University of Massachusetts, Boston) – This is an intro to the main techniques of Artificial Intelligence.
3. Computer Science 171: Introduction to Artificial Intelligence (University of California, Irvine) – This course looks at informed and uninformed search, constraint satisfaction, games, optimization and more (courses 273A and 273B are also available).
Computer Architecture and Systems
4. Circuits and Electronics (MIT) – Explore the fundamentals of the lumped circuit abstraction.
5. Computer Architecture (University of Washington) – A look at quantum computing, memory hierarchy and more.
6. Underactuated Robotics (MIT) – This course discusses nonlinear dynamics and control of underactuated mechanical systems.
Computer Science Basics
7. Christopher Newport University Computer Science Classes – C++, Data Communications and Network Design and Implementation course materials.
8. Fundamentals of Computer Science I (Grinnell College) – Introduction to computer programming using Scheme (includes algorithm design, coding, testing, debugging, etc.).
9. Fundamentals of Computer Science II (Grinnell College) – Learn the design, analysis and verification of algorithms.
10. Breadth Topics in Computing Science (Capilano University) – Learn how computer systems work, as well as good problem-solving and design skills.
11. Great Ideas in Theoretical Computer Science (MIT) – A challenging introduction to some of the central ideas of theoretical computer science.
12. History of Computing (University of Washington) – An interesting look at the history of computing from the beginning to present day.
13. Introducing Ethics in Information and Computer Sciences (The Open University) – Take a look at ethics as it starts to emerge within the realm of Information and Computer Sciences (ICS).
Databases and Data Structure
14. Database Management Systems (ArsDigita University) – This course offers a more formal approach to Relational Database Management Systems.
15. Database Systems (Harvard University) – A general introduction to database research.
16. Introduction to MATLAB (MIT) – Acquire fluency of MATLAB through interactive lectures and problem-based assignments.
Internet and Multimedia
17. Advanced Internet Services (Columbia University) – This course covers emerging Internet multimedia services (real-time services, packet scheduling, audio and video coding, etc.).
18. Applied Multimedia Technology (University of Notre Dame) – Explore the use of multimedia in communicating information and solving problems.
19. Computer Graphics (Indian Institute of Technology, Madras) – Dr. Sukhendu Das of IIT Madras offers 43 compelling lectures on computer graphics via YouTube.
20. Finding Information in Technology (The Open University) – This course teaches you how to evaluate the material you find on the Internet in your study of technology.
21. Information Technology and the Labor Market (MIT) – This course explores how information technology is reshaping different dimensions of the U.S. labor market.
22. Internet Application Protocols and Standards (Stockholm University) – Course content on Internet application layer protocols and standards.
23. Intro to Computer Graphics (Rice University) – Take advantage of lecture notes, as well access to links to free OpenGL tutorials, specs and books.
24. Web-based Information Systems (University of Alberta) – Take a look at issues related to the design and implementation of web-based applications.
25. Webpage Authoring (Sophia – Gavilan College) – This is a hands-on introduction to using Hypertext Mark-Up Language (HTML).
26. Computer Communications (University of Calgary) – Free access to this computer networking and TCP/IP course with online notes, slides and a free book in PDF format.
27. Computer Networks (Princeton University) – Study computer networks and the services built on top of them (multi-access networks, routing and flow control, IP, TCP, BGP).
28. Computer Networks (Indian Institute of Technology, Madras) – 40 lectures from Prof. S. Ghosh regarding computer networks.
29. Fundamentals of Computer Communication Networks (University of Florida) – Take advantage of online notes covering data transmission, coding, error detection and more.
30. Internetworking (University of Technology, Sydney) – Get free notes for multi-protocol LAN design, IP and IPX, WAN design and more.
31. Network Systems (University of Washington) – This course focuses on the design of computer networks, protocol design, peer-to-peer systems and more.
32. Understanding Networked Computing (University of Michigan) – This course promotes a deeper understanding of networked computing and its effect on society.
33. Adventures in Advanced Symbolic Programming (MIT) – Cover the concepts and techniques for the design and implementation of large software systems.
34. HTML Basics (University of Washington) – Learn the basic structure of an HTML document, what HTML tags look like and more.
35. Introduction to Java Programming (Orange Coast College) – This course offers an introduction to the Java programming language.
36. Multicore Programming Primer (MIT) – Introductory course in parallel programming.
37. Object Oriented Programming in C++ (University of Southern Queensland) – Extend basic procedural design and programming knowledge into the objected-oriented paradigm.
38. Programming with Robots (Capilano University) – The course uses Lego Mindstorm robots to illustrate the fundamental concepts in computer programming and problem solving.
39. Programming XML in Java (Rensselaer Polytechnic Institute) – Free course covers the ins and outs of programming XML in Java.
40. The Structure and Interpretation of Computer Programs (ArsDigita University) – Enjoy this introduction to programming and the power of abstraction.
Operating Systems and Security
41. Computer Security (Cornell University) – Course notes and graphics discussing computer security.
42. Operating Systems and Tools: UNIX (Virginia Tech) – This is an excellent beginner’s guide with helpful information for users of the UNIX operating system.
43. Unix Workshop (ArsDigita University) – This self-study workshop allows you to review and learn a wide range of Unix tools (shell scripts, awk, lex, yacc, grep, etc.).
44. Computer Systems Engineering (MIT) – Learn about the ins and outs of engineering of computer software and hardware systems.
45. Elements of Software Construction (MIT) – This is an introduction to the fundamental principles and techniques of software development.
46. Introduction to Software Engineering in Java (MIT) – This is an introduction to Java programming and software engineering designed for those with no experience.
47. Principles of Software Engineering (University of Washington) – A closer look at software engineering and design.
48. Software Design (Grinnell College) – This course studies the software life cycle and includes a look at design, coding, testing and documenting large software packages.
49. Software Engineering I (Purdue University) – These lecture slides cover software processes, requirements analysis, software architecture and testing.
50. Systems (ArsDigita University) – Take a look at topics related to the engineering of computer software and hardware systems.