Stats

Helo pawb,
I am a big fan of the new app interface and layout. However in the stats section, they have gotten rid of the daily average learning time.
I am not a big fan of gamifying learning and streaks etc, however i did enjoy seeing my daily average time. As even if I can’t practice every day I enjoy keeping my average above a certain level by practicing more on others days, and gave me a good goal to stick to. Does anyone else want it back? Would this be possible?

Either way a huge fan of the app and recommend it to everyone I know learning Welsh in other ways.

Diolch

1 Like

That’s super interesting - we’d had some difficulties with the daily averages and how they were operating, so we kind of went off it - it’s a bit tricky to decide which days you’re going to count - if you’ve been using the app for 150 days but just started learning a particular language, it shouldn’t divide your time in app for that language by 150 days - but what if you take some time off? Should we just average the days when you study? etc etc.

But if you have clarity on how you would like it to work, I’m sure it’s something we could put back on the to-do list :slight_smile:

Hi thanks for the response!
In terms of managing different languages I’m really not sure.

But in terms of how the averaging would work, maybe it could refresh every week/ month. And then you could check each week/months average in the stats screen. Kind of like how screen time works on iPhones. So someone returning after a break is won’t have their current average effected once a new week/month starts and they can build from there.

Cheers

1 Like

Interesting - I think a last week/last month average would be fairly easy to implement - and maybe a bit more responsive to changes in usage, which might be a good thing. We’ll have a bit of a think about it this week!

2 Likes

Btw this is what rolling averages are for. They work the same as normal means, but include the time of the datapoint, and the older the datapoint the less it counts to the average.

There are many ways to do this: either take the last X days make them all worth 100% each and everything before is worth 0% (this is called simple rolling average) or what Reuben is suggesting.

Or you can do stuff like having the days decay exponentially, so yesterday contributes the most to your average, 100%, ddoe the second most, something like 75% and so on until beyond day 7 or 15, or 30 or whatever the contribution is 0%.

You can decide on how strong this decay term is giving more or less weight to “long ago” and you can decide when the contribution falls completely to 0.

Not sure what code you are using for the app, but likely there is a package that can calculate rolling averages for you, just pick some reasonable values for the decays. But of course, when in doubt simple is fine.

1 Like