karda

From Lojban
Jump to: navigation, search

Karda is an open-source flash card program for the desktop and the web, under development by Bruce Webber and timonator. Instead of presenting the user with a single word, Karda will present the user with a series of flashcards lined up simultaneously to form a grammatical Lojban sentence. Matt Arnold suggested the name, which is the Lojban word for "card", and created requirements demo.

Karda will be somewhat similar to SuperMemo, but will be open-source and cross-platform, using Python and wxPython. The existing open-source Python-based spaced-repetition software, Mnemosyne, is fine software for what it does, but is not conveniently accessable. With Karda, Lojbanists can devote time to memorization almost anywhere, have their progress backed up to the web, and get an RSS feed of repetitions they are scheduled for.

Every day the software looks at the list of words that are coming up for review, and selects sentences from its database (generated by the pixra game) that will include all of them at least once. It then adds each sentence to the user's RSS feed to alert them that they have a test. Each RSS feed entry contains a link directly to that test. The software will track the user on how well he or she remembers each individual word, but present it in sentences so that the user absorbs an understanding of grammar similar to how people absorb it from usage.

Karda tracks each word as two "facts": you are given the Lojban word and are asked for the English gloss, or given the English gloss and asked for the Lojban word. It tracks them as if they were separate

flashcards because the user is likely to be better at one of them than at the other and would need a different amount of repetition. But it knows that in a given sentence, it can test each word either way.

A failed word on a test will be scheduled to drill by itself, not part of a sentence. In Karda, drills work differently than tests. But the most important difference is in repetition. In Karda, each drill is also scheduled for repetition. In Supermemo, you often get the feeling that you've already forgotten some of the most difficult cards you've worked on today. You know they need more work, but they are gone from the list and you can't remember which ones they are. Tests in Karda operate on a 24-hour iteration like in Supermemo, but Karda keeps track of the minute a drill is taken, and triggers recurrences of the drill after a certain number of minutes have passed rather than days. It cuts the period in half when the user fails the word, doubling it when the user succeeds, until the user has remembered it over a delay of six hours or until the word comes up to test again. Each repetition also generates an entry in the RSS feed.

Of course, it would have to require the user to enter what time zone they are in, so it won't count the time they spend sleeping.

Bruce Webber set up the project at karda.org. There's a link from the home page to trac.karda.org, the source code management system for this project. Subversion is set up for version control. If you would like participate, please let Bruce know and he will set up a Trac user ID for you.