"Databases" was one of Stanford's three inaugural massive open online courses in the fall of 2011; it was offered again in MOOC format in 2013 and 2014. The course is now being offered as a set of smaller self-paced courses, which can be assembled in a variety of ways to learn about different aspects of databases. All of the courses are based around video lectures and/or video demos. Many of them include in-video quizzes to check understanding, in-depth standalone quizzes, and/or a variety of automatically-checked interactive programming exercises. Each course also includes a discussion forum and pointers to readings and resources. The courses are described briefly below, along with suggested pathways through them. Taught by Professor Jennifer Widom, the overall curriculum draws from Stanford's popular Databases course.
Why Learn About Databases
Databases are incredibly prevalent -- they underlie technology used by most people every day if not every hour. Databases reside behind a huge fraction of websites; they're a crucial component of telecommunications systems, banking systems, video games, and just about any other software system or electronic device that maintains some amount of persistent information. In addition to persistence, database systems provide a number of other properties that make them exceptionally useful and convenient: reliability, efficiency, scalability, concurrency control, data abstractions, and high-level query languages. Databases are so ubiquitous and important that computer science graduates frequently cite their database class as the one most useful to them in their industry or graduate-school careers.