A recent vacation with Flowx should have made me the most informed and prepared person, but not.
Requesting up to 10 days of off-line data access. A user action to reveal old data would be fine (probably best) so the app can keep doing what it already does well with internet access.
As it is now, I’ll take screenshots as I prepare for my next vacation, but I am also spreading my eggs into other baskets.
Blank Flowx screens are pretty unforgivable. That was surprising.
Yes, offline data is a common request and Flowx does support this as long as you’ve downloaded the data for the location prior to going offline. Also as long as your manifest hasn’t been updated either. If the manifest is updated and Flowx knows about a newer forecast, it’ll automatically try to load this even if it’s offline and an older forecast exists.
Offline mode is much harder than you think to implement. There are so many complications. Imagine having two locations, say London and Paris, that overlap (share tiles). You download data for both, let’s say for the 2019070100 forecast. Then you download the newest data for London but not Paris, then go offline, which data do you use for Paris, the old forecast that covers 100% of the area or the new London data that only covers 50% of the area? Also you cannot just mix forecasts, they look bad and I’ll get lots of complaints.
The other complication is deleting old data, currently I keep two forecasts into the past. If Paris hasn’t been updated and is older than two forecasts, then it gets deleted.
There is also how to download data for offline use given there are many data source, data types, zoom levels, etc…
I have thought about offline data since the 2012 and I still found a easy solution. All solutions are very hard.
BTW, I think Flowx has the best offline support of any app of this kind. But if you find another app like Flowx that has offline support, let me know and I can analyse it.
I’m not seeing an issue. I wake up start the app online look at the weather in my area and the area I’m headed to turn off wifi (offline) weather data is there. If Im in a hurry or forgot when I get close to where I am going I turn on mobile data get weather info turn data off.
I think it is a issue with spotty roaming access after a extended time. Once you get a little download opportunity, Flowx will download the new manifest and many new data for the new forecasts.
Now the hard part come in deciding whether you’ve downloaded enough of the new forecast to override the old forecast. This is where the difficult logic lies.
What happens if you’ve downloaded the graphs for the new forecast but not the map. Or what happens if you’ve downloaded the new rain for the map but didn’t download the new temperature. Do we mix forecasts?
You can see why “always take the newest forecast is such a black and white and easy” option to implement.
One other option is to allow the user to choose the forecast from a list of old forecast, but damn, we’re starting to get complex.
all I can say is I I don’t do roaming as I am a pay as go type cell plan so if I have to leave town or know I’m going to a location where coverage sucks I open the app get the newest info turn of data and wifi and just use what loaded before I left.
Leverage “travel mode”.
If enabled: cache download attempt ‘travel cache’ vs drawing download directly. (If that’s what you do?)
If download complete: draw from ‘travel cache’
If download incomplete or times out: reshift timescale (leaving blank data at the end of the forecast, equal to reshifted timescale)
Yah, that’s work. But work that should have been done long ago, if you value how the app handles incomplete data.
I’m calling you out. In a friendly roadmap kind of way. This isn’t a pressing bug… but… don’t ignore it either. This has the potential of improving daily performance as well. I don’t think many of us truly enjoy waiting for the app to download and draw all the updates as it currently does.
Android has some annoying text only message popup that devs can use to alert to failures, like data loads. No UI complexity added when old forecast data is used. Except for blank data at the end of a forecast. You should figure out how to show that and that’s a great indicator to Flowx users, that the data is stale.
I don’t think we should confuse travel mode with this. Travel mode just updates the location of the place. There is no such thing as a “travel cache”.
When you download data for a place, it downloads tiles. There might be 4 tiles across the map and 3 tiles up the map, therefore when you download 4x3 tiles = 12 tiles. If you go to another place nearby, this place might overlap and use some of the existing tiles.
When you open Flowx it’ll download a manifest which lists the data sources and the latest forecast. If a new forecast is found, Flowx will start downloading the graphs and 12 tiles for the new forecast. The 12 tiles for the old forecast will still exist on the device.
Note, the manifest is 2.5kB, the graph data is about 4kB per line and tiles are about 500kB per tile.
The issue is deciding when the download is incomplete. How do I know you want to revert back to the 12 tiles from the old forecast? They still exist so I can use them.
Is the download incomplete if it manages to download the graphs but none the tile?
Is the download incomplete if it manages to download 3 of the precipitation tiles?
Is the download incomplete if it downloads the precipitation tiles but not the temperature tiles?
if you change to a neighbouring place after going offline, should it use the old forecast or the overlapping tiles for the new forecast for the other place.
I can assure you, there will be 4 groups of users for each of the cases above, i.e., you won’t satisfy everyone.
I agree, there is potential to improve daily performance but so are many other features and data.
Based on my prioritising criteria it doesn’t rank highly:
how difficult (very hard)
how many users (not many)
how often will it be used (not often)
can it be done properly or is it going to be a pain to get right (probably a pain/fiddly)
will it shift the needle significantly for revenue, number of users, feedback (not likely)
will users go “wow” (not really)
is it fun (no)
Offline data is on the to-do list but to be honest, it’s out of mind. I cannot think about all hundreds of things on my to-do list, that’s why they are on a list. I can only focus on the top 10 and work effectively.
If you want to contrast it, I get far more requests to change the color of a line on the graph.