#Online Coursers
Given by Prof. Grossman at U of Washington, the course is about the basic concepts of programming languages. Using the language ML, Racket and Ruby as vehicles, it teaches common features of a language and ways to learn new languages quicly.
Given by Prof. Katz at UMD College Park, an introduction to Cryptography.
Given by Prof. Hicks at UMD College Park, the course is looking at common attacks, effective defences, tools and processes that "build security in" during the development process.
Given by Prof. Hwu at UIUC (I am also an Illini :J ), the course teaches you the theory in GPU computing, and how to leverage other devices to accomplish a more powerful computation. Original Problem Set
Given by [Prof. Roughgarden] (http://theory.stanford.edu/~tim/) at Stanford, serveral fundamental principles of algorithm design: divide-and-conquer methods, graph algorithms, practical data structures (heaps, hash tables, search trees), randomized algorithms, and more.