kylecorry31 / Trail-Sense

An Android app that uses your phone's sensors to assist with wilderness treks or survival situations.
https://kylecorry.com/Trail-Sense/
MIT License
1.22k stars 75 forks source link

Weather forecast descriptions can be improved for better readability #1535

Closed cor-of-org closed 2 years ago

cor-of-org commented 2 years ago

I used to get, "No Change", now I get "unchanging".

I used to see alerts about "rain", now I get "precipitation soon".

Whoever is fucking with the source code, just stop it.

ffs, I don't have time for your childish antics.

kylecorry31 commented 2 years ago

@cor-of-org I can change Unchanging back to Not Changing, I agree that is a bit clearer.

Trail Sense never had an alert for "rain", it used to say worsening (if it did it was in the beta versions a couple years ago) . As of right now, I do not know how to predict what type of precipitation will happen based on pressure and cloud readings (I'm still conducting research into this - if it is even possible to do with limited sensor readings). For this change, I felt that precipitation was more descriptive than worsening since it is commonly associated with a weather front (and was what I was trying to imply with "worsening" - I didn't want to commit to "precipitation" until after I bought a few books on weather prediction). Until I have a research driven method to determine the type of precipitation, I will not display rain/snow.

Also, I am authoring these changes based on research I've conducted into weather forecasting (so there's nobody messing with the source code). I'm always open to constructive feedback though, and can make changes if needed.

If you would rather see "worsening"/"improving" rather than the type of weather (i.e. if precipitation is not accurate in your area), I can add a setting to revert back to that - let me know.

cor-of-org commented 2 years ago

Haha! Good man! Many developers would have taken the other route. Apologies - I'd have gotten back sooner, but I lost track of which device/site I had commented on!

Trail Sense has proven to be a pretty useful app, so far. I've not explored its full possibilities (when I'm out on the trails, I prefer to just wing it!), but the weather notifications are invaluable, IF I CAN READ THEM!

Previously I had come to rely on just pulling down notifications and knowing about any upcoming weather changes. Have you any idea the value of having users that rely on your apps? Anyway...

When it comes to notifications, readability is the number one thing. For one, I use glasses to read, and having to get out my glasses just to see what a notification is, is annoying. It's just the usual macular degeneration we all face as we age, and clear, simple notifications can be read quickly and easily without glasses.

Basically, stuff like "Unchanging" is just a wobbly line I need glasses to decipher. "No change" is readable with one eye from any distance. You kids never think of these things! I know I didn't. What about icons? Even as I ask this question, a set of readable forecast icons is generated in my head. Let me know if you want a copy.

And figuring out if the coming wave of "precipitation" is going to be rain or snow is exactly the sort of thing I expect computers to be working out for me (you know, based on whether or not it's above or below zero degrees - the word, "(possibly)" afterwards (in braces) would absolve you of all responsibility should I choose to forgo the gloves!). If it's on the line, say "sleet"!

In short; inside the app, accuracy is good, expected. In notifications, I just want instant readability.

cor-of-org commented 2 years ago

I just noticed the latest commit.

We know it's a "weather" notification. We don't need to be told again within the notification.

And "not changing" is 20% good, whereas "no change" is rock-and-roll, 100% w00t!w00t! on the nail.

Hire a poet or something to sort out your text.

kylecorry31 commented 2 years ago

@cor-of-org thank you for providing some context - I didn't realize that unchanging would be more difficult to read than no change (to me it appeared fine, but I also have the context of being the one who made the change in the first place). Unfortunately, given that I work on Trail Sense for free, I do not have the resources to hire someone to help out with text/UX - if something is unclear, I rely on people like you to let me know (thanks!). I would definitely be open to hearing your ideas on how I can improve the weather icons (I've gotten so used to them that they are easy to understand for me, but there's also developer bias in that).

My latest commit did not add the word "weather" to the notification - the weather_not_changing is just the resource identifier for translation purposes. It currently says "Not changing soon", I can change that to "No change soon", thanks.

As for precipitation - I wish it were that easy :) The thermometer within a phone is impacted by the battery and CPU temperature, therefore it is very unlikely it will every record a temperature near freezing (there may be ways to better calibrate it, I just need to learn more about it). My idea was to use historical temperatures for your location/time of year to do a similar method (also not a trivial task). I want to make sure the route I take for making that prediction is backed by solid research.

cor-of-org commented 2 years ago

I applaud your commitment to providing science-based information (if only everyone got their information this way!), but I wouldn't trust the sensors on a user's phone (which may be in my thermally-lined pocket) - surely weather data providers are a better source of local temperatures where it matters.

I like this app and I'm happy to provide UX assistance in English language if you want it - feel free to run any UX stuff by me - I'll give you my unvarnished opinion!

kylecorry31 commented 2 years ago

Thanks!

I would love to just query a weather data provider for temperature, but I took the stance early on with Trail Sense that it would not have the ability to access the Internet. This is something I can't take back without losing the trust of many users, and it also has the benefit of allowing the app to work in areas with spotty or no Internet connection (I made this app for my backpacking trips in areas of no cell signal). The downside is that I have to get a bit creative about how Trail Sense uses on-device sensors, which is why I can't trust the thermometer.

kylecorry31 commented 2 years ago

I am going to close this ticket - if you feel I missed something, please let me know and I can re-open it or create a new one.

The change I made was converting "Unchanging" to "No change", and then I've created two more issues:

cor-of-org commented 2 years ago

Ouch! Okay, gotcha. You got some tricky science ahead!

In fact, I'd say there isn't the computing power, currently, in even the best Android device, to measure all the factors which could influence your results. As they say, good luck!

But this is maybe something that the user could meantime have some say in..

If I'm out back-packing or mountain-biking and want accurate information, it's up to me to get the conditions right for that; i.e. if I want accurate temperature-related information, I get the device free of obstructions (or thermally-influencing factors - Me, I keep my phone in an identical side pocket on my backpack (standard webbing); whichever pack I'm wearing - not in a thermally-lined pocket, I mean) - so ambient temperature readings should be good. But it would also be nice to be able to choose internet providers for local temperature-related information; at least until this becomes (as I get farther into the wild) unavailable. Besides; what's happening in my near vicinity isn't usually the same as what's happening up in the atmosphere, where weather is made.

I think it's great that you are building something that works properly offline. But at the same time, I want a tool that uses all sources of information, and if some information becomes available, even for a minute, I'd like an app that takes this into account.

Clearly you are someone who likes a challenge!

kylecorry31 commented 2 years ago

Yes, lots of tricky science ahead - but I'm definitely enjoying the challenge.

I've been exploring the idea of Trail Sense companion apps for some time. That is, add-ons to Trail Sense which can be downloaded separately. So for the privacy focused users, they never have to worry about Trail Sense using the Internet, while others could download something like a "Weather Provider Expansion" which polls a weather service to get some data that Trail Sense can process and cache. I think this would be the best of both worlds - Trail Sense can then use the most accurate data it has access to.

But with my limited time to work on Trail Sense, the companion apps have been pushed aside for other core features. Before I forget, I created this ticket to track a weather provider expansion: https://github.com/kylecorry31/Trail-Sense/issues/1540

cor-of-org commented 2 years ago

You have clearly given this some thought. Yes, I think your companion apps (or plugins?) is an excellent way forward. Good luck!

cor-of-org commented 1 year ago

Today I got, "Unchanging soon". lol

kylecorry31 commented 1 year ago

Do you think that will read better as "no change soon"? If not, what do you suggest? I can see for the "later" cases it would be clearer as "no change until later", but I'm not very clear on what to put for "no change soon".

I have another ticket to convert that text into hours - I'm still working out a good value for each though (ex. No change for 4 hours sounds fine to me)

kylecorry31 commented 1 year ago

Actually, thinking more about it, I'm going to remove that text for the "no change" case - I don't think it makes sense to show it when no change is detected, because unlike the other weather conditions, it does not really have a good indication of how long there will be no change.