Anki is an incredibly powerful tool for spaced repetition, as we are all well aware. Many users, upon seeing the immediate gains acquired from mitigating the forgetting curve, try to use Anki as a comprehensive learning solution, whether for exams or personal study. However, Anki suffers from one key problem - the way each card is treated by the algorithm depends solely on pressing ‘Again’, ‘Hard’, ‘Good’, or ‘Easy’, and not upon the material on the card.
In other words, Anki is content agnostic. It determines only when you should review the card to minimise forgetting, without considering what the concepts are, how important they are to you, or how they link to related concepts. To give a short example, imagine a medical student who uses Anki to memorise all of the material they require for their degree, as well as a foreign language they are learning.
On the night before their final medical exam, the student reviews their Anki cards. Some concepts in medicine are far more important than others - a thorough knowledge of fundamental anatomy & physiology will be tested in almost every question, while technical mathematical derivations for enzyme kinetics may not be examined at all. Anki lacks a priority metric - according to the scheduler, memorising abstruse results (or even entirely different subjects) is just as important as foundational principles. In time-limited scenarios, this leads to inefficient learning: time should be spent on ensuring the recall probability of key facts is 100%, not on reviewing inessential material.
Moreover, the generality of the forgetting curve means that Anki can be used to encode everything from atomic facts, like the meaning of acronyms, to the solutions to long, intricate problems. The concepts being assessed on each card thus vary greatly in temporal complexity: some cards can be reviewed quickly via the mobile apps on a train or bus, by simply mentally providing the answer, while others require five minutes or more with pen and paper to work through the solution. Anki again treats all cases equally, to the detriment of learners, who often avoid tackling detailed problems via Anki due to the difficulty of review.
These challenges could arguably be solved using filtered decks - content could be divided into low, medium and high priority for instance, or into short, medium and long problems. However, achieving such a division simultaneously would require nine filtered decks; adding another category, such as subject type, could easily lead to dozens of filtered decks, which quickly become unmanageable to review.
Crucially, the conceptual agnosticism of Anki means that the scheduling algorithm is blind as to the meaning of the information on the card. It is doubtful that any concepts in any modern subject exist in vacuo: each concept has a myriad of links to other material. Anki ignores these, interspacing completely disparate subjects within a single review session. When reviewing similar concepts that one knows well, this can enormously benefit memory consolidation; the interleaving effect is well documented in the literature. However, when learning a subject for the first time, or when tackling problems that depend upon prior knowledge, the pure independence of Anki upon the relations between the cards results in disjointed, awkward internalisation.
In addition, this connectivity readily extends to a hierarchical dimension. Concepts are not just linked to other equal-concepts in a flat, planar fashion, but cluster to form higher ideas, and are themselves made from constituent notions. To assess the stability of the memory of one concept must therefore invoke the sub-concepts that comprise it, as is tested in any multi-step problem-solving exercise. As Anki lacks any notion of connectivity, success/failure in reviewing higher concepts cannot be translated to relative strengths or weaknesses in their elemental constituents. This necessarily makes addressing mistakes - an instrumental part of learning - slower and much more difficult. Conversely, it is arguable that synthesis - of either existing or novel ideas - is suppressed by ignorance of the ways in which ideas are related.
Anki thus requires the ability to define additional metadata (priority, difficulty, atomicity, problem duration, degree of understanding etc.) and connectivity (related concepts, subject area, hierarchy, derived from, synthesised to etc.) for each card. All of these data then must be explicitly and equitably incorporated into the scheduling algorithm. With these additions, Anki could truly become a comprehensive, holistic learning system - the digital analogue of a tutor who knows your brain better than you do. Material could then be learned in natural clusters, exploring enough of each before switching to ensure understanding while maximising interleaving.
Any thoughts or advice on how these changes could be implemented, whether in the form of addons or a new underlying architecture, would be greatly appreciated.