Software Review #2: jMemorize

Brief Description
jMemorize is a flashcard-based learning program.  The user creates a set of flashcards, and the program sets up an optimal review schedule based on the Leitner system.


  • The program manages learning in a way that emphasizes the cards that need the most attention, while steadily reinforcing other cards.
  • Any content can be placed on the cards.
  • The system can easily be replicated on paper.
  • Statistics are shown to indicate the number of cards that have been learned, the number that remain unlearned, and the number that have become expired.


Platform independent; requires a java runtime environment.

The Leitner system is a simple but effective way to use flashcards efficiently.  The system works like this:

Leitner system

Leitner system

  • Label four envelopes with the numbers 1 through 4.
  • On day 1, run through the entire stack of flashcards.  Every card you get right goes into envelope 2.  Every card you get wrong goes into envelope 1.
  • On days 2 and 3, run through the stack of cards in envelope 1, always placing cards that you get right into envelope 2.
  • On day 4, run through the stack of cards in envelope 2.  Every card you get right goes into envelope 3.  Every card you get wrong goes back to envelope 1.
  • On day 5, run through the stack of cards in envelope 3.  You will probably get most of these right.  If you do, they go into envelope 4.  If you get any wrong, they go back to envelope 1.
  • On day 6, repeat the cycle starting with envelope 1 for the next 3 days.
  • By the time most cards have made their way to envelope 4, you have probably learned the material contained in the card set pretty well.

jMemorize allows the creation of a set of flashcards, and then manages the presentation of cards according to the Leitner system.  The program uses additional logic to enhance the system, for example by expiring cards if they have not been reviewed in a given period of time.

The interface is quite simple.  Once a set of cards has been created, it is simple to add a new card.  When it is time to review the cards, you can choose whether to see the entire card set or only the cards that have not yet been learned.  A constantly-updated bar chart shows how many cards have been learned, how many remain unlearned, and how many have expired.

Create Card screen

Create Card screen

This program requires honesty.  The user does not enter an answer for each card when reviewing.  Instead, the user is asked to click whether their answer was correct or incorrect after each answer is shown.

I was amazed to find this piece of software and learn about the Leitner system for the first time.  I have often seen students who have been given a set of flash cards to study, with no explicit instruction on how to work their way through them.  I have started to use the system with several students now, and I will continue to share the strategy with other teachers.  This is much different than the over-simplified advice to “make two piles, one of cards you know and one of cards you’re working on.”

jMemorize is an effective piece of software for motivated learners.  Many language-learning programs are a polished version of this, with specific content pre-loaded.  This software can serve the needs of older, self-directed learners.  For example, the program could be very helpful in an AP Biology class that requires a significant amount of memorizing.  Card sets can be exported with or without their associated learning history, so a class project to build a card set could be carried out in a straightforward manner.  This set could then be given to subsequent classes at the beginning of a semester.  A wiki at the jMemorize web site has a small collection of card sets, and I imagine it would be fairly straightforward to have a set such as this added to the collection.

This is a piece of software I will return to when I teach a high-level class that requires a significant amount of memorization.  In the mean time, I will use the Leitner system with younger students who are struggling to memorize their multiplication facts.

3 Responses to “Software Review #2: jMemorize”

  1. Skip Says:

    Good stuff! I downloaded jMemorize and will install it and test it out this morning. A nice example of technology making a simple tool more useful and customizable.

    It would be nice to be able to add audio to cards for young students or for world language students. Hey…it’s open source…

  2. japhyr Says:

    I looked a similar program, Mnemosyne, that has support for sound and images on the cards. I haven’t installed that yet, but if I do I’ll let you know how well it compares to jMemorize.

    I assume you’re using Windows or a Mac. Did jMemorize install easily, and run without any apparent bugs?

  3. Skip Says:

    jMemorize runs without problems on my Mac and on Ubuntu running inside Parallels on my Mac.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: