Recording page counts with time spent reading records 1 less page than expected

Description of your request or bug report:
I recently started a daily reading challenge and have been recording my pages read with time spent each day. My history looks something like:

Day 1: 1-11, 10 min
Day 2: 12-20, 11 min
Day 3: 21-30, 10 min

etc

When I look at my per book stats I expect that my percentage of timed pages should be 100% but instead I see that I’m missing a timed page read for each separate recording of my reading.

This makes me think that the page span is somehow not inclusive of the starting or ending page but I think the normal interpreatation would be that if I said I read x-n pages that the number of pages I read would include x and n…

One thought I had is that the ending page is meant to be the page I stopped before (especially since by default the starting page is pre-filled with the last read page instead of the first unread page) so if that’s the intention, I can adjust my habits but it’d be good to maybe add a bit of explanation or UX treatment to make it clear.

(Just confirmation here would help since I’m afraid of messing up other data if I change my recording just to work around a minor bug with timed pages count)

Thanks!

Trello link:

I think the default input starts at page 0, that’s probably where your one page went missing :slight_smile: If you want a quick workaround.
Maybe additional discussion is needed whether this behavior should stay like this.

1 Like

That’s a good point but to clarify, I see one missed page per time I record my reading.

So if I record three separate days I’ll have three missing pages from my times pages count.

Sorry for the lack of clarity!

1 Like

Oh, I see. Now that you mention it, you seem to modify the start page number of each session, right? I usually just leave it as is, because mostly I tend to end a session in the middle of a page, so it doesn’t feel weird or unnatural to me. :sweat_smile: I think this is intended. design. But an additional note might help, yes.

Yes, @Myria is right, we start at zero as we want to do simple subtraction. The start page should always equal the end page of the previous session. I agree that’s a little confusing, hmm… but that is how it’s working :sweat_smile:

Happy to discuss alternatives… or a simple note.

2 Likes

Oh I’ve been changing the start page too! Like OP said, if it says I read pages 10-15 (for example), I thought both would be inclusive. I agree, a note about it would be nice

Thanks for the replies. I can definitely see the intent now.

Since it’s 0 indexed, I guess we should treat the interval as (start, end] given a person who read pages 0-1 would have read page 1 only.

I couldn’t think of an elegant UI change that would make this obvious but some ideas for tooltip/notes:

Given range is exclusive of start page.

Clear technically but not sure how universally understandable it is.

Page ranges for a given session should begin where the previous session left off.

This is clear in plain english but is less accurate given a person could record a timed page range after not updating for awhile (non contiguous timed reading sessions).

Thinking more, I’d consider moving to a 1 indexed system for max layperson clarity. Internally, switching to (end - start + 1) probably isn’t too bad but I’m not sure exactly how many code paths would be affected. (There’s also a problem around if a data migration would be necessary.) Let’s not forget the UI would also need to be tweaked such that the suggested start page was last + 1 instead of just last.

Might not be worth it based on the usage of the time read feature and it’s super useful knowing the intent of the system now! I’ll stop editing the start page from now on. :slight_smile:

3 Likes

@Megumin, perhaps we can log this as a speculative ticket to move page counts to be 1-indexed. Approved.