# Courses

Many universities make their course materials available online. I prefer actual university courses to resources such as Coursera.

## Courses I studied in my spare time

* [MIT 6.824: Distributed Systems](/tech/algorithms/distributed-hash-table-dht.md)
* [MIT 6.854/18.415: Advanced Algorithms + Stanford CS168: The Modern Algorithmic Toolbox](/courses/mit-6.854-18.415-advanced-algorithms-+-stanford-cs168-the-modern-algorithmic-toolbox.md)
* [Stanford CS234: Reinforcement Learning](http://web.stanford.edu/class/cs234/)
* [Stanford CS243: Program Analysis and Optimization](https://suif.stanford.edu/~courses/cs243/)
* [Stanford CS246: Mining Massive Data Sets](http://web.stanford.edu/class/cs246/)
  * [My homework solutions.](https://github.com/ainzzorl/stanford-246-mining-massive-datasets)

## Courses I consider doing

* <https://news.ycombinator.com/item?id=27388391>

## How to choose a course

It goes without saying that the topic and the syllabus must be interesting and useful (whatever it means) to you. Beside that, an important factor is availability of study materials:

* Lecture notes.
* Textbooks.
* lecture videos.
* Homeworks.
  * When it comes to CS-related courses, I greatly prefer exercises that involve coding something.
* Solutions to homeworks.

If I don't know what I want to study, I skim the lists:

* [Stanford CS](https://cs.stanford.edu/academics/courses)
* [MIT CS](https://courses.csail.mit.edu/)
* Harvard: TODO

## How I study

After watching/listening/reading a lecture, I try to briefly explain the gist in my own words. If I can't, it means I didn't understand it. I also try to summarize the biggest takeways from it.

Homeworks are extremely important. I neglected them when I was a student, but now when I study something in my spare time I take homeworks very seriously.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.ainzzorl.lol/courses.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
