beeminder / road

Beebrain and Visual Graph Editor
http://graph.beeminder.com
Other
13 stars 3 forks source link

Grayson dots (actually forest green) for 7+ safe days (aka akrasia horizon immunity) #111

Closed dreeves closed 4 years ago

dreeves commented 4 years ago

Related to #106 (purge mention of "dark green")

AKA "gray(son) dots"

At least make the color for 7+ days of buffer be subtly different. Gray or a more gray-ish green.

https://forum.beeminder.com/t/beeminder-anti-habit-forming/6300/19?u=dreev

image

Cognata

Verbata: forest green, dark green, darkgreen, grayson dots, extra safe datapoints,

dreeves commented 4 years ago

Here's a candidate Before / After. I figured I'd start with a very subtle change but Bee is pointing out that it doesn't look intentional this way, just like the green is bit messed up.

image

shanaqui commented 4 years ago

Grey reads really odd to me, here. It sort of feels like it's saying it's invalid somehow (because "greyed out" often means "this option is disabled").

I am not sure what better colour I could suggest, but that was my first reaction. Even knowing Beeminder graphs as well as I do, it was very much "these are... dead? datapoints?"

chipmanaged commented 4 years ago

I was just scrolling down to say exactly what @shanaqui said. Grey usually means "invalid", "temporary", "unalterable", "system-set", or some other thing of that type. (It'd be great for PPRs, though! A visual indicator that you need to ENTER YO DATA!)

dreeves commented 4 years ago

[prescript: I typed this after shanaqui's comment but then sat on it because I wanted to update the forum thread and everything too. clearly i'm not going to do that but let's try to limit gissue discussion to the technical questions.]

Ok, that was persuasive, @shanaqui. (I'm still torn because of how great "Gray(son) dots" was but I guess that's secondary to the aesthetics and the actual semantics.)

So what if we make the akrasia-immune dots forest green? (See new before/after image in top-level comment above.) Like you're so far above the yellow brick road that you're off in the forest? It's a subtle difference so maybe that's fine to start with.

The hard thing about actually deploying this is we need to coordinate Beebrain + Beebody + Beedroid + BeemiOS so they all use colors consistently. Here's what everything should implement:

color = (safebuf < 1 ? "#ff0000" :  # Red for beemergencies
         safebuf < 2 ? "#ffa500" :  # Orange for 1 safe day
         safebuf < 3 ? "#3f3fff" :  # Blue for 2 safe days
         safebuf < 7 ? "#00aa00" :  # Green for 3+ safe days
                       "#228B22")   # Forest green Grayson dots for 7+ safe days
dreeves commented 4 years ago

UPDATE: We're going to have the API just return color as a goal attribute so clients don't have to implement the mapping from safebuf to color.

Danny and Bee can talk about how/whether this can be DRY'd up between Beebrain and Beebody.

dreeves commented 4 years ago

Another before/after where you can see how the dots are dark green when they pass the green isoline:

image

chipmanaged commented 3 years ago

I like it!