如何建立間隔重複記憶卡應用程式
記憶卡應用程式由卡組、一個逐張翻轉嘅複習畫面,以及一個決定今日顯示邊啲卡片嘅排程器組成。排程器係分別一個有用嘅溫習工具同一堆數碼索引卡嘅關鍵:用咗間隔重複,你熟悉嘅卡片會好少出現,而你覺得困難嘅卡片就會好快再出現。先建立複習畫面同一個簡單排程器;匯入、圖片同音頻之後再加。
記憶卡應用程式需要具備嘅內容
資料
| 資料表 | 欄位 |
|---|---|
| 卡組 | 擁有者、名稱、描述、公開或私人 |
| 卡片 | 所屬卡組、正面、背面、可選嘅圖片或音頻、標籤、建立日期 |
| 卡片狀態 | 用戶、卡片、到期日、間隔、難度或易度、重複次數、遺忘次數 |
| 複習紀錄 | 用戶、卡片、時間、評分(重來/困難/良好/容易)、所用時間 |
將卡片狀態同卡片本身分開。如果卡組可以共用,兩個人溫習同一張卡,各自都需要有自己嘅到期日。每一次複習都要保留:呢份歷史紀錄係你日後改善排程器、顯示進度圖表,或者轉換演算法時所需要嘅。
頁面
- 卡組清單,顯示每個卡組今日到期嘅卡片數目。
- 卡片編輯器:輸入速度好重要。正面、背面、儲存、下一張。桌面版要有鍵盤快捷鍵。
- 複習畫面:顯示正面,點擊顯示背面,然後用四個大按鈕評分。呢個畫面佔咗應用程式大部分使用時間,有九成。
- 統計:每日複習數目、記憶保留率、即將到來嘅工作量。
- 匯入:由 CSV 或以 Tab 分隔嘅文字匯入,大部分其他記憶卡工具都可以匯出呢類格式。
揀選排程方法
你唔需要喺呢度發明咩嘢。三種廣為人知嘅方法:
| 方法 | 運作方式 | 適合 |
|---|---|---|
| Leitner 盒子 | 答啱就升上較高盒,答錯就退返盒一;每個盒子複習嘅次數愈來愈少 | 最容易建立同解釋 |
| SM-2 | 每張卡都有一個間隔同「易度」,會隨你嘅評分增加或減少 | 經過驗證、被廣泛複製、容易測試 |
| FSRS | 模擬你記住每張卡嘅機率,並按目標保留率排程 | 較準確;Anki 將其作為選項提供 |
第一版,揀 Leitner 或 SM-2。將規則連同一個實例寫入你嘅提示,例如:「新卡如果評為良好,會喺 1 日後到期,然後係 3 日,之後每次評為良好,間隔大約乘以 2.5。如果評為重來,會喺 10 分鐘後再次到期,而間隔重設。」
無論你揀邊種,都要要求 AI 將排程器放喺一個獨立嘅功能入面並附測試。咁日後換用其他方法,就唔會影響應用程式其他部分。
需要決定嘅事項
邊個嘅「今日」?「今日到期」應該跟隨用戶嘅時區。好多溫習應用程式會將一日嘅開始時間設在例如凌晨四時,咁深夜嘅溫習就會計入同一日。
**每日限額。**如果冇限制每日新卡數目,熱心嘅用戶可能加咗五百張卡,一個星期後就面對一堆不可能完成嘅複習量。預設設定一個適中嘅數字,並讓人可以自行更改。
**卡片類型。**先做基本嘅正面/背面。「反向」卡(同時測試由背面到正面)同填空卡(喺句子入面填補空位)好受歡迎,但每種都會增加規則。等基本功能運作正常之後再加。
**共用卡組。**老師同班級共用卡組係一個好功能,但亦涉及權限問題:學生可以溫習,但唔可以編輯;老師作出嘅編輯要即時傳送到所有人,而且唔可以重設他們嘅進度。
**離線使用。**人哋會喺火車同飛機上溫習。漸進式網頁應用程式可以快取今日嘅卡片,但要同步兩部離線裝置嘅複習紀錄,確實相當困難。第一個版本只支援線上使用,係合理嘅做法。我哋嘅原生與漸進式網頁應用程式指南會解釋各種選項。
行得通嘅首個提示
建立一個以手機為先設計嘅記憶卡網頁應用程式。用戶登入後可以建立卡組,並新增卡片,每張卡有正面同背面(文字,可選加圖片)。每位用戶對每張卡都有自己嘅複習狀態:到期日、間隔、易度、重複次數同遺忘次數。使用 SM-2 演算法:評分為重來、困難、良好、容易;重來會重設間隔,並喺 10 分鐘後再次顯示該卡。將排程器放喺一個獨立嘅已測試功能入面。複習畫面先顯示正面,然後一個大大嘅「顯示答案」按鈕,之後出現四個大型評分按鈕。「今日到期」跟隨用戶嘅時區,並以凌晨 4 時為一日開始。預設每個卡組每日最多新增 20 張新卡。紀錄每一次複習。顯示卡組清單,附到期數目,以及一個簡單嘅統計頁,列出每日複習數目。加入 CSV 匯入,欄位為正面同背面。所有數據儲存到資料庫。
建立步驟
- **卡組同卡片。**建立兩個卡組同二十張卡片。檢查新增一張卡片有幾快。
- **複習畫面。**用手機溫習。應該感覺即時;卡與卡之間嘅任何延遲,每日都會被感受到幾百次。
- **排程器測試。**給 AI 一張評分序列及預期間隔嘅表格,然後核對結果。之後更改裝置時鐘,或者要求一個測試模式,模擬未來幾日。
- **每日限額同時區。**喺深夜溫習,確認翌日嘅隊列正確。
- **匯入。**匯入一份真實嘅 CSV(數百張卡),檢查特殊字元、卡片入面嘅逗號同換行。
- **統計。**每日複習數目同即將到期數目。圖表保持簡單。
- **額外功能。**圖片、語言卡嘅音頻、反向卡、共用卡組,每次加一項。
常見錯誤
- **將到期日儲存喺卡片上。**它必須屬於每位用戶。
- **丟棄複習歷史紀錄。**你日後會需要佢嚟做統計,以及任何未來嘅排程器。
- **冇新卡限額。**用戶一個星期內就會倦極。
- **按鈕太細。**評分係單手操作;按鈕要夠大,並且彼此距離夠遠,避免誤按。
- **最後一次評分冇撤銷功能。**誤按每日都會發生。
- **用伺服器時間計「今日」。**應該用用戶嘅時區。
- **編輯卡片時重設進度。**修正一個錯字,唔應該令一張成熟嘅卡片重新由頭開始。
幾時現成嘅產品更好
如果你只係想溫習,成熟嘅記憶卡應用程式已經存在,當中好多都係免費,並且多年來都喺排程、同步、離線使用同共用卡組方面投放大量工夫。Anki 尤其有龐大嘅社群卡組庫。直接用就好。
以下情況就應該自行建立:卡片係某個更大嘅東西嘅一部分,例如你出售嘅課程,記憶卡用嚟鞏固每課內容;語言學校為學生提供同其課程綱要掛鉤嘅卡組;公司教導員工產品知識;或者某個科目嘅卡片類型,一般工具處理得唔好。你擁有內容、設計同學生數據。如果需要測驗,可以搭配測驗應用程式,或者將佢建入網上課程平台。
用 Mythex 建立
Mythex 將呢個建立為網頁應用程式,你可以喺任何手機打開,並加到主畫面。喺對話入面描述應用程式,然後喺預覽嘅手機尺寸框架中檢查複習畫面,當需要帳戶同儲存進度時,要求加入即可,應用程式需要時,Mythex 會加入專用嘅資料庫,如果卡片有圖片或音頻,亦會提供檔案儲存。喺 Pro 計劃,Mythex 亦可以將應用程式包裝成 Android 同 iPhone 應用程式,並送去 Google Play 內部測試同 TestFlight。信任佢嘅排程功能之前,可以用問答模式要求代理解釋排程函數,然後當運作正常時,發佈到 mythex.ai 連結。
常見問題
咩係間隔重複?
間隔重複會喺你可能快要忘記某張卡之前,再次顯示畀你睇。你熟悉嘅卡片會隔得愈來愈長先再出現;你答錯嘅卡片就會好快再出現。咁樣溫習時間就會更有效率,唔需要平均地把所有嘢都重溫一次。
我應該用邊種間隔重複演算法?
第一個版本,簡單嘅 Leitner 盒子系統或 SM-2 已經足夠,而且容易測試。FSRS 係較新、較準確嘅排程方法,Anki 亦有提供作為選項;當你累積咗複習紀錄,可以考慮用佢嚟調校。
記憶卡網頁應用程式可以離線使用嗎?
部分可以。漸進式網頁應用程式可以快取應用程式同當日嘅卡片,咁即使冇連線都可以複習,之後重新連線就同步。如果兩部裝置喺離線時都做咗複習,同步時就需要謹慎嘅合併規則,所以好多第一版都只支援線上使用。
我可以唔寫程式碼就建立記憶卡應用程式嗎?
可以。AI 應用程式生成工具可以根據描述建立卡組、卡片、複習畫面同排程功能。要畀佢附上排程規則嘅實例,並檢查結果,因為呢段邏輯決定咗應用程式會唔會真正幫人學習。