Awesome CS Courses
:books: List of awesome university courses for learning Computer Science!
CS 61CGreat Ideas in Computer Architecture (Machine Structures) UC Berkeley; The subjects covered in this course include: C…
Lecture VideosOld ExamsCS 107Computer Organization & Systems Stanford University; CS107 is the third course in Stanford's introductory programming…
Lecture VideosAssignmentsCS 140Operating Systems Stanford University; This class introduces the basic facilities provided in modern operating…
Assignments6.004Computation Structures MIT; Introduces architecture of digital systems, emphasizing structural principles common to a…
Youtube PlaylistLecture NotesLabs-AssignmentsCS 162Operating Systems and Systems Programming UC Berkeley; The purpose of this course is to teach the design of operating…
Lecture VideosSpring 2015 lectures
Lecture NotesSpring 2015 lectures
CS 168Introduction to the Internet: Architecture and Protocols UC Berkeley; This course is an introduction to the Internet…
Lecture Notes & AssignmentsCS 179GPU Programming Caltech; This course will cover programming techniques for the GPU. The course will introduce NVIDIA's…
CS 186Introduction to Database Systems UC Berkeley; In the project assignments in CS186, you will write a basic database…
Lecture VideosLecture NotesProjectsCS 241Systems Programming (Spring 2016) Univ of Illinois, Urbana-Champaign; System programming refers to writing code that…
AssignmentsLabsGithub PageCrowd Sourced BookCS 425Distributed Systems Univ of Illinois, Urbana-Champaign; Brilliant set of lectures and reading material covering…
LecturesAssignmentsCS 452Real-Time Programming University of Waterloo; Write a real-time OS microkernel in C, and application code to operate a…
AssignmentsLecture notesCS 2043Unix Tools & Scripting Cornell University; UNIX-like systems are increasingly being used on personal computers, mobile…
CS 3410Computer System Organization and Programming Cornell University; CS3410 provides an introduction to computer…
LecturesCS 4410Operating Systems Cornell University; CS 4410 covers systems programming and introductory operating system design and…
SyllabusLecturesCS 4414Operating Systems University of Virginia; A course (that) covers topics including: Analysis process communication and…
SyllabusLecturesCS 5412Cloud Computing Cornell University; Taught by one of the stalwarts of this field, Prof Ken Birman, this course has a…
SlidesCSCE 3613Operating Systems University of Arkansas (Fayetteville) - An introduction to operating systems including topics in…
SyllabusAssignmentsLecture NotesReadingsCSCI-UA.0202: Operating Systems (Undergrad)Operating Systems NYU; NYU's operating system course. It's a fundamental course focusing basic ideas of operating…
AssignmentsLecturesOld ExamsCSCI 360Computer Architecture 3 CUNY Hunter College; A course that covers cache design, buses, memory hierarchies,…
CSCI 493.66UNIX System Programming (formerly UNIX Tools) CUNY Hunter College; A course that is mostly about writing programs…
CSCI 493.75Parallel Computing CUNY Hunter College; The course is an introduction to parallel algorithms and parallel programming…
Hack the KernelIntroduction to Operating Systems SUNY University at Buffalo, NY; This course is an introduction to operating system…
SyllabusSlidesVideo lecturesAssignmentsOld ExamsECE 459Programming for Performance University of Waterloo; Learn techniques for profiling, rearchitecting, and implementing…
Lecture slidesECGR4101/5101Embedded Systems using the Renesas RX63N Processor University of North Carolina at Charlotte; Introduction to…
Lecture VideosPODCPrinciples of Distributed Computing ETH-Zurich; Explore essential algorithmic ideas and lower bound techniques,…
BookSPACParallelism and Concurrency Univ of Washington; Technically not a course nevertheless an awesome collection of…
6.824Distributed Systems MIT; MIT's graduate-level DS course with a focus on fault tolerance, replication, and consistency,…
AssignmentsJust do git clone git://g.csail.mit.edu/6.824-golabs-2014 6.824
Readings6.828Operating Systems MIT; MIT's operating systems course focusing on the fundamentals of OS design including booting,…
AssignmentsLecturesVideosNote: These are student recorded cam videos of the 2011 course. The videos explain a lot of concepts required for the…
CSEP 552Distributed Systems University of Washington; CSEP552 is a graduate course on distributed systems. Distributed systems…
Lecturesof a previous session are available to watch.
15-213Introduction to Computer Systems (ICS) Carnegie-Mellon University; The ICS course provides a programmer's view of how…
Lecture NotesVideosAssignments15-319/619Cloud Computing (ICS) Carnegie-Mellon University; This project-based on-line course focuses on skill building across…
15-410Operating System Design and Implementation Carnegie-Mellon University; This awesome course covers some fundamental…
Lecture NotesAssignments15-418Parallel Computer Architecture and Programming Carnegie-Mellon University; The goal of this course is to provide a…
AssignmentsLecture Notes15-440Distributed Systems Carnegie-Mellon University; Introduction to distributed systems with a focus on teaching concepts…
Assignments15-721Database Systems Carnegie-Mellon University; This course is a comprehensive study of the internals of modern database…
AssignmentsLecture VideosReadings15-445/645Database Systems Carnegie-Mellon University; This course covers fundamental topics of DBMS, compared to CMU 15-721.
AssignmentsLecture VideosReadings15-749Engineering Distributed Systems Carnegie-Mellon University; A project focused course on Distributed Systems with an…
Readings18-447Introduction to Computer Architecture CMU; Very comprehensive material on Computer Architecture - definitely more than…
Lectures and RecitationHomeworks7 HWs with answer set as well
ReadingsCS 75Principles of Compiler Design Swathmore College; Modelled after the influential paper on incremental approach to…
Course on GithubNotesCS 91Introduction to Programming Languages Swathmore College; Uses the Pyret programming language & PAPL book to understand…
LabsCIS 194Introduction to Haskell Penn Engineering; Explore the joys of functional programming, using Haskell as a vehicle. The…
Previoussemester also available, with more exercises
CIS 198Rust Programming UPenn; This course covers what makes Rust so unique and applies it to practical systems programming…
AssignmentsCMSC 430Introduction to Compilers Univ of Maryland; The goal of CMSC 430 is to arm students with the ability to design,…
Lecture NotesAssignmentsCorsoplPrinciples of Programming Languages Politecnico di Milano - Lecture Notes - Readings; This course gives an overview of…
COS 326Functional Programming Princeton University; Covers functional programming concepts like closures, tail-call recursion…
LecturesAssignmentsCS 143Compiler construction Stanford University; CS143 is a Stanford's course in the practical and theoretical aspects of…
SyllabusCS143 - 2011CS 164Hack your language! UC Berkeley; Introduction to programming languages by designing and implementing domain-specific…
Lecture VideosCode for AssignmentsCS 173Programming Languages Brown University; Course by Prof. Krishnamurthi (author of HtDP) and numerous other awesome…
VideosAssignmentsCS 223Purely Functional Data Structures In Elm University of Chicago; This course teaches functional reactive programming…
LecturesCS 240hFunctional Systems in Haskell Stanford University; Building software systems in Haskell; 3 Assignments: Lab1, Lab2, Lab3
Lecture SlidesCS 421Programming Languages and Compilers Univ of Illinois, Urbana-Champaign Course that uses OCaml to teach functional…
LecturesVideosAssignmentsExamsCS 3110Data Structures and Functional Programming Cornell University; Another course that uses OCaml to teach alternative…
Lecture SlidesAssignmentsCS 4120Introduction to Compilers Cornell University; An introduction to the specification and implementation of modern…
SyllabusLecturesAssignmentsCS 4400Programming Languages Northeastern University; This is a course on the study, design, and implementation of…
SyllabusLecture Notes/ResourcesCS 4610Programming Languages and Compilers University of Virginia; Course that uses OCaml to teach functional programming and…
Lecture NotesAssignmentsCS 5114Network Programming Languages Cornell University; This course provides an introduction to the languages used to…
SyllabusCS 5142Scripting Languages Cornell University; Perl, PHP, JavaScript, VisualBasic -- they are often-requested skills for…
CS 5470Compilers University of Utah; If you're a fan of Prof Matt's writing on his fantastic blog you ought to give this a…
Lecture NotesCS 6118Types and Semantics Cornell University; Types and Semantics is about designing and understand programming languages,…
CSC 253CPython internals: A ten-hour codewalk through the Python interpreter source code University of Rochester; Nine…
CSE 341Programming Languages University of Washington; Covers non-imperative paradigms and languages such as Ruby, Racket,…
Lectures and VideosCSE P 501Compiler Construction University of Washington; Teaches understanding of how a modern compiler is structured and the…
Assignments, Tests, and SolutionsDMFPDiscrete Mathematics and Functional Programming Wheaton College; A course that teaches discrete maths concepts with…
AssignmentsPCPPPractical Concurrent and Parallel Programming IT University of Copenhagen; In this MSc course you learn how to write…
6.945Adventures in Advanced Symbolic Programming MIT; Taught by Gerald Sussman of SICP fame, this class deals with concepts…
AssignmentsExtensive programming assignments, using MIT/GNU Scheme. Students should have significant programming experience in…
ReadingsCS 696Functional Design and Programming San Diego State University; Covers functional programming basis using Clojure.;…
L28Advanced Functional Programming University of Cambridge; This module aims to teach students how to use the features of…
CS 61BData Structures UC Berkeley; In this course, you will study advanced programming techniques including data structures,…
LabsThe link to labs and projects is included in the website.
Lecture VideosCS 97SIIntroduction to Competitive Programming Stanford University; Fantastic repository of theory and practice problems…
Lectures and AssignmentsStanford Notebook provides printable templates usable during online/on-site contests.
CS 224Advanced Algorithms Harvard University; CS 224 is an advanced course in algorithm design, and topics we will cover…
Lecture Videos(Youtube)
AssignmentsCS 261A Second Course in Algorithms Stanford University; Algorithms for network optimization: max-flow, min-cost flow,…
CS 473/573Fundamental Algorithms Univ of Illinois, Urbana-Champaign; Algorithms class covering recursion, randomization,…
Lecture NotesLabs and ExamsCS 2150Program & Data Representation University of Virginia; This data structures course introduces C++, linked-lists,…
LecturesAssignmentsCS 4820Introduction to Analysis of Algorithms Cornell University; This course develops techniques used in the design and…
LecturesSyllabusCSCI 104Data Structures and Object Oriented Design University of Southern California (USC)
LabsAssignmentsAdditional ResourcesCSCI 135Software Design and Analysis I CUNY Hunter College; It is currently an intensive introduction to program development…
Lectures and AssignmentsCSCI 235Software Design and Analysis II CUNY Hunter College; Introduces algorithms for a few common problems such as sorting.…
Lectures and AssignmentsCSCI 335Software Design and Analysis III CUNY Hunter College; This includes the introduction of hashes, heaps, various forms…
Lectures and AssignmentsCSE 331Software Design and Implementation University of Washington; Explores concepts and techniques for design and…
CSE 373Analysis of Algorithms Stony Brook University; Prof Steven Skiena's no stranger to any student when it comes to…
Lecture VideosECS 122AAlgorithm Design and Analysis UC Davis; Taught by Dan Gusfield in 2010, this course is an undergraduate introduction…
SyllabusLecture VideosECS 222AGraduate Level Algorithm Design and Analysis UC Davis; This is the graduate level complement to the ECS 122A…
Lecture VideosSyllabus6.INTHacking a Google Interview MIT; This course taught in the MIT Independent Activities Period in 2009 goes over common…
HandoutsTopics Covered6.006Introduction to Algorithms MIT; This course provides an introduction to mathematical modeling of computational…
Lecture VideosAssignmentsReadingsResourcesOld Exams6.046J/18.410JDesign and Analysis of Algorithms MIT; This is an intermediate algorithms course with an emphasis on teaching…
Lecture VideosLecture NotesAssignmentsResourcesOld Exams6.851Advanced Data Structures MIT; This is an advanced DS course, you must be done with the Advanced Algorithms course…
LecturesContains videos from sp2012 version, but there isn't much difference.
Assignmentscontains the calendar as well.
6.854/18.415JAdvanced Algorithms MIT; Advanced course in algorithms by Dr. David Karger covering topics such as amortization,…
6.854J/18.415JAdvanced Algorithms MIT; This course is a first-year graduate course in algorithms. Emphasis is placed on fundamental…
Lecture Videos - Spring 2016Lecture NotesAssignmentsReadingsResources15-451/651Algorithms Carnegie Mellon University; The required algorithms class that go in depth into all basic algorithms and…
16s-4102Algorithms University of Virginia
CIS 500Software Foundations University of Pennsylvania; An introduction to formal verification of software using the Coq…
TextbookCS 103Mathematical Foundations of Computing Stanford University; CS103 is a first course in discrete math, computability…
CS 173Discrete Structures Univ of Illinois Urbana-Champaign; This course is an introduction to the theoretical side of…
TextbookWritten by the professor. Includes Instructor's Guide.
AssignmentsExamsCS 276Foundations of Cryptography UC Berkeley; This course discusses the complexity-theory foundations of modern…
CS 278Complexity Theory UC Berkeley; A graduate level course on complexity theory that introduces P vs NP, the power of…
CS 374Algorithms & Models of Computation (Fall 2014) University of Illinois Urbana-Champaign; CS 498 section 374…
Assignments/ExamsLecture Notes/LabsLecture videosCS 3110Data Structures and Functional Programming Cornell University; CS 3110 (formerly CS 312) is the third programming…
SyllabusLecturesAssignmentsCS 3220Introduction to Scientific Computing Cornell University; In this one-semester survey course, we introduce numerical…
SyllabusLecturesAssignmentsCS 4300Information Retrieval Cornell University; Studies the methods used to search for and discover information in…
SyllabusLecturesCS 4810Introduction to Theory of Computing Cornell University; This undergraduate course provides a broad introduction to the…
SyllabusLecturesAssignmentsCS 6810Theory of Computing Cornell University; This graduate course gives a broad introduction to complexity theory,…
SyllabusLecturesAssignmentsCSCE 3193Programming Paradigms University of Arkansas (Fayetteville); Programming in different paradigms with emphasis on…
SyllabusNotesAssignmentsPractice Exams6.045Great Ideas in Theoretical Computer Science MIT; This course provides a challenging introduction to some of the…
SyllabusLecture Notes🆓
Lecture VideosCS 10The Beauty and Joy of Computing UC Berkeley; CS10 is UCB's introductory computer science class, taught using the…
Snap*!*(based on Scratch by MIT).
CurriculumCS 50Introduction to Computer Science Harvard University; CS50x is Harvard College's introduction to the intellectual…
LecturesCS 61AStructure and Interpretation of Computer Programs [Python] UC Berkeley; In CS 61A, we are interested in teaching you…
Lecture VideosLecture Resources by TypeLecture Resources by TopicAdditional ResourcesPractice ProblemsExtra LecturesCS 61ASStructure & Interpretation of Computer Programs [Racket] UC Berkeley; A self-paced version of the CS61 Course but in…
Lecture VideosAssignments and NotesCS 101Computer Science 101 Stanford University; CS101 teaches the essential ideas of Computer Science for a…
CS 106AProgramming Methodology Stanford University; This course is the largest of the introductory programming courses and is…
All materials in a zip fileCS 106BProgramming Abstractions Stanford University; This course is the natural successor to Programming Methodology and…
All materials in a zip fileCS 107Programming Paradigms Stanford University; Topics: Advanced memory management features of C and C++; the differences…
CS 109Programming Practice Using Scala KAIST; This course introduces basic concepts of programming and computer science,…
CS 1109Fundamental Programming Concepts Cornell University; This course provides an introduction to programming and problem…
SyllabusLecturesCS 1110Introduction to Computing Using Python Cornell University; Programming and problem solving using Python. Emphasizes…
SyllabusLecturesAssignmentsCS 1112Introduction to Computing Using Matlab Cornell University; Programming and problem solving using MATLAB. Emphasizes…
SyllabusAssignmentsProjectsCS 1115Introduction to Computational Science and Engineering Using Matlab Graphical User Interfaces Cornell University;…
SyllabusLecturesProjectsCS 1130Transition to OO Programming Cornell University; Introduction to object-oriented concepts using Java. Assumes…
SyllabusLecturesAssignmentsCS 1133Transition to Python Cornell University; Introduction to the Python programming language. Covers the basic programming…
SyllabusLecturesAssignmentsCS 1410-2and CS2420-20 Computer Science I and II for Hackers University of Utah; An intro course in the spirit of SICP designed…
Lectures and Assignments 1Lectures and Assignments 2TextbookRacket LanguageCS 2110Object-Oriented Programming and Data Structures Cornell University; CS 2110 is an intermediate-level programming…
SyllabusAssignmentsCS 4302Web Information Systems Cornell University; This course will introduce you to technologies for building data-centric…
SyllabusLecturesAssignmentsCSCE 2004Programming Foundations I University of Arkansas (Fayetteville); Introductory course for students majoring in computer…
SyllabusNotesAssignmentsCSCI E-1Understanding Computers and the Internet Harvard University Extension College; This course is all about understanding:…
SyllabusNotes / RecapsAssignmentsCS-for-allCS for All Harvey Mudd College; This book (and course) takes a unique approach to “Intro CS.” In a nutshell, our…
Lectures and Other resources6.001Structure and Interpretation of Computer Programs MIT; Teaches big-picture computing concepts using the Scheme…
LecturesTextbook(epub, pdf)
IDE6.005Software Construction, Fall 2016 MIT; This course introduces fundamental principles and techniques of software…
DEEPNLPDeep Learning for Natural Language Processing University of Oxford; This is an applied course focussing on recent…
LecturesLecture materials from Oxford's Deep Natural Language Processing course.
CS20siTensorflow for Deep Learning Research Stanford University; This course will cover the fundamentals and contemporary…
Assignmentsavailable on Github.
COMS 4771Machine Learning Columbia University; Course taught by Tony Jebara introduces topics in Machine Learning for both…
Lectures and AssignmentsCS 109Data Science Harvard University; Learning from data in order to gain useful predictions and insights. This course…
LecturesSlidesLabs and Assignments2014 Lectures2013 Lectures(slightly better)
CS 156Learning from Data Caltech; This is an introductory course in machine learning (ML) that covers the basic theory,…
LecturesHomeworkTextbookCS 189Introduction To Machine Learning UC Berkeley; Introductory ML course covering a wide range of topics: ranging from…
CS 224dDeep Learning for Natural Language Processing Stanford University; Natural language processing (NLP) is one of the…
Syllabusby Stanford
CS 229rAlgorithms for Big Data Harvard University; Big data is data so large that it does not fit in the main memory of a…
Lectures(Youtube)
AssignmentsCS 231nConvolutional Neural Networks for Visual Recognition Stanford University; Computer Vision has become ubiquitous in our…
Lecture Notes🆓
Lecture VideosGithub PageCS 287Advanced Robotics UC Berkeley; The course introduces the math and algorithms underneath state-of-the-art robotic…
CS 395TStatistical and Discrete Methods for Scientific Computing University of Texas; Practical course in applying modern…
Lectures and AssignmentsCS 4780Machine Learning Cornell University; This course will introduce you to technologies for building data-centric…
CS 4786Machine Learning for Data Science Cornell University; An introductory course in machine learning, with a focus on data…
AssignmentsLecturesCVX 101Convex Optimization Stanford University; The course concentrates on recognizing and solving convex optimization…
TextbookLectures and AssignmentsDS-GA 1008Deep Learning New York University; This increasingly popular course is taught through the Data Science Center at NYU.…
Recorded LecturesEECS E6893 & EECS E6895Big Data Analytics & Advanced Big Data Analytics Columbia University; Students will gain knowledge on analyzing Big…
EECS E6894Deep Learning for Computer Vision and Natural Language Processing Columbia University; This graduate level research…
ReadingsAssignmentsEE103Introduction to Matrix Methods Stanford University; The course covers the basics of matrices and vectors, solving…
LecturesBookAssignmentsCodeFast.ai Introduction to Machine Learning for CodersFast.ai / University of San Francisco; There are around 24 hours of lessons, and you should plan to spend around 8…
Lecture VideosLecture NotesJupyter NotebooksDeep learning library providing practitioners with high-level components for state-of-the-art results. Built on…
Info 290Analyzing Big Data with Twitter UC Berkeley school of information; In this course, UC Berkeley professors and Twitter…
Lecture VideosPrevious Years coursepageMachine Learning: 2014-2015University of Oxford; The course focusses on neural networks and uses the Torch deep learning library (implemented in…
Source codeStatLearningIntro to Statistical Learning Stanford University; This is an introductory-level course in supervised learning, with a…
10-601Machine Learning Carnegie Mellon University; This course covers the theory and practical algorithms for machine…
LecturesProject Ideas and Datasets10-708Probabilistic Graphical Models Carnegie Mellon University; Many of the problems in artificial intelligence,…
Lecture VideosAssignments11-785Deep Learning Carnegie Mellon University; The course presents the subject through a series of seminars and labs, which…
CS246Mining Massive Data Sets Stanford University; The course will discuss data mining and machine learning algorithms for…
Lecture Videosby Jure Leskovec, Anand Rajaraman, and Jeff Ullman
AssignmentsCS276Information Retrieval and Web Search Stanford University; Basic and advanced techniques for text-based information…
Practical_RLReinforcement Learning in the Wild Yandex SDA; A course on reinforcement learning in the wild. Taught on-campus in HSE…
UvA DEEP LEARNINGUvA Deep Learning Course University of Amsterdam; This course is taught in the MSc program in Artificial Intelligence…
CIS 4930 / CIS 5930Offensive Computer Security Florida State University; Course taught by W. Owen Redwood and Xiuwen Liu. It covers a…
Lectures and Videosby W. Owen Redwood and Prof. Xiuwen Liu.
AssignmentsCS 155Computer and Network Security Stanford; Principles of computer systems security. Attack techniques and how to defend…
CS 161Computer Security UC Berkeley; Introduction to computer security. Cryptography, including encryption, authentication,…
CS 259Security Modeling and Analysis Stanford; The course will cover a variety of contemporary network protocols and other…
CS 261Internet/Network Security UC Berkeley; This class aims to provide a thorough grounding in network security suitable…
CS 5430System Security Cornell University; This course discusses security for computers and networked information systems. We…
SyllabusLecturesCSCI 4968Modern Binary Exploitation Rensselaer Polytechnic Institute; This repository contains the materials as developed and…
Lectures NotesCSCI 4976Malware Analysis Rensselaer Polytechnic Institute; This repository contains the materials as developed and used by…
EECS 588Computer & Network Security University of Michigan; Taught by J. Alex Halderman who has analyzed the security of…
ReadingsPractical Malware Analysis book by Michael Sikorski and Andrew Honig, to teach skills in reverse engineering,…
6.857Computer and Network Security MIT; Emphasis on applied cryptography and may include: basic notion of systems security,…
6.858Computer Systems Security MIT; Design and implementation of secure computer systems. Lectures cover threat models,…
Video Lectures and LabsQuizzesReadingsFinal Projects18-636Browser Security Stanford; The Web continues to grow in popularity as platform for retail transactions, financial…
CS 188Introduction to Artificial Intelligence UC Berkeley; This course will introduce the basic ideas and techniques…
LecturesProjectsExamsCS 4700Foundations of Artificial Intelligence Cornell University; This course will provide an introduction to computer…
CS 6700Advanced Artificial Intelligence Cornell University; The design of systems that are among top 10 performers in the…
Syllabus6.868JThe Society of Mind MIT; This course is an introduction, by Prof. Marvin Minsky, to the theory that tries to explain…
LecturesAssignmentsReadingsCAP 5415Computer Vision University of Central Florida; An introductory level course covering the basic topics of computer…
Lectures and VideosAssignmentsby UCF
CIS 581Computer Vision and Computational Photography University of Pennsylvania; An introductory course in computer vision…
LecturesAssignmentsCMU 462Computer Graphics Carnegie Mellon University; This course provides a comprehensive introduction to computer graphics.…
Lectures and ReadingsAssignments and QuizesCS 3783D Reconstruction with Computer Vision UTexas; In this lab-based class, we'll dive into practical applications of 3D…
CS 4620Introduction to Computer Graphics Cornell University; The study of creating, manipulating, and using visual images in…
CS 4670Introduction to Computer Vision Cornell University; This course will provide an introduction to computer vision, with…
AssignmentsLecturesCS 6670Computer Vision Cornell University; Introduction to computer vision. Topics include edge detection, image…
SyllabusAssignmentsCSCI 1230Introduction to Computer Graphics Brown University; This course offers an in-depth exploration of fundamental concepts…
LecturesLabsDemosCSCI-GA.2270-001Graduate Computer Graphics New York University; Step-by-step study computer graphics, with reading and homework at…
AM 207Monte Carlo Methods and Stochastic Optimization Harvard University; This course introduces important principles of…
Lecture VideosAssignmentsLecture NotesCS 75Introduction to Game Development Tufts University; The course taught by Ming Y. Chow teaches game development…
Text LecturesAssignmentsLabsCS 50Intro to Game Developement Harvard University; This course picks up where Harvard College’s CS50 leaves off, focusing…
AssignmentsLecture VideosCS 100Open Source Software Construction UC Riverside; This is a course on how to be a hacker. Your first four homework…
CS 108Object Oriented System Design Stanford; Software design and construction in the context of large OOP libraries. Taught…
CS 168Computer Networks UC Berkeley; This is an undergraduate level course covering the fundamental concepts of networking…
CS 193aAndroid App Development, Spring 2016 Stanford University; Course Description: This course provides an introduction to…
CS 193pDeveloping Applications for iOS Stanford University; Updated for iOS 7. Tools and APIs required to build applications…
Updated courses for iOS8 - SwiftStanford course by Paul Hegarty.
Updated courses for iOS9 - SwiftCS 223AIntroduction to Robotics Stanford University; The purpose of this course is to introduce you to basics of modeling,…
CS 262aAdvanced Topics in Computer Systems UC Berkeley; CS262a is the first semester of a year-long sequence on computer…
CS 294Cutting-edge Web Technologies Berkeley; Want to learn what makes future web technologies tick? Join us for the class…
CS 411Software Architecture Design Bilkent University; This course teaches the basic concepts, methods and techniques for…
CS 3152Introduction to Computer Game Development Cornell University; A project-based course in which programmers and…
SyllabusLecturesAssignmentsCS 4152Advanced Topics in Computer Game Development Cornell University; Project-based follow-up course to CS/INFO 3152.…
SyllabusLecturesAssignmentsCS 4154Analytics-driven Game Design Cornell University; A project-based course in which programmers and designers collaborate…
SyllabusLecturesAssignmentsCS 4812Quantum Information Processing Cornell University; Hardware that exploits quantum phenomena can dramatically alter the…
CS 4860Applied Logic Cornell University; In addition to basic first-order logic, when taught by Computer Science this course…
SyllabusCS 5150Software Engineering Cornell University; Introduction to the practical problems of specifying, designing, building,…
LecturesAssignmentsCS 5220Applications of Parallel Computers Cornell University; How do we solve the large-scale problems of science quickly on…
LecturesAssignmentsCS 5540Computational Techniques for Analyzing Clinical Data Cornell University; CS5540 is a masters-level course that covers…
SyllabusLecturesAssignmentsCS 5724Evolutionary Computation Cornell University; This course will cover advanced topics in evolutionary algorithms and…
LecturesCS 6452Datacenter Networks and Services Cornell University; CS6452 focuses on datacenter networks and services. The emerging…
SyllabusCS 6630Realistic Image Synthesis Cornell University; CS6630 is an introduction to physics-based rendering at the graduate…
LecturesCS 6640Computational Photography Cornell University; A course on the emerging applications of computation in photography.…
CS 6650Computational Motion Cornell University; Covers computational aspects of motion, broadly construed. Topics include the…
CS 6840Algorithmic Game Theory Cornell University; Algorithmic Game Theory combines algorithmic thinking with game-theoretic,…
CSE 154Web Programming University of Washington; This course is an introduction to programming for the World Wide Web. Covers…
LecturesAssignmentsESM 296-4FGIS & Spatial Analysis UC Santa Barbara; Taught by James Frew, Ben Best, and Lisa Wedding; Focuses on specific…
ICS 314Software Engineering University of Hawaii; Taught by Philip Johnson; Introduction to software engineering using the…
ReadingsExperiencesAssessmentsIGME 582Humanitarian Free & Open Source Software Development Rochester Institute of Technology; This course provides students…
I485 / H400Biologically Inspired Computation Indiana University; Course taught by Luis Rocha about the multi-disciplinary field…
Open Sourced Elective: Database and RailsIntro to Ruby on Rails University of Texas; An introductory course in Ruby on Rails open sourced by University of…
VideosSCICOMPAn Introduction to Efficient Scientific Computation Universität Bremen; This is a graduate course in scientific…
Lecture videos on Youtubeand for direct download
14-740Fundamentals of Computer Networks CMU; This is an introductory course on Networking for graduate students. It follows…
STAT 340Applied Regression Methods Smith College
Syllabus