emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Dr Wozniak’s tasklist implementation
@ 2017-01-29 15:10 Michal Rus
  2017-01-29 21:22 ` John Kitchin
  2017-01-30  7:38 ` Ramon Diaz-Uriarte
  0 siblings, 2 replies; 5+ messages in thread
From: Michal Rus @ 2017-01-29 15:10 UTC (permalink / raw)
  To: emacs-orgmode; +Cc: Rafał Babinicz

Hello!

I’d like to start using dr Wozniak’s tasklist idea [1] in Org. He’s
the original author of spaced repetition and SuperMemo.

It’s about assigning values ($) and time (hrs) to each task. Then,
priorities ($ divided by hrs) can be calculated, and then you do the
tasks with the highest priority; effectively, spending your time in
the most valuable way. (That is if you assign the value and time
correctly, but it can be learned.)

Is there anything like that implemented? I couldn’t find anything.

If not, how hard would it be? Where would it be best to start?

Thank you!

    [1] https://www.supermemo.com/articles/tasklists.htm

-- 
Michal Rus

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

* Re: Dr Wozniak’s tasklist implementation
  2017-01-29 15:10 Dr Wozniak’s tasklist implementation Michal Rus
@ 2017-01-29 21:22 ` John Kitchin
  2017-01-29 22:19   ` Bob Newell
  2017-01-30  7:38 ` Ramon Diaz-Uriarte
  1 sibling, 1 reply; 5+ messages in thread
From: John Kitchin @ 2017-01-29 21:22 UTC (permalink / raw)
  To: Michal Rus; +Cc: Rafał Babinicz, emacs-orgmode

I do not know of anything like this, but it should not be difficult to
implement. You could store $ and time as properties in a headline, and
then write a custom sort function for use with org-sort-entries that
computes the priority and sorts in the direction you want. I do not know
how you would integrate that into the agenda, but I assume it is
possible.



Michal Rus writes:

> Hello!
>
> I’d like to start using dr Wozniak’s tasklist idea [1] in Org. He’s
> the original author of spaced repetition and SuperMemo.
>
> It’s about assigning values ($) and time (hrs) to each task. Then,
> priorities ($ divided by hrs) can be calculated, and then you do the
> tasks with the highest priority; effectively, spending your time in
> the most valuable way. (That is if you assign the value and time
> correctly, but it can be learned.)
>
> Is there anything like that implemented? I couldn’t find anything.
>
> If not, how hard would it be? Where would it be best to start?
>
> Thank you!
>
>     [1] https://www.supermemo.com/articles/tasklists.htm


-- 
Professor John Kitchin
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
@johnkitchin
http://kitchingroup.cheme.cmu.edu

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

* Re: Dr Wozniak’s tasklist implementation
  2017-01-29 21:22 ` John Kitchin
@ 2017-01-29 22:19   ` Bob Newell
  2017-02-02  0:52     ` Bob Newell
  0 siblings, 1 reply; 5+ messages in thread
From: Bob Newell @ 2017-01-29 22:19 UTC (permalink / raw)
  To: Org-mode mailing list

If you don't care about integrating into the agenda, this could be
quite easily implemented in an org table.

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

* Re: Dr Wozniak’s tasklist implementation
  2017-01-29 15:10 Dr Wozniak’s tasklist implementation Michal Rus
  2017-01-29 21:22 ` John Kitchin
@ 2017-01-30  7:38 ` Ramon Diaz-Uriarte
  1 sibling, 0 replies; 5+ messages in thread
From: Ramon Diaz-Uriarte @ 2017-01-30  7:38 UTC (permalink / raw)
  To: Michal Rus; +Cc: Rafał Babinicz, emacs-orgmode


Dear Michal,

On Sun, 29-01-2017, at 15:10, Michal Rus <m@michalrus.com> wrote:
> Hello!
>
> I’d like to start using dr Wozniak’s tasklist idea [1] in Org. He’s
> the original author of spaced repetition and SuperMemo.
>
[Being nit-picky here: :-) Wozniak is the author of SuperMemo and he has
made many changes/adjustments to the algorithms for optimal spacing, and he
is probably the one responsible for making this thing popular but, as he
himself makes clear, the spaced repetition phenomenon is something
documented in the psychological literature long before SuperMemo]


> It’s about assigning values ($) and time (hrs) to each task. Then,
> priorities ($ divided by hrs) can be calculated, and then you do the
> tasks with the highest priority; effectively, spending your time in
> the most valuable way. (That is if you assign the value and time
> correctly, but it can be learned.)
>
> Is there anything like that implemented? I couldn’t find anything.
>

org-drill was designed specifically for this

http://orgmode.org/worg/org-contrib/org-drill.html

(you might also want to look at :
http://stackoverflow.com/questions/34983106/how-to-install-org-drill)


Best,

R.



> If not, how hard would it be? Where would it be best to start?
>
> Thank you!
>
>     [1] https://www.supermemo.com/articles/tasklists.htm


--
Ramon Diaz-Uriarte
Department of Biochemistry, Lab B-25
Facultad de Medicina
Universidad Autónoma de Madrid
Arzobispo Morcillo, 4
28029 Madrid
Spain

Phone: +34-91-497-2412

Email: rdiaz02@gmail.com
       ramon.diaz@iib.uam.es

http://ligarto.org/rdiaz

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

* Re: Dr Wozniak’s tasklist implementation
  2017-01-29 22:19   ` Bob Newell
@ 2017-02-02  0:52     ` Bob Newell
  0 siblings, 0 replies; 5+ messages in thread
From: Bob Newell @ 2017-02-02  0:52 UTC (permalink / raw)
  To: Org-mode mailing list

Aloha kakou,

I started to find the above idea pretty interesting, and so I did a
small proof of concept coding to implement it. (Certainly this could be
done a lot better but I just wanted to try it out.)

I'm going to work with the idea for a little while to see how well it
helps in sorting through tasks.

Bob Newell
Honolulu, Hawai`i

* Sent via Ma Gnus 0.14-Emacs 24.3-Linux Mint 17.3 *

----

;; Implement supermemo style task list processing via org-mode tables.

;; Usage: M-x org-tasklist-add and follow the prompts. If you use it a
;; lot, tie it to a function key or something fast and useful.

;; The task table file, tasks.org, goes to the org default directory,
;; and is created if it doesn't yet exist.

;; Tasks have an input value (in any units you like), time (in any
;; units you like) and a description. Priority is then calculated as
;; value/time and the table is sorted from highest value at top to
;; lowest value at bottom.

;; This is /not/ integrated with the org-mode agenda. That is keeping
;; with the philsophy explained by Dr. Wozniak, that tasks with
;; time-constraints should be avoided if possible and scheduled
;; separately when they cannot be avoided. (This seems like a fair
;; amount of wishful thinking.) But in any case, high-priority or
;; high-value items can be manually added to the agenda if so
;; desired. (I don't yet have an automated function for this.)

;; I think the task table could contain many items, none of them (yet)
;; urgent. It may be a way of prioritizing future work (chosing the
;; most valuable work), which later gets projectized (perhaps) and
;; scheduled. What the table can surely do, which I think is of much
;; merit, is screen out low value projects and tasks that simply
;; aren't worth doing, either on their own merit or compared with
;; higher payback items.

(defun org-tasklist-sort ()
"Sort org tasklist"
 (interactive)
 (goto-char (point-min))
 (search-forward "#+TBLNAME: org-tasklist" nil 2)
 (forward-line 3)
 (forward-char 2)
 (org-table-sort-lines nil ?N)
)

(defun org-tasklist-add (value hours description)
"Add a task to tasklist"
 (interactive "nValue: \nnTime: \nsDescription: ")
 (find-file (concat org-directory "tasks.org"))
 (goto-char (point-min))
 (while (not (search-forward "#+TBLNAME: org-tasklist" nil 2))
   (insert "\n#+TBLNAME: org-tasklist\n")
   (insert "|Priority|Value|Time|Task Description|\n")
   (forward-line -1)
   (org-table-insert-hline)
   (forward-line 2)
   (insert "#+TBLFM: $1=$2/$3\n")
   (goto-char (point-min))
 )
 (forward-line 3)
 (insert (format "|  | %f | %f | %s |\n" value hours description))
 (forward-line -1)
 (org-table-align)
 (org-table-iterate) 
 (org-tasklist-sort) 
)

-- 

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

end of thread, other threads:[~2017-02-02  0:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-29 15:10 Dr Wozniak’s tasklist implementation Michal Rus
2017-01-29 21:22 ` John Kitchin
2017-01-29 22:19   ` Bob Newell
2017-02-02  0:52     ` Bob Newell
2017-01-30  7:38 ` Ramon Diaz-Uriarte

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).