This repository is an archive of course materials from ArsDigita University (ADUni) — a tuition-free one-year post-baccalaureate computer science program that was an MIT experiment in the late 1990s/early 2000s. It contains complete lecture notes, problem sets, exams, student solutions, and links to video lectures across 12 computer science courses.
License: Creative Commons Attribution-ShareAlike 2.0
aduni/
├── 00_math_for_cs/ # Calculus and Linear Algebra
├── 01_sicp/ # Structure & Interpretation of Computer Programs (Scheme)
├── 02_discrete_math/ # Logic, sets, graph theory, combinatorics, proofs
├── 03_how_computers_work/ # Digital design, architecture, Beta ISA, caching
├── 04_java/ # OOP, software engineering, Java projects
├── 05_algorithms/ # Sorting, graphs, DP, greedy, NP-completeness
├── 06_systems/ # Networks, distributed systems, transactions
├── 07_web_applications/ # Web development with database backends
├── 08_theory_of_computation/# FSMs, CFLs, Turing machines, complexity
├── 09_ai/ # Search, knowledge engineering, neural nets
├── 10_databases/ # RDBMS, relational algebra, query optimization
├── 11_probability/ # Applied probability and statistics
├── unix_workshop/ # Self-study Unix tools (grep, awk, yacc)
├── student_solutions/ # Student implementations organized by student name
├── readme.md # Main README with YouTube lecture video links
├── copyright.textile # Open Content License notice
├── license.textile # Full CC BY-SA 2.0 license text
└── videos.textile # Comprehensive lecture video link list
Each numbered course directory typically contains:
course_description— HTML file describing the course syllabuslect_notes/— Lecture notes (PDFs, PowerPoint presentations)psets/— Problem sets (PDFs and LaTeX source)exams/— Exam papers and solutions (PDFs)handouts/— Supplementary course materialsuseful-links.txt— External reference links
The student_solutions/ directory contains individual student work organized by name:
shyam/— Most comprehensive (algorithms, db, dmath, hcw, java, sicp, systems, web)tom/— Java and Python solutionsjeff/— C, Java, Ruby code, HTML parserchris/— Java solutionsseth/— Java solutions
03_how_computers_work/Betasim/ contains a Java-based Beta processor simulator with UASM assembly programs, used for computer architecture coursework.
| Language | Approximate Count | Context |
|---|---|---|
| Java | ~557 files | OOP course, student projects |
| Ruby | ~216 files | Web applications course |
| Scheme | ~98 files | SICP course |
| Python | ~88 files | Student solutions |
| Tcl | ~106 files | Testing/automation scripts |
| C/C++ | ~16 files | Systems-level code |
| UASM | ~24 files | Beta ISA assembly language |
- Course descriptions are in HTML format
- Lecture notes are primarily PDF and PowerPoint (.ppt)
- Problem sets include both PDF and LaTeX (.tex) source files
- Metadata files use Textile markup (.textile)
- The main README uses GitHub-flavored Markdown
- Courses are numbered
00_through11_with descriptive snake_case names - Student solution directories use first names
- Subdirectories within courses use short descriptive names (
lect_notes,psets,exams)
- Binary files (PDFs, JARs, images) are stored alongside source files
- No build system or package manager configuration exists
- This is a static archive — no compilation or runtime required
This repository is a static educational archive. There is no build system, CI/CD pipeline, or automated testing. Changes are typically limited to:
- Updating the README with new video links or corrections
- Adding or organizing course materials
- Documentation improvements
- Commit messages are short and descriptive (e.g., "Update readme.md")
- The repository uses a simple linear history
- No branch protection or PR workflow historically established
-
This is an archive, not an active software project. Do not attempt to add build systems, linters, or development tooling unless explicitly requested.
-
Preserve existing file formats. The mix of Textile, HTML, Markdown, and PDF is intentional and reflects the era of the original materials.
-
Student solutions are historical artifacts. Do not modify or "improve" student code — it represents actual coursework from 2000-2001.
-
Video links point to YouTube. Some may be broken over time. When updating, verify links are still accessible.
-
License compliance. All content is under CC BY-SA 2.0. Any additions must be compatible with this license.
-
No secrets or credentials exist in this repository — it is entirely educational content.
-
Binary files are present. PDFs, JARs, PowerPoint files, and images are part of the archive. Git LFS is not used.
-
The Betasim simulator (
03_how_computers_work/Betasim/) is a self-contained Java application and should not be modified without understanding the Beta ISA architecture.