Support via Liberapay

Org Effectiveness Tutorial


In the Personal Software Process, we attend to the tasks in the estimated time, but few times we attend to effectiveness, understanding by effectiveness, the tasks done comparising the proposed tasks.

The formal educative process try evaluate with respect to solve exams, that is, quizes or another academic tests and some times training exercises, although, few times the student knows if execute your own personal objectives: what is the reason because I've started to study something if I've learn it or don't. Finally, someone knows if learn things because has been able to make. The idea presented in this tutorial is a software to everyone can be evaluted to himself in function to his own personal objectives. We can say that measure the effectiveness is know if we are honest whith ourselves.


Currently, org-effectiveness.el is stored in contrib, you can download worg with:

$ cd ~
$ mkdir git
$ cd git

$ git clone https://git.savannah.gnu.org/git/emacs/org-mode.git

You can find org-effectiveness.el in ~/git/org-mode/contrib/lisp

So, you can add the next line (or similar) in your .emacs

(load "~/git/org-mode/contrib/lisp/org-effectiveness.el")

If you want use the plot feature, you must install gnuplot, for instance in debian, you can do:

$ apt-get install gnuplot

Counting outlines

To measure the effectiveness we can count tasks done and tasks cancelled, but perhaps you want count the tasks pending or tasks in another state, so we've built some functions to it.

With org-effectiveness-count-keyword, we can count an outline in an state (keyword) given. For example:

M-x org-effectiveness-count-keyword TODO

Usually, anyone will be using the next states: TODO, CANCELED and DONE at least, so we can use

M-x org-effectiveness-count-todo
M-x org-effectiveness-count-done
M-x org-effectiveness-count-canceled


The calculus that I propose to know if someones is effectiveness is very simple is enough dividing the number of tasks DONE with the CANCELED. So, we can know the total effectiveness in the current buffer with:

M-x org-effectiveness

We can know, the effectiveness in a specific date with

M-x org-effectiveness-in-date

Writing the date in the format YYYY-MM-DD.


Make an only task in one month is not very difficult, if you only want make one task is ok, you are 100% effectiveness, but the people is ambitious, the companies want reach many task, without cancel anything.

We can consider that measure our productivity is only measure the tasks done in a period of time (see 1). For example, in a month:

M-x org-effectiveness-dones-in-date

Deploying graphs

We can deploy a gnuplot graph to know the effectiveness in the current buffer by months with:

M-x org-effectiveness-plot

We can deploy an ascii graph to know the effectiveness in the current buffer by months with:

M-x org-effectiveness-plot-ascii


  1. Barry W. Boehm, TRW (1987) Improving Software Productivity


Documentation from the orgmode.org/worg/ website (either in its HTML format or in its Org format) is licensed under the GNU Free Documentation License version 1.3 or later. The code examples and css stylesheets are licensed under the GNU General Public License v3 or later.