Beeminder Forum

Feature Request: Integery goals

What is the setting called in the API? I don’t see any hits for “integer” on the API doc page.

2 Likes

The integery parameter is among those ‘more fundamental goal attributes’ that are implied by goal_type. Defaults to false for all types apart from inboxer and netcalorie, according to the code. I thought we could specify those parameters independently of goal_type in the API, but maybe I’m mistaken.

Nonetheless, I can confirm that integery is now exposed in the scarily advanced settings on my custom goals, with this caveat:

Assume that the units must be integer values, e.g. for inbox goals you will never have a fractional number of emails, so telling you that you must archive 2.7 more emails to be safe is kind of silly. Currently this only affects the numbers given in the Amounts Due / Hard Cap table, and above the graph in the Bare Min / Hard Cap section.

2 Likes

Maybe I’m not phrasing this correctly, but I am looking for the name of the parameter. I just pulled one of my goals from the API and “integery” is not one of the keys in the dict returned. Is that actually its name and it is absent when false?

1 Like

I guess it hasn’t been added to the API yet.

1 Like

but…

1 Like

Oh.

1 Like

I just checked my goal that has it turned on via the API and it’s definitely not currently there.

I think it actually is called integery. I just added it to one of my goals and it modified the bare min display. However, the API does not include the value even if it is set true.

2 Likes

Woot! Just set integery on 22 of my goals – my dashboard has never made this much sense before! :smiley:

2 Likes

It looks like it isn’t rounding the right way. For example, right now my goal (https://www.beeminder.com/drtall/goals/well_met) is showing +4.05 bare min but on the goals page it shows +4 instead of +5.

2 Likes

[quote=“philip, post:21, topic:470”]
It’s currently exposed via the Beeminder API
[/quote]My brain lumped it in with the all the other ‘more fundamental goal attributes’ and expected that it was alongside them in the API. There’s been a clear failure of omniscience. Sorry about that.

Looks as though there’s a couple of #UVI still to come:

  • expose integery in the API
  • get the bare-min rounding right
3 Likes

Ha! This is almost as good as “Mistakes were made.”. I’m going to have to remember this line and use it at work.

Anyway, no worries all good stuff. :slight_smile:

1 Like

Wow. Great! Thanks for implementing this.
One observation so far: when the hard cap is calculated based on “until the goal date”, not “until derailment”, the number (above the graph and in the goals gallery) doesn’t seem to be affected by the parameter. Like here: https://www.beeminder.com/scarabaea/goals/pano_backlog - where I am beeminding keeping the number of items in work less than 20, with a 0-slope.

2 Likes

Ah I think that is also true for Odometer goals (https://www.beeminder.com/drtall/goals/reading).

1 Like

It seems that the bare-min is not rounded up (when integery is enabled) if you have too many days until derailment. See for example https://www.beeminder.com/apolyton/goals/blog
vs https://www.beeminder.com/apolyton/goals/nado

1 Like

Tried it out

  1. set integery on
  2. goal has more than 7 days for derailment: bare min still has decimals
  3. retroratched to less than 7 days: bare min now has no decimals :smile:
3 Likes

I think it also messes up the display on the summary page. It doesn’t match what is shown on the goal page and actually neither is correct:

2 Likes

Can we get the integery setting added to the settings page? I just created a new goal and having to re-remember how to set it via the API every time is kind of tedious. :slight_smile:

2 Likes

@drtall integery is on the advanced settings page for any custom goal.

“every time” seems like it’s a candidate for adding to default goal settings. (Yet another example of something that’s goal-set-up settings vs goal-usage reminder settings, for defaults.)

1 Like

Wait, does that mean you need premium for this? Because that would be absolutely insane. I’ve pre-written the rant in case of “yes”:


I have 28 active goals and 21 of them need integery. I’m in another thread helping @heraclitus63 and they have 2 goals and both of them need integery. I am curious what the stats are for everybody else.

If I’m actually representative here and integery is more common than not, I would argue it ought to be on the Basics page. If I were king of the world, I would make all the timer apps report time in seconds rather than hours and then default integery to on for all non-weight goals.

What I would not do is tell people, new users and veterans included, that getting Beeminder to be less of a [quote=“lolernie, post:3, topic:1263”]
engineer/programmer/sentient robot type of thing
[/quote]

requires premium. I would not do this because:

  1. It’s already hard enough to attract newbees. The graphs and math are already very nerdy. If you have to click Terrifyingly Advanced to get Beeminder to stop asking you to floss your teeth 0.17 times today, I don’t think it’s going to happen often.
  2. Everything in the New Goal UI makes Custom Goals sound scary. What is so scary about not wanting to be talked to like a sentient robot?
  3. This continues the discouraging pattern of Beeminder premium features being work arounds / bug fixes rather than features. integery is a Category B feature from that post. I will not pay money for it.

EDIT: Updated stats since I created a new integery goal.

4 Likes