getodk / collect

ODK Collect is an Android app for filling out forms. It's been used to collect billions of data points in challenging environments around the world. Contribute and make the world a better place! ✨📋✨
https://docs.getodk.org/collect-intro
Other
713 stars 1.37k forks source link

Change default form update frequency #4690

Closed seadowg closed 3 years ago

seadowg commented 3 years ago

This should change from 15 mins to 1 hour based on analytics that people often increase it. Should change for Match Exactly and Previously Downloaded Only.

lognaturel commented 3 years ago

These are the analytics I'm looking at. Any others?

My interpretation is that 15 mins is a reasonable default. This only tells us about users manually setting the frequency and not about users scanning in a configured QR code, right? And it looks to me like 15mins is the most popular manual choice followed by 24 hours. The concern with 15mins is that it could overwhelm servers in certain cases with many data collectors. We haven't heard of any instances of this but the default has been 15mins for some time now.

seadowg commented 3 years ago

@lognaturel huh. I think I misinterpreted from our conversation that 24 hours was the most popular, but I see you meant "other that than the default". Yeah let's not do this!

lognaturel commented 3 years ago

Sorry, I think I mostly was mumbling to myself. We didn’t really consider the 15min default as much as I would have liked in the first place but now that it’s in effect I think changing it would be disruptive. Maybe it’s good that we just went with it without overthinking — if it’s not causing problems then it is more likely to get users the updates that they need.

I find it interesting that the second most popular choice is every 24hrs but I don’t really know what that means. Maybe those folks know for sure that their forms rarely change? Or know that their data collectors don’t often have connectivity.

The thing that I have seen as problematic with the frequent updates is that there are “Failure” notifications too often. Your concept of some kind of back off and retry would be great for that. When you see it, could you please look at your Central log to see if there are any hints, too? It’s really weird.

seadowg commented 3 years ago

I find it interesting that the second most popular choice is every 24hrs but I don’t really know what that means. Maybe those folks know for sure that their forms rarely change? Or know that their data collectors don’t often have connectivity.

Yeah I don't know really. It's hard to find the right values for these things. This is especially true given the "push" nature of a lot of these kinds of updates that people are typically used to.

Your concept of some kind of back off and retry would be great for that. When you see it, could you please look at your Central log to see if there are any hints, too? It’s really weird.

I think I did this before and couldn't see any failures, which led me to believe that it's the phone losing signal. I keep meaning to check logs again, but it often happens when I'm out and about (which also suggests that it's the phone). I think a change to the app early next release with more details of failures would be helpful for sorting all this.