SuperMemo (from "Super Memory") is a learning method and software package developed by SuperMemo World and SuperMemo R&D with Piotr Woźniak in Poland from 1985 to the present. It is based on research into long-term memory, and is a practical application of the spaced repetition learning method that has been proposed for efficient instruction by a number of psychologists as early as in the 1930s. The method is available as a computer program for Windows, Windows CE, Windows Mobile, (Pocket PC), Palm OS (PalmPilot), etc. Course software by the same company (SuperMemo World) can also be used in a web browser or even without a computer. The desktop version of SuperMemo (since v. 2002) supports incremental reading, as well as traditional creation of question and answer flashcards. Software implementation The SuperMemo program stores a database of questions and answers constructed by the user. When reviewing information saved in the database, the program uses the SuperMemo algorithm to decide what questions to show the user. The user then answers the question and rates their relative ease of recall - with grades of 1 to 5 (1 is the hardest, 5 is the easiest) - and their rating is used to calculate how soon they should be shown the question again. While the exact algorithm varies with the version of SuperMemo, in general, items that are harder to remember show up more frequently. Besides simple text questions and answers, the latest version of SuperMemo supports images, video, and HTML questions and answers. Since 2002, SuperMemo has had a unique set of features that distinguish it from other spaced repetition programs, called incremental reading (IR or "increading"). Whereas earlier versions were built around users entering information they wanted to use, using IR, users can import text that they want to learn from. The user reads the text inside of SuperMemo, and tools are provided to bookmark one's location in the text and automatically schedule it to be revisited later, extract valuable information, and turn extracts into questions for the user to learn. By automating the entire process of reading and extracting knowledge to be remembered all in the same program, time is saved from having to manually prepare information, and insights into the nature of learning can be used to make the entire process more natural for the user. Furthermore, since the process of extracting knowledge can often lead to the extraction of