- Hashcards adalah aplikasi pengulangan berjarak (spaced repetition) local-first yang mirip dengan Anki atau Mochi, tetapi menggunakan file Markdown alih-alih database
- Setiap kartu flash ditulis sebagai teks biasa dan mendukung format pertanyaan (Q), jawaban (A), serta cloze deletion (C), dengan jadwal ulasan dikelola oleh algoritme FSRS
- Data kartu diidentifikasi dengan nilai hash teks, sementara riwayat ulasan disimpan di SQLite, serta dapat dikelola versinya dan dibagikan melalui repositori Git
- Dirancang untuk mengatasi masalah antarmuka yang rumit pada Anki dan algoritme yang tidak efisien pada Mochi, dengan tujuan meminimalkan gesekan input dan memberikan kepemilikan penuh
- Kombinasi berbasis Markdown, integrasi Git, dan penjadwal FSRS menawarkan pendekatan baru agar pengembang dan pelajar dapat melakukan manajemen belajar yang transparan dan otomatis
Ikhtisar Hashcards
- Hashcards adalah sistem pengulangan berjarak open-source yang berjalan secara lokal dan memberikan pengalaman belajar serupa Anki atau Mochi
- Jadwal ulasan dikelola oleh algoritme FSRS (Free Spaced Repetition Scheduler)
- Antarmuka web berjalan di
localhost:8000, dan riwayat ulasan disimpan dalam database SQLite
- Pembeda utamanya adalah struktur yang tidak menggunakan database, melainkan mengelola setiap kartu flash sebagai file Markdown
- Contoh: disusun sebagai
Cards/Math.md, Cards/Chemistry.md, dan seterusnya
- Setiap file berisi beberapa kartu Q/A atau cloze deletion (C)
Struktur kartu berbasis teks
- Kartu flash ditulis dalam format teks sederhana
- Karena dapat langsung memanfaatkan sintaks Markdown, pengalaman menulisnya terasa mirip dengan membuat catatan biasa
- Perintah untuk menjalankan sesi ulasan menggunakan bentuk
$ hashcards drill <path>
Filosofi desain dan keunggulan
- Desain Hashcards menempatkan “penulisan kartu tanpa gesekan” sebagai tujuan utama
- Input dan pengeditan kartu harus cepat dan intuitif agar volume belajar meningkat
- Penggunaan kurung siku ([]) mempersingkat input cloze deletion (tanpa perlu tombol Shift)
- Integrasi dengan repositori Git memberikan manfaat berikut
- Memungkinkan version control, pelacakan perubahan, kolaborasi, dan berbagi secara publik
- Kartu dapat dicari dan dimodifikasi menggunakan alat Unix standar atau skrip
- Kartu dapat dibuat secara otomatis dari data terstruktur seperti CSV
- Karena kartu diidentifikasi dengan nilai hash teks, referensi berbasis isi menjadi stabil
Penilaian terhadap sistem yang ada (Anki, Mochi)
- Anki
- Kelebihan: open-source, mendukung FSRS, statistik kaya, dan fitur pembuatan kartu otomatis (note types)
- Kekurangan: antarmuka yang rumit dan tidak intuitif, inefisiensi input WYSIWYG, serta ketergantungan pada plugin
- Mochi
- Kelebihan: UI yang rapi, input berbasis Markdown, pengoperasian berpusat pada shortcut
- Kekurangan: sintaks cloze deletion yang bertele-tele, tidak adanya note types, dan algoritme yang sederhana
- Algoritme yang ada menggunakan pendekatan multiplier sederhana, sehingga tidak efisien untuk mempertahankan ingatan jangka panjang
- Dukungan beta FSRS memang baru ditambahkan, tetapi masalah penjadwalan kartu lama masih tetap ada
Implementasi dan alur kerja Hashcards
- Pengguna dapat menulis dan mengedit kartu langsung dengan editor teks
- Contoh:
Q: What is the atomic number of carbon? / A: 6
- Kartu multi-baris maupun format yang lebih kompleks juga dapat diekspresikan secara alami di dalam Markdown
- Memodifikasi kartu seiring perubahan pengetahuan menjadi mudah
- File Markdown dapat disusun per bab agar selaras dengan struktur buku ajar
- Konsep terkait bisa ditempatkan pada kartu yang berdekatan untuk meningkatkan efisiensi penelusuran saat revisi
- Dengan manajemen berbasis Git, fitur berikut dapat dimanfaatkan
- Commit, branch, merge, PR, dan version control penuh
- Berbagi pembelajaran dan kolaborasi melalui repositori publik
Sinergi pendekatan berbasis teks
- Memungkinkan pembuatan dan penelusuran kartu secara otomatis melalui macro editor
- Statistik kartu dan modifikasi massal dapat dilakukan dengan perintah Unix (wc, awk, dll.)
- Skrip dan Makefile dapat digunakan untuk membuat kartu otomatis dari data eksternal seperti CSV
- Dengan publikasi di GitHub, proses belajar pribadi dapat dibagikan, yang turut membantu penyebaran budaya belajar
Kesimpulan
- Hashcards adalah bentuk baru dari sistem pengulangan berjarak yang menggabungkan format teks sederhana, algoritme penjadwalan tingkat lanjut (FSRS), dan integrasi Git
- Sistem ini meminimalkan gesekan saat menulis kartu, menjamin kepemilikan penuh atas data, serta menyediakan otomatisasi dan skalabilitas sekaligus
- Diposisikan sebagai alat yang memberikan lingkungan belajar yang transparan dan dapat dikendalikan bagi pengembang maupun pelajar
Belum ada komentar.