emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* memory management in orgmode (supermemo)
@ 2009-09-21  8:35 Pere Quintana Seguí
  2009-09-21 11:31 ` Russell Adams
  0 siblings, 1 reply; 10+ messages in thread
From: Pere Quintana Seguí @ 2009-09-21  8:35 UTC (permalink / raw)
  To: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 1419 bytes --]

Hello,

I'm a *very* happy org-mode user since a year ago. In fact, it became a
sort of dual brain for me. Thanks for producing such a great piece of
software.

Today I read a Wired article about SuperMemo:
http://www.wired.com/medtech/health/magazine/16-05/ff_wozniak?currentPage=1

SuperMemo is a flashcard program that calculates the best time to show
you a piece of information in order to optimise its retention.
Apparently, the methodology is very useful to load lots of information
into the brain.

I think that memory is very important, because when the information is
within the brain, it is much easier to make connections and see the
whole picture.

While reading the article, I thought that the supermemo algorithm should
be implemented within org-mode. After all, all my information is in .org
files. My *Org-Agenda* could show me, everyday, the items I should to
check again in order to retain them in my brain.

In fact, watching SuperMemo's screenshots, I saw that this program has
many features that are similar to org-mode. For example, look at this:
http://www.supermemo.com/help/images/thumb/9/9b/Contents_window.jpg/528px-Contents_window.jpg

I'm not a programmer at all, therefore I cannot implement this myself.
Do you know if somebody already started such a project? Are there any
plans to do so?

Thanks,

Pere Quintana

-- 
http://pere.quintanasegui.com


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

[-- Attachment #2: Type: text/plain, Size: 204 bytes --]

_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21  8:35 memory management in orgmode (supermemo) Pere Quintana Seguí
@ 2009-09-21 11:31 ` Russell Adams
  2009-09-21 11:57   ` Detlef Steuer
  2009-09-21 12:12   ` Pere Quintana Seguí
  0 siblings, 2 replies; 10+ messages in thread
From: Russell Adams @ 2009-09-21 11:31 UTC (permalink / raw)
  To: emacs-orgmode

That article looks very interesting. Given the outline format and
scheduling in Org it would be conceptually simple to accomplish what
they describe. 

The portion that would require new code would be a "dispatcher" to
tally which items to view based on an aging property, and to update
that afterward. Though it could use the agenda, you still have to
calculate the next viewing period based on their projection of memory
duration using the number of views and the last viewed date.

Is there someplace that the algorithm is fully documented?


On Mon, Sep 21, 2009 at 10:35:43AM +0200, Pere Quintana Segu? wrote:
> Hello,
> 
> I'm a *very* happy org-mode user since a year ago. In fact, it became a
> sort of dual brain for me. Thanks for producing such a great piece of
> software.
> 
> Today I read a Wired article about SuperMemo:
> http://www.wired.com/medtech/health/magazine/16-05/ff_wozniak?currentPage=1
> 
> SuperMemo is a flashcard program that calculates the best time to show
> you a piece of information in order to optimise its retention.
> Apparently, the methodology is very useful to load lots of information
> into the brain.
> 
> I think that memory is very important, because when the information is
> within the brain, it is much easier to make connections and see the
> whole picture.
> 
> While reading the article, I thought that the supermemo algorithm should
> be implemented within org-mode. After all, all my information is in .org
> files. My *Org-Agenda* could show me, everyday, the items I should to
> check again in order to retain them in my brain.
> 
> In fact, watching SuperMemo's screenshots, I saw that this program has
> many features that are similar to org-mode. For example, look at this:
> http://www.supermemo.com/help/images/thumb/9/9b/Contents_window.jpg/528px-Contents_window.jpg
> 
> I'm not a programmer at all, therefore I cannot implement this myself.
> Do you know if somebody already started such a project? Are there any
> plans to do so?
> 
> Thanks,
> 
> Pere Quintana
> 
> -- 
> http://pere.quintanasegui.com
> 



> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode



------------------------------------------------------------------
Russell Adams                            RLAdams@AdamsInfoServ.com

PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/

Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21 11:31 ` Russell Adams
@ 2009-09-21 11:57   ` Detlef Steuer
  2009-09-21 12:13     ` Pere Quintana Seguí
  2009-09-21 15:17     ` Chris Gray
  2009-09-21 12:12   ` Pere Quintana Seguí
  1 sibling, 2 replies; 10+ messages in thread
From: Detlef Steuer @ 2009-09-21 11:57 UTC (permalink / raw)
  To: emacs-orgmode

There is 
flashcard.el

http://www.emacswiki.org/emacs/FlashCard
http://ichi2.net/flashcard/


which offers kind of supermemo.
Not based on org, but maybe they can be coupled.

detlef


On Mon, 21 Sep 2009 06:31:00 -0500
Russell Adams <RLAdams@AdamsInfoServ.Com> wrote:

> That article looks very interesting. Given the outline format and
> scheduling in Org it would be conceptually simple to accomplish what
> they describe. 
> 
> The portion that would require new code would be a "dispatcher" to
> tally which items to view based on an aging property, and to update
> that afterward. Though it could use the agenda, you still have to
> calculate the next viewing period based on their projection of memory
> duration using the number of views and the last viewed date.
> 
> Is there someplace that the algorithm is fully documented?
> 
> 
> On Mon, Sep 21, 2009 at 10:35:43AM +0200, Pere Quintana Segu? wrote:
> > Hello,
> > 
> > I'm a *very* happy org-mode user since a year ago. In fact, it became a
> > sort of dual brain for me. Thanks for producing such a great piece of
> > software.
> > 
> > Today I read a Wired article about SuperMemo:
> > http://www.wired.com/medtech/health/magazine/16-05/ff_wozniak?currentPage=1
> > 
> > SuperMemo is a flashcard program that calculates the best time to show
> > you a piece of information in order to optimise its retention.
> > Apparently, the methodology is very useful to load lots of information
> > into the brain.
> > 
> > I think that memory is very important, because when the information is
> > within the brain, it is much easier to make connections and see the
> > whole picture.
> > 
> > While reading the article, I thought that the supermemo algorithm should
> > be implemented within org-mode. After all, all my information is in .org
> > files. My *Org-Agenda* could show me, everyday, the items I should to
> > check again in order to retain them in my brain.
> > 
> > In fact, watching SuperMemo's screenshots, I saw that this program has
> > many features that are similar to org-mode. For example, look at this:
> > http://www.supermemo.com/help/images/thumb/9/9b/Contents_window.jpg/528px-Contents_window.jpg
> > 
> > I'm not a programmer at all, therefore I cannot implement this myself.
> > Do you know if somebody already started such a project? Are there any
> > plans to do so?
> > 
> > Thanks,
> > 
> > Pere Quintana
> > 
> > -- 
> > http://pere.quintanasegui.com
> > 
> 
> 
> 
> > _______________________________________________
> > Emacs-orgmode mailing list
> > Remember: use `Reply All' to send replies to the list.
> > Emacs-orgmode@gnu.org
> > http://lists.gnu.org/mailman/listinfo/emacs-orgmode
> 
> 
> 
> ------------------------------------------------------------------
> Russell Adams                            RLAdams@AdamsInfoServ.com
> 
> PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/
> 
> Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3
> 
> 
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21 11:31 ` Russell Adams
  2009-09-21 11:57   ` Detlef Steuer
@ 2009-09-21 12:12   ` Pere Quintana Seguí
  2009-09-21 13:52     ` Darlan Cavalcante Moreira
  1 sibling, 1 reply; 10+ messages in thread
From: Pere Quintana Seguí @ 2009-09-21 12:12 UTC (permalink / raw)
  To: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 489 bytes --]



En/na Russell Adams ha escrit:
> That article looks very interesting. Given the outline format and
> scheduling in Org it would be conceptually simple to accomplish what
> they describe. 
> 

That is what I thought.

> Is there someplace that the algorithm is fully documented?

There are two free software implementations of supermemo:

Anki:
http://ichi2.net/anki/index.html

and

Mnemosyne:
http://www.mnemosyne-proj.org


-- 
http://pere.quintanasegui.com


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

[-- Attachment #2: Type: text/plain, Size: 204 bytes --]

_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Re: memory management in orgmode (supermemo)
  2009-09-21 11:57   ` Detlef Steuer
@ 2009-09-21 12:13     ` Pere Quintana Seguí
  2009-09-21 15:17     ` Chris Gray
  1 sibling, 0 replies; 10+ messages in thread
From: Pere Quintana Seguí @ 2009-09-21 12:13 UTC (permalink / raw)
  Cc: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 155 bytes --]



En/na Detlef Steuer ha escrit:
> There is 
> flashcard.el

which the author abandonned to work on anki.


-- 
http://pere.quintanasegui.com


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

[-- Attachment #2: Type: text/plain, Size: 204 bytes --]

_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21 12:12   ` Pere Quintana Seguí
@ 2009-09-21 13:52     ` Darlan Cavalcante Moreira
  2009-09-21 14:36       ` Pere Quintana Seguí
  0 siblings, 1 reply; 10+ messages in thread
From: Darlan Cavalcante Moreira @ 2009-09-21 13:52 UTC (permalink / raw)
  To: emacs-orgmode

At Mon, 21 Sep 2009 14:12:32 +0200,
Pere Quintana Seguí wrote:
> 
> [1  <multipart/signed (7bit)>]
> [1.1  <text/plain; us-ascii (quoted-printable)>]
> 
> 
> En/na Russell Adams ha escrit:
> > That article looks very interesting. Given the outline format and
> > scheduling in Org it would be conceptually simple to accomplish what
> > they describe. 
> > 
> 
> That is what I thought.
> 
> > Is there someplace that the algorithm is fully documented?
> 
> There are two free software implementations of supermemo:
> 
> Anki:
> http://ichi2.net/anki/index.html
> 
> and
> 
> Mnemosyne:
> http://www.mnemosyne-proj.org
> 
> 
> -- 
> http://pere.quintanasegui.com
> 
> [1.2 OpenPGP digital signature <application/pgp-signature (7bit)>]
> 
> [2  <text/plain; us-ascii (7bit)>]
> _______________________________________________
> Emacs-orgmode mailing list
> Remember: use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode

I use Anki myself and it really is an excellent piece of work. It even
synchronizes among the different computers that I use. If there was some way to
exchange information between Emacs and Anki it would be better than
reimplementing supermemo algorithm in org-mode IMHO.

Unfortunately, I don't think there is a d-bus interface for Anki.
-- 
Darlan Cavalcante Moreira
darcamo@gmail.com

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21 13:52     ` Darlan Cavalcante Moreira
@ 2009-09-21 14:36       ` Pere Quintana Seguí
  2009-09-27 18:10         ` Alexander Laertes
  0 siblings, 1 reply; 10+ messages in thread
From: Pere Quintana Seguí @ 2009-09-21 14:36 UTC (permalink / raw)
  To: Darlan Cavalcante Moreira; +Cc: emacs-orgmode


[-- Attachment #1.1: Type: text/plain, Size: 805 bytes --]



En/na Darlan Cavalcante Moreira ha escrit:
> I use Anki myself and it really is an excellent piece of work. It even
> synchronizes among the different computers that I use. If there was some way to
> exchange information between Emacs and Anki it would be better than
> reimplementing supermemo algorithm in org-mode IMHO.
> 
> Unfortunately, I don't think there is a d-bus interface for Anki.

That would be a good idea.


The other thing that supermemo implements is incremental reading
http://en.wikipedia.org/wiki/Incremental_reading

I don't know much about it, as apparently only supermemo implemented it.
But I guess it would be also well adapted to org-mode.

Did you ever try it? Do you think it would be a nice addition to org-mode?

-- 
http://pere.quintanasegui.com


[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

[-- Attachment #2: Type: text/plain, Size: 204 bytes --]

_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21 11:57   ` Detlef Steuer
  2009-09-21 12:13     ` Pere Quintana Seguí
@ 2009-09-21 15:17     ` Chris Gray
  2009-09-21 20:24       ` Pere Quintana Seguí
  1 sibling, 1 reply; 10+ messages in thread
From: Chris Gray @ 2009-09-21 15:17 UTC (permalink / raw)
  To: emacs-orgmode

Detlef Steuer wrote:

> There is
> flashcard.el

There is also elip.el, which I have been using for a while and find
quite nice.  http://www.gnuvola.org/software/elip/

Cheers,
Chris

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Re: memory management in orgmode (supermemo)
  2009-09-21 15:17     ` Chris Gray
@ 2009-09-21 20:24       ` Pere Quintana Seguí
  0 siblings, 0 replies; 10+ messages in thread
From: Pere Quintana Seguí @ 2009-09-21 20:24 UTC (permalink / raw)
  To: emacs-orgmode



Al 21/09/09 17:17, En/na Chris Gray ha escrit:
> There is also elip.el, which I have been using for a while and find
> quite nice.http://www.gnuvola.org/software/elip/
>

Thanks! I'll try it!

-- 
http://pere.quintanasegui.com

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: memory management in orgmode (supermemo)
  2009-09-21 14:36       ` Pere Quintana Seguí
@ 2009-09-27 18:10         ` Alexander Laertes
  0 siblings, 0 replies; 10+ messages in thread
From: Alexander Laertes @ 2009-09-27 18:10 UTC (permalink / raw)
  To: emacs-orgmode

Hello Pere,

On Mon, 21 Sep 2009 10:36:12 -0400, Pere Quintana Seguí wrote:

> The other thing that supermemo implements is incremental reading
> http://en.wikipedia.org/wiki/Incremental_reading
>
> I don't know much about it, as apparently only supermemo implemented it.
> But I guess it would be also well adapted to org-mode.
>
> Did you ever try it? Do you think it would be a nice addition to  
> org-mode?

As the Wikipedia article explains, incremental reading (IR) is a mechanism
that eases the input of new material that is to be processed at various
stages, incrementally.  First, you read an article's content normally;
when you think you've come across an interesting portion of text (say, a
sentence, paragraph, or section), you extract it (think highlighting);
these extracts will be new sub-documents (in SM parlance, topics) that
will be shown at a later date, as scheduled by the spaced repetition
algorithm.  When these topics come to your screen, you will re-process
them (e.g. by shortening and rephrasing of sentences) to finally convert
them into typical question/answer items that are common to most SR
products (SM, anki, mnemosyne, etc).  You can think of it as an integrated
pre-processing step to build Q/A material.  Its incremental nature helps
tackle difficult material, as it is possible to postpone topics that
require supporting data or better explanations before coming back to them,
as well as counter factors such as frustration and boredom.  On the other
hand, the fact it is fed to a scheduling process (spaced repetition) is
quite beneficial as you know it will come back to you, and because each
exposure to the material aids in establishing the memory trace, making
future recall easier.  For this reason, incremental reading techniques
seem to benefit the most from a spaced repetition algorithm (a la
Supermemo).

For org-mode to support IR techniques in a rudimentary way, a notion of
document and sub-documents/extracts seems vital; if these could be
separate sections in an org-file (corresponding to a single article), then
to support the flow of information in IR there could be a mechanism to
make copies of the highlighted material (say, the active region) into a
new subsection:

==== file: ATitle.org ====
* Article: A Title    :article:

Lorem ipsum [mark]dolor sit amet[point], consectetur adipisicing elit
====

M-x org-make-extract

==== file: ATitle.org ====
* Article: A Title...    :article:
** A Title: Lorem ipsum  :topic:

dolor [mark]sit[point] amet
====

M-x org-make-cloze-deletion
M-x org-dismiss-section

==== file: ATitle.org ====
* DISMISSED Article: A Title...    :article:
** DISMISSED A Title: Lorem ipsum...  :topic:
*** A Title: dolor        :item:
**** QUESTION
dolor [...] amet

**** ANSWER
sit
====

M-x org-drill

====
** A Title: dolor     :item:
*** QUESTION
dolor [...] amet

*** ANSWER...
====


More ideas:

Topics with memorized/dismissed states could be worked around TODO states
or tags, which should not propagate to children (memorized means "in the
learning process").  Categories (as in a knowledge tree) could be
implemented with #+CATEGORY or tags.  Encoding of parameters in items
(such as next repetition date, repetition history, A-factor, forgetting
index, etc.) could be worked around drawers (though some of this data
perhaps shouldn't be user-editable).

An old version of the SM algorithm (SM-2, current is SM-11):
http://www.supermemo.com/english/ol/sm2.htm  (Incidentally, anki and
mnemosyne are based on SM-2, therefore some source code should be
available)

Addendum: to experience incremental reading in Supermemo, keep in mind the
only IR-enabled versions are Supermemo 2000 or later for Windows.  There
are trial versions available for download.  Also, note that the knowledge
management abilities related to IR take a bit of time and focused practice
to develop.

Alex

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2009-09-27 18:15 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-21  8:35 memory management in orgmode (supermemo) Pere Quintana Seguí
2009-09-21 11:31 ` Russell Adams
2009-09-21 11:57   ` Detlef Steuer
2009-09-21 12:13     ` Pere Quintana Seguí
2009-09-21 15:17     ` Chris Gray
2009-09-21 20:24       ` Pere Quintana Seguí
2009-09-21 12:12   ` Pere Quintana Seguí
2009-09-21 13:52     ` Darlan Cavalcante Moreira
2009-09-21 14:36       ` Pere Quintana Seguí
2009-09-27 18:10         ` Alexander Laertes

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).