How annoying is it that your deadline can't be between 6am and 7am?

Deep in our list of bugs to fix (internal link) is a misleading error message when picking a disallowed deadline time. When filing that bug report, I got thinking about the underlying issue, why you can’t set your deadline between 6am and 7am – something at least @shanaqui and @narthur have complained about before.

I think it would be a quick fix (famous last words) to at least allow earlybird deadlines as early as 6:01am instead of 7am. We’d keep 6am as the latest night-owl deadline allowed. Can we do better?

If we wanted to allow the earlybird and nightowl ranges to overlap or just have 6am in common, it would require:

  1. A slider UI or some other way to disambiguate between “due first thing before breakfast” vs “due well after midnight”
  2. Storing that choice in the goal object and having all the rest of the code check it

Or maybe 2 is a non-issue, because it’s just a positive or negative number of minutes specifying the offset from midnight? If it’s purely a UI issue, maybe we should do it? It seems easy enough.

(I don’t think I like the idea of allowing actual overlap beyond 6am itself. It means picking two arbitrary thresholds: like, say, 4 or 5am as the earliest earlybird deadline and, idk, 8am the next morning as the latest nightowl deadline. And there do have to be thresholds because an earlybird deadline of 12:01am is nonsensical and a nightowl deadline that’s like the afternoon of the following day is un-Beeminder-y.)

Alternative to a slider

The slider in the original spec lets the user understand intuitively whether they’re choosing an earlybird or nightowl deadline. That plus the dynamic text (emojis? :sunrise: / :owl:) telling you which you’re getting. Also the slider lets users use 6am as either earlybird or nightowl without needing the 6:01am hack.

But if we don’t want a slider, here’s another potentially fun/cute UI. The user clicks on one of :sunrise: / :sun: / :night_with_stars: / :owl: (for morning, afternoon, midnight, nightowl):

  • Clicking :sunrise: restricts the deadline field to 6am-11:59am (default 9am)
  • Clicking :sun: restricts the deadline field to 12pm-11:59pm (default 5pm)
  • Clicking :night_with_stars: sets the deadline field to midnight and makes it uneditable
  • Clicking :owl: restricts the deadline field to 12:01am-6am (default 3am)

Either way, with this or the slider, the point is to force the user to have some awareness of what kind of deadline they’re getting.

PS: Those defaults could be random or even computed to minimize peak server load. :thinking:

2 Likes

a nightowl deadline that’s like the afternoon of the following day is un-Beeminder-y

This doesn’t actually apply to me, so feel free to ignore it, but wouldn’t this actually make sense for someone with an inverted sleep schedule or who works night shifts? I have a friend (not a Beeminder user nor likely to become one) whose preferred sleep schedule is to wake up at around 7pm, be awake through the next day at around noon, then go to sleep. Being able to set the nightowl deadline at 1pm would be perfect.

Obviously this is a rare edge case, but a solution that allows for it seems superior to one that excludes it needlessly.

4 Likes

Good use case! How much worse is a 1pm “earlybird” deadline in the status quo for such a person? Maybe they already have so much what-day-is-it confusion that this doesn’t even register?

PS: As @theospears just reminded me, the bright red staircase laughs at these considerations.

1 Like

For what it’s worth, I no longer use deadline waterfalls, and none of my goals are due before 8:30am, so this isn’t currently impacting me anymore.

2 Likes

We had some related discussions once upon a time about a user’s perceived day with the day boundary being in the middle of their typical sleep period.

e.g. I’m typing this on a Monday, and it’ll still be Monday to me until I go to bed, even if that is after midnight and the wall clock says it’s Tuesday. It disproportionately annoys me that things like step counting apps will count the journey home after a late night out as being on the following day. Not to me they weren’t!

Not 100% sure how that relates to early/late goal deadlines, but it very much relates to what weekday we ought to say a goal deadline falls on. iirc we currently use wall clock for that, which for a midnight deadline tonight can cause the UI to say the goal is due on Tuesday. (Which in turn is why my default deadline is 23:59.)

2 Likes