6 Punkte von GN⁺ 2025-12-15 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Hashcards ist eine Local-First-App für Spaced Repetition, ähnlich wie Anki oder Mochi, verwendet aber Markdown-Dateien statt einer Datenbank
  • Jede Lernkarte wird als Klartext geschrieben und unterstützt die Formate Frage (Q), Antwort (A) und Cloze Deletion (C); die Wiederholungsplanung wird mit dem FSRS-Algorithmus verwaltet
  • Kartendaten werden über Text-Hashwerte identifiziert, während der Wiederholungsverlauf in SQLite gespeichert wird; über ein Git-Repository sind Versionsverwaltung und Teilen möglich
  • Das System wurde mit dem Ziel entwickelt, die Probleme von Ankis komplexer Oberfläche und Mochis ineffizientem Algorithmus zu lösen, mit Fokus auf minimale Eingabereibung und vollständige Datenhoheit
  • Die Kombination aus Markdown-Basis, Git-Integration und FSRS-Scheduler bietet einen neuen Ansatz, mit dem Entwickler und Lernende transparentes und automatisiertes Lernmanagement umsetzen können

Überblick über Hashcards

  • Hashcards ist ein lokal ausgeführtes Open-Source-System für Spaced Repetition, das ein Lernerlebnis ähnlich wie Anki oder Mochi bietet
    • Die Wiederholungsplanung wird mit dem FSRS (Free Spaced Repetition Scheduler)-Algorithmus verwaltet
    • Die Weboberfläche läuft auf localhost:8000, und der Wiederholungsverlauf wird in einer SQLite-Datenbank gespeichert
  • Der zentrale Unterschied ist die Struktur, bei der keine Datenbank für die Karten verwendet wird, sondern jede Lernkarte als Markdown-Datei verwaltet wird
    • Beispiel: Cards/Math.md, Cards/Chemistry.md usw.
    • Jede Datei enthält mehrere Q/A- oder Cloze-Deletions-Karten

Textbasierte Kartenstruktur

  • Lernkarten werden in einem einfachen Textformat geschrieben
    • Q: Frage, A: Antwort, C: Cloze-Deletion-Form
    • Beispiel:
      Q: What is the role of synaptic vesicles?
      A: They store neurotransmitters for release at the synaptic terminal.
      C: Speech is [produced] in [Broca's] area.
      
  • Da die Markdown-Syntax direkt genutzt werden kann, entsteht ein Arbeitsgefühl ähnlich wie beim Schreiben normaler Notizen
  • Der Befehl zum Starten einer Wiederholung hat die Form $ hashcards drill <path>

Designphilosophie und Vorteile

  • Das Design von Hashcards setzt „reibungsloses Kartenschreiben“ als oberstes Ziel
    • Wenn das Erfassen und Bearbeiten von Karten schnell und intuitiv ist, steigt das Lernvolumen
    • Durch die Verwendung von eckigen Klammern ([]) wird die Eingabe von Cloze Deletions verkürzt
  • Die Integration mit Git-Repositories bietet unter anderem folgende Vorteile
    • Versionsverwaltung, Änderungsverfolgung, Zusammenarbeit und öffentliches Teilen
    • Karten können mit standardmäßigen Unix-Werkzeugen oder Skripten gesucht und bearbeitet werden
    • Aus strukturierten Daten wie CSV lassen sich Karten automatisch erzeugen
  • Karten werden über Text-Hashwerte identifiziert, wodurch stabile inhaltsbasierte Referenzen möglich sind

Bewertung bestehender Systeme (Anki, Mochi)

  • Anki
    • Vorteile: Open Source, FSRS-Unterstützung, umfangreiche Statistiken, automatische Kartenerzeugung über note types
    • Nachteile: komplexe und wenig intuitive Oberfläche, Ineffizienz der WYSIWYG-Eingabe, Abhängigkeit von Plugins
  • Mochi
    • Vorteile: aufgeräumte UI, Markdown-basierte Eingabe, bedienung per Tastenkürzeln
    • Nachteile: umständliche Cloze-Deletions-Syntax, keine note types, einfacher Algorithmus
    • Der bisherige Algorithmus arbeitet mit einem einfachen Multiplier-Modell und ist für das langfristige Behalten ineffizient
    • Kürzlich wurde zwar FSRS-Beta-Unterstützung hinzugefügt, die bestehenden Probleme bei der Kartenplanung bleiben jedoch bestehen

Implementierung und Workflow von Hashcards

  • Nutzer können Karten direkt in einem Texteditor schreiben und bearbeiten
    • Beispiel: Q: What is the atomic number of carbon? / A: 6
    • Auch mehrzeilige Karten oder komplexere Formate lassen sich innerhalb von Markdown natürlich ausdrücken
  • Karten lassen sich leicht an verändertes Wissen anpassen
    • Durch Markdown-Dateien pro Kapitel kann die Struktur eines Lehrbuchs nachgebildet werden
    • Verwandte Konzepte können in benachbarten Karten angeordnet werden, was die Navigation bei Änderungen effizienter macht
  • Mit Git-basierter Verwaltung lassen sich folgende Funktionen nutzen
    • Vollständige Versionsverwaltung mit Commits, Branches, Merges, PRs usw.
    • Teilen von Lernmaterial und Zusammenarbeit über öffentliche Repositories

Synergie des textbasierten Ansatzes

  • Über Editor-Makros sind automatische Kartenerzeugung und Navigation möglich
  • Mit Unix-Befehlen (wc, awk usw.) lassen sich Kartenstatistiken und Massenänderungen durchführen
  • Mit Skripten und Makefiles können Karten aus externen Daten wie CSV automatisch erzeugt werden
  • Über eine Veröffentlichung auf GitHub kann der persönliche Lernprozess geteilt werden, was zur Verbreitung einer Lernkultur beiträgt

Fazit

  • Hashcards ist eine neue Form von Spaced-Repetition-System, die ein einfaches Textformat, einen fortgeschrittenen Scheduling-Algorithmus (FSRS) und Git-Integration kombiniert
  • Es minimiert die Reibung beim Erstellen von Karten, garantiert vollständige Datenhoheit und bietet gleichzeitig Automatisierung und Skalierbarkeit
  • Es wird als Werkzeug präsentiert, das sowohl Entwicklern als auch Lernenden eine transparente und kontrollierbare Lernumgebung bietet

Noch keine Kommentare.

Noch keine Kommentare.