Beeminder Forum

Long goalnames and tags

I’ve sometimes had goalnames that were longer than I even wanted them to be so I could encode some metadata in the goalname. I highly suspect that other than writing a sentence as a goalname, which is what the folks at Beeminder appear to be trying to prevent, that most uses of long goalnames (especially with lots of hyphens / underscores) fall into this category.

Thing is, Beeminder actually has a tags feature! The problem is it has absolutely no UI, and because of this probably almost no one uses it regularly or even knows about it.

Allow me to make a proposal that I think would be minimally disruptive to anyone, yet dispense with the majority of “legitimate” use cases for really long goalnames:

  1. Tags are now hashtags. Everyone already knows what a hashtag is, so there’s no need to explain them.
  2. Hashtags go in the goal description. Any tags people have already created should be automatically added to the description. I’d suggest putting them at the beginning of the description; see next point.
  3. Anywhere that descriptions are shown, hashtags should be displayed in a visually distinct bubble. Anyplace that displays a list of goals (the bulk notifications editor, for example) needs to show these hashtag bubbles, whether or not the description is shown.
  4. There needs to be some UI around composing hashtag queries. It would be easy to go overboard here, but at a bare minimum it needs to be obvious how to limit a view to goals with a certain hashtag (probably by clicking on one of the bubbles I just described).
  5. (Optional) Arbitrary Boolean queries for hashtags (AND, OR, NOT, and parentheses). I think for the power users at whom this is primarily targeted (who have enough goals for it to matter) this would increase the usefulness a lot.
  6. (Optional) A UI to pick a bunch of goals and bulk add/remove hashtags would also make it a lot more usable.

EDITED TO ADD: Also, it’s ludicrous that tags aren’t even supported by the API, and you should fix that. C’mon, guys, it’s just an extra data field! EDITED AGAIN: Wait, it is a field in the goal data? I guess being unable to search goals by tag makes them pretty unusable through the API though… you’d have to get the goal data for every single goal a user has and then reimplement the tags actually doing anything useful yourself.

I really don’t care about any of the details here, but I am curious for anyone who has long goalnames whether making tags into a real feature instead of the pariahs they currently are would address your use case. Or whether they seem useful in general.


Eh. My long goalnames are mostly book titles. They’re long because putting in the full book title is the most memorable slug for me – anything short, truncated or cutesy won’t be something I remember when I think “hey, when did I read Beneath the World a Sea? Was that the one I stalled on for a week and then read in a day?” and want to go to to find out. (NB: this is an example, that goal name is fine.) Today I had to name a goal darkmatteranddinos, and I guarantee I won’t remember that when I want to look at my Dark Matter and the Dinosaurs goal. :joy: Ah well.

The tags thing might kinda work for the goals I name “LSHTM_nameofclass”, but since things tagged the same aren’t grouped together in archived goals, maybe not…

But for those for whom your contention is true, I find that @zzq’s browser extension would be the perfect interface for making tags work, if I was using them at the moment. So that’s one option for anyone who does want to make more use of tags!


I want to think about this more, but I think many of my longer goal names could benefit from this setup.

For instance, for a long time, I used some custom Duolingo integrations that treasured three or four different things per language, times a few languages, but at the same time I was also using Clozemaster and tracking minutes of media in target languages. I had a whole mess of duo-deutsch-xp and cloze-esperanto-xp and -crowns and … you get the picture!


At least one of the goals that had its name flagged could have used tags instead. Of course, even if tags were a thing back when I created the goal, I very well may not have used them.

1 Like