#Systems Graduate level operating systems courses don't typically have notes - they all come with long reading lists taken from SOSP and other places. In this way, systems research is a bit more like a humanities subject: it's vital to read the primary sources.
#Databases
- MIT 6.852 - Distributed Algorithms - Goodish lecture slides, detailed but manageable set of readings and some homework problems. Lectured by Professor Lynch at MIT, who literally wrote the book on the subject.
- Distributed Algorithms Lecture Notes - Very readable set of lecture notes on distributed algorithms, for a course given in 1993 at the Technion in Israel (I think).
- MIT 6.885 - Distributed Algorithms for Mobile Wireless Ad-Hoc Networks - One of the only courses on this particular niche subject. Taught simultaneously by Jennifer Welch and Nancy Lynch. Notes are very good, reading lists is very comprehensive and there are also some good handouts!
#Data Structures and Algorithms
- MIT 6.854J (OCW) - Advanced Algorithms - A good first course after familiarity with Cormen et. al. is achieved. Topics include competitive queues, splay trees, six lectures on flow algorithms, linear programming and computational geometry. Lecturer's own notes are sparse, but the scribed notes are very useful.
- MIT 6.851 - Advanced Data Structures - supercedes the below course I think, both taught by the legendary Erik Demaine. Worth keeping the below one around as well, since the notes are slightly different as are the topics covered.
- MIT 6.897 - Advanced Data Structures - good coverage of advanced topics including dynamic graphs, succinct data structures and data structures for integers. Scribe notes are excellent, lecturer's own hand-written notes less so.
- Chicago CS369E - Expanders in Computer Science - graduate level course on expander graphs and their applications to computer science. Notes are excellent.
- Harvard CS225 - Pseudorandomness - good scribe notes, covers randomized algorithms, quite a lot on expander graphs etc.
- Yale 500A - Spectral Graph Theory and its Applications - slightly rambling but clear and interesting lecturer written notes.
- UIUC CS573: Algorithmic Game Theory - good scribe notes and a pointer to a massive online text book.
- Cornell CS683 - Advanced Algorithms - detailed web page, notes and readings. Focus is on approximation algorithms, linear programming and randomisation.
- Wisconsin CS787 - Advanced Algorithms - decent notes and readings. Linear programming, network flows, approximation and randomisation, plus some interesting stuff on online algorithms.
- UIUC CS 373 - Combinatorial Algorithms - a senior undergraduate course in mainly advanced topics from CLRS with outstanding notes.
- MIT 6.042J (OCW) - Elementary discrete maths, including graph theory and some combinatorics. Lecture slides are available, and good, but the real meat is in the readings.
<!-- FOOTER -->
<div id="footer_wrap" class="outer">
<footer class="inner">
<p class="copyright">Distributed-systems-readings maintained by <a href="https://github.com/henryr">henryr</a></p>
<p>Published with <a href="http://pages.github.com/">GitHub Pages</a></p>
</footer>
</div>
nice list, thanks!