Obsidian Setup Guide for DDIA Notes

1. Spaced Repetition Plugin ⭐

Purpose: Turn markdown notes into flashcards with spaced repetition

Installation:

  1. Settings → Community Plugins → Browse
  2. Search “Spaced Repetition”
  3. Install and Enable

Flashcard Formats Supported:

Question here
?
Answer here
 
---
 
Question::Answer (inline format)
 
Cloze deletion with ==highlighting==

Usage:

  • Open flashcard file
  • Click calendar icon in left ribbon OR use command palette (Cmd/Ctrl+P) → “Review flashcards”
  • The plugin will track your progress and schedule reviews

Settings to Configure:

  • Algorithm: SM-2 (default) or FSRS (more modern)
  • Review frequency
  • Folder for review scheduling

2. Dataview Plugin

Purpose: Create dynamic tables and queries from your notes

Example Queries:

TABLE status, last-updated
FROM "DDIA-Notes/chapters"
WHERE file.name LIKE "ch"
SORT file.name ASC
LIST
FROM "DDIA-Notes"
WHERE contains(tags, "#interview-prep")

3. Obsidian Git (Optional)

Purpose: Auto-backup to GitHub

Setup:

  1. Initialize git repo in your notes folder
  2. Install Obsidian Git plugin
  3. Configure auto-commit interval
  4. All your notes backed up automatically

4. Outliner Plugin

Purpose: Better list management (fold/unfold, move items)

5. Mind Map Plugin (Optional)

Purpose: Visualize note connections as mind maps

Folder Structure in Obsidian

DDIA-Notes/
├── 📖 README.md (Start here)
├── 🔧 workflow-guide.md
├── 🎯 key-concepts.md (Quick reference)
├── 📈 modern-trends.md
│
├── chapters/
│   ├── ch01-reliable-scalable-maintainable.md
│   ├── ch01-cheatsheet.md (5-min review)
│   └── ... (more chapters)
│
├── flashcards/
│   ├── ch01-flashcards.md (35 cards)
│   └── ... (more chapters)
│
├── qna/
│   └── session-notes.md (10+ Q&A)
│
└── obsidian-setup-guide.md (this file)

Daily Study Session (30-45 min)

Step 1: Read (15-20 min)

  • Read chapter in book
  • Take notes in chapter markdown file
  • Use highlights and annotations

Step 2: Review (10-15 min)

  • Review flashcards (spaced repetition)
  • Check cheat sheet for quick facts
  • Connect to previous chapters

Step 3: Practice (10-15 min)

  • Answer Q&A questions
  • Try explaining concept out loud
  • Research modern context

Pre-Interview Review (1-2 hours)

Quick Pass (30 min):

  1. Read all cheat sheets (5 min each)
  2. Review key-concepts.md (10 min)
  3. Skim modern-trends.md (10 min)

Deep Review (1-2 hours):

  1. Review all flashcards
  2. Practice Q&A questions (pretend interviewing)
  3. Draw diagrams for key concepts
  4. Review Twitter fan-out, scaling patterns

Using Tags

Tags are included in files for easy filtering:

#ddia - All DDIA-related notes
#chapter1, #chapter2, etc. - Chapter-specific
#reliability, #scalability, #maintainability - Topics
#interview-prep - Interview-focused content
#modern-trends - 2026 updates

Search by tag:

  • Click on any tag in a note
  • Use search: tag:#interview-prep
  • Use Dataview queries (see above)

Graph View Tips

Enable Graph View:

  • Click graph icon in left ribbon
  • Visualize connections between notes

Linking Notes:

See [[ch01-reliable-scalable-maintainable]] for details
Relates to [[modern-trends#Scalability Evolution]]

Why it’s useful:

  • See how concepts connect across chapters
  • Find related topics quickly
  • Visual representation of your knowledge

Flashcard Study Tips

First Week Strategy

  • Review daily (all cards in random order)
  • Mark difficult cards with priority
  • Don’t skip - consistency is key

After First Week

  • Follow spaced repetition schedule (plugin manages this)
  • Review new cards as you complete chapters
  • Revisit before interviews

Rating System

When reviewing cards, rate honestly:

  • Hard: See again soon
  • Good: Normal interval
  • Easy: Longer interval

Common Mistakes

❌ Marking “Easy” when you barely remember
❌ Skipping difficult cards
❌ Not reviewing regularly

✅ Be honest with ratings
✅ Focus on understanding, not memorization
✅ Review consistently

Creating Your Own Cards

Good Flashcard Principles

1. One concept per card

❌ Bad: "Explain reliability, scalability, and maintainability"
✅ Good: "What is reliability in the context of system design?"

2. Be specific

❌ Bad: "What is caching?"
✅ Good: "What are the trade-offs of pre-computing data vs computing on-demand?"

3. Include context

Question: In the Twitter fan-out problem, why is a hybrid approach used?
?
Answer: Regular users use push (pre-compute), celebrities use pull (compute on read)
Because: One celebrity tweet to 30M followers = 30M writes (write amplification)

4. Add examples

Question: What is tail latency and why does it matter?
?
Answer:
- Tail latency = slowest requests (p99, p999)
- Matters because: Often from users with most data (best customers)
- Example: Amazon found 100ms latency increase = 1% sales loss

Keyboard Shortcuts

Essential Shortcuts:

  • Cmd/Ctrl + O: Quick open file
  • Cmd/Ctrl + P: Command palette
  • Cmd/Ctrl + E: Toggle edit/preview mode
  • Cmd/Ctrl + F: Search current file
  • Cmd/Ctrl + Shift + F: Search all files

Navigation:

  • Cmd/Ctrl + Click: Open link in new pane
  • Alt + Arrow: Navigate back/forward
  • Cmd/Ctrl + W: Close current pane

Flashcard Review:

  • Set custom shortcut for “Review flashcards”
  • Suggestion: Cmd/Ctrl + R

Daily Note Integration (Optional)

Create daily notes template:

# {{date}} Study Session
 
## Today's Focus
- [ ] Read Chapter X
- [ ] Review flashcards
- [ ] Answer 3 Q&A questions
 
## Chapter Progress
- [[ch01-reliable-scalable-maintainable]] - ✅
- [[ch02-data-models]] - 🚧 In progress
 
## Questions/Insights
-
 
## Review Tomorrow
-
 
---
Tags: #daily-note #ddia

Mobile Study (Obsidian Mobile)

Best Practices:

  • Sync via Obsidian Sync or iCloud
  • Review flashcards during commute
  • Add quick questions/notes on the go
  • Full desktop experience on mobile

Customization Ideas

Custom CSS Snippets

Create .obsidian/snippets/ddia-style.css:

/* Highlight important concepts */
.important {
  background-color: #fff3cd;
  padding: 10px;
  border-left: 4px solid #ffc107;
}
 
/* Interview questions styling */
.interview-question {
  background-color: #d1ecf1;
  padding: 10px;
  border-left: 4px solid #0c5460;
}

Templates

Create templates for new chapters:

  • Settings → Templates → Template folder
  • Create chapter template
  • Use Cmd/Ctrl + T to insert

Backup Strategy

Local Backups

  1. Obsidian’s built-in backup: Copies to .obsidian/backups
  2. Time Machine / File History: System-level backup

Cloud Backups

  1. Obsidian Sync: Official paid sync ($8/month)
  2. Git + GitHub: Free, version control (use Obsidian Git plugin)
  3. iCloud / Dropbox: Store vault in cloud folder

Recommended: Git + GitHub for version control + learning

Troubleshooting

Spaced Repetition Plugin Issues

Cards not showing up?

  • Check file is in correct format (Question ? Answer)
  • Check folder settings in plugin
  • Try “Reset card schedule” for testing

Too many cards due?

  • Adjust review frequency in settings
  • Break into smaller study sessions
  • Don’t try to review all at once

Performance Issues

Obsidian running slow?

  • Disable unused plugins
  • Reduce number of open panes
  • Clear cache (Settings → About → Reload)

Resources

Obsidian Community

Spaced Repetition Learning

  • Algorithm: SuperMemo SM-2
  • Book: “Make It Stick” by Brown, Roediger, McDaniel
  • Research: Ebbinghaus forgetting curve

Quick Start Checklist

  • Install Obsidian
  • Open DDIA-Notes as vault
  • Install Spaced Repetition plugin
  • Configure flashcard review settings
  • Try reviewing ch01-flashcards.md
  • Set up daily study schedule
  • (Optional) Set up Git backup
  • (Optional) Install Dataview plugin

Ready to Start?

  1. Open README.md for project overview
  2. Start with chapters/ch01-reliable-scalable-maintainable.md
  3. Review flashcards/ch01-flashcards.md with Spaced Repetition plugin
  4. Check qna/session-notes.md for interview prep

Questions? Ask Claude Code for help with setup or creating more content!


Last Updated: 2026-04-08