Flashcards is usually a deck of cards where each card corresponds to an item to learn and remember.
One goes through the card deck studying the front side of each card and trying to remember the knowledge associated with it. The correct answer is usually on the back of the same card.
Reviewing the cards again after some time helps to remember better.
Spaced repetition is a learning technique adapted to the way humans learn, in which increasing intervals of time are used between subsequent reviews.
Leitner System is a method using flashcards and numbered boxes to increase the effectivity of the reviewing time, by using more time on the cards that prove to be difficult for the individual reviewer to memorize.
Software may make the production of actual cards easier.
With virtual cards (flashing cards images on the screen) software may be given the task of selecting which card to flash next, and use this to implement a variant of Leitner System and thus make repetition quicker and ensure full coverage.
Software may also improve the availability of the card deck; one may flash them on cellphones, PDAs, etc...
Editing, export, import, and administration of the flashcards are also an area in which SW already is and can be more useful.
There may be several forms to the question and to the answer. Some of these may be easier to implement on a virtual card system. For example the question might be a picture and the correct answer may be a chinese ideogram. Another example may have the question as a sound or video and multiple choice set of answers while the answer may be the correct selection.
Virtual flashcards may also be used as examination/quiz. They may have complex methods of weighing/combining the answers and still provide the resulting examination grade instantly.
There are already a plethora of flashcard SW, each with a community of users, and a large amount of flashcards made available for others. Converting card deck files to and from the established formats is another candidate for SW work.
I am trying to be careful about installing in my PC software with unknown origin and quality. Specially if the functionality offered is marginally better than what I can do with what I already have.
Open source SW is infinitely more trust inspiring. Theoretically Open Source also could carry bugs, and mailicious logic. I get extra worried if the user base is limited, and the source code voluminous.
It therefore is not uncommon that I quickly fix my own with what I have lying around and I have some skills at. Flashcards was a something I needed not so long ago. After studying what was around I decide I would fulfill my own need with standard softare on my PC and some scripts.
So can anyone. Here is a Flashcard kit I propose:
If one day I decide to move your data to another program, it can easily be done (manually or with an xsl script). It may be more difficult to move the other way i.e. from other proprietary formats to XML.
This setup may be expanded with more complex features. Some features may require that one gives up the principle of using only programs found in all PC's.
The following is an example 370 words glossary for introductory economics with logic for printing them on A4 paper, using a printer that can print double sided on paper thick enouhgh for cards. The printed A4 pages are to be cut down to individual cards:
The following is a virtual flashcard system using only HTML, Javascript, and XML, essentially a simple web page, displaying the same info as in the previous example.
This example does not do leitner, or spaced repetition; just flashes one card after another.