I made a generator of percentile feedback image for a Beemider goal

Percentile feedback graph was described as

“pleasant, motivating way to graph productivity while I’m working (and can still affect it).”

Graph example generated by my tool: https://raw.githubusercontent.com/matkoniecz/beeminder-percentile-feedback/master/percentile_feedback_example.png (lines represent progress during day, with line in a special color showing progress during a current day)

I heard enthusiastic descriptions of percentile feedback so I decided to try using this motivation strategy. For now I made a simple generator of graph image from Beeminder data and it is published at https://github.com/matkoniecz/beeminder-percentile-feedback

In case something is not working or you are interested in using this tool but you are unsure how to do that - please open an issue at https://github.com/matkoniecz/beeminder-percentile-feedback/issues

Pull requests are also welcomed.

I admit that I am unsure whatever percentile feedback works as well as it is advertised - the tool just reached state of being usable.


This looks extremely cool!

In fact, I have something a bit similar (though not that involved) in the works (only in a nicer language :wink: ).

Let us know how it works, my main mistake was not checking quality of
graph generation library before writing most of the code.

At this moment I think that I should use Python, hopefully Emacs Lisp
also has sometimes that can generate graphs properly.

Well, actually not really. What I’m doing is “similar” on a much higher level of abstraction: it is another tool to help with the “microproductivity”. (Beeminder is day-based, I needed something with higher granularity - much like you, I guess.) But instead of showing me nice graphs, my tool gives me stats about my productivity. For instance, I set up a fraction of my work-time (I don’t use that tool at home) I want to spend actually working, say 80%. Then, I can see data like “your current efficiency is 78%, and you need 8 minutes of uninterrupted work to get back to 80%”.

So, a different approach but solving a very similar problem.

As for the graphs: have you considered JavaScript and the d3 library?


Have you posted about your tool somewhere? It sounds interesting
(though I suspect that it may be highly coupled to how you work).

As for the graphs: have you considered JavaScript and the d3 library?

Yes, but given that one of my main problems is wasting too much time on
a computer, especially in a browser I deliberately avoid anything that
requires using it.

Alternative is running script that will generate html page, open it in a
headless browser and take screenshoot. It is possible but it is a bit
overcomplicated and would work really slowly.

No, thanks and probably. I will make it public one day, though (and perhaps sooner than later).

Good point. I have a browser open all the time (I need it for a lot of my work), so I have to deal with that problem in other ways. The tool I mentioned is one of them.

Definitely, not worth the effort, I guess.

Usage update: it turned to be useful! Not as powerful as described by posts that inspired it, but still worth using.

There are two mechanisms that I noticed:

  1. I have in my TODOs “run percentile script and look at result” item. Typically it results in going “oh, no results will be poor - I should do something to improve it, maybe just 5 minutes” what typically results in doing targeted beeminder task, often for more than this 5 minutes

  2. It reminds me that maybe I did less than I wanted so far, but still my percentile is high (typically 80+). So it reminds me that while today is not as good as I want, I am still improving overall.

I often see something that is supposed to be useful, described as interesting/good idea - without any updates after initial post. And I have no idea whatever it was actually useful for the original author or is it something that turned out to not be helpful at all.

So I wanted to make an update here to avoid the same problem.

Hopefully this kind of necromancy is OK.


I’d love to see this too.