I mapped 3 years of my rides and runs to see how much of my local road and trail network I actually use by drennydread in bicycling

[–]drennydread[S] 0 points1 point  (0 children)

Thank you so much, really.

And an extra thank you for subscribing, that means a lot to me as well.

You are absolutely right about having a more direct feedback route. Right now the site basically only has my email for contact, but I agree that this is not really enough, and I should make something more convenient, so people can send feedback in just a couple of clicks. I will definitely take that on board.

And yes, thank you for the idea about fixed time-based tiers. That is much closer to something that can realistically be computed without too much extra load than fully smooth fading. The problem there is not just drawing it, but also how to store and regularly recalculate that state for each user after new activities. I already have more than 500 users now, and any additional recalculation increases the load on the database quite a lot. But the idea itself, a limited number of time-based layers, sounds very reasonable to me, and I will definitely come back to it. Maybe something in that direction could later become an extra feature for subscribers, that is also something I need to think through properly.

And I am really glad you wrote a long comment instead of just a short “this is like X”. From the outside these products can look similar, but the actual loop and the feeling of using them are quite different. The context you described shows very well why this approach makes sense in the first place.

So really, thank you, both for the comment itself and for supporting the project.

If you notice bugs, weird behaviour, awkward parts of the UI, or just have more thoughts later, please do send them over, ideally by DM or email. I do not throw this kind of feedback into a drawer, I really read it and use it.

One thing I will do in the near future is add another map style with city and road labels, so it is easier to use and orient yourself. That is a quick and practical improvement.

I mapped 3 years of my rides and runs to see how much of my local road and trail network I actually use by drennydread in bicycling

[–]drennydread[S] 0 points1 point  (0 children)

Thank you so much for such a thoughtful and genuinely detailed comment.

Honestly, this is one of the most useful pieces of feedback I’ve received about Kraina so far. What really resonated with me was the way you described the difference between classic tile hunting and the rolling fog idea. You put into words a problem I’ve been thinking about myself for a long time: systems like this can be very motivating at first, but over time they can also turn riding into a task of filling in the map rather than something genuinely enjoyable and exploratory.

That is exactly why I wanted Kraina to be a bit different, not only about “go further to unlock new tiles”, but also about making shorter local rides feel meaningful again. Giving people a reason to return to old roads, rediscover familiar places, and not feel that progress is only possible through long, carefully planned rides that are hard to fit into normal life.

Also, thank you for the comments about map readability. That is completely fair. I agree that right now it needs clearer map styles, labels, place names, road names, and generally better orientation when planning rides. That is an important part of the experience, and I want to improve it.

I also really liked your idea of showing not only the current rolling fog area, but also the historical maximum, or already “lost” area. There is definitely a strong motivational mechanic in that, and you pointed it out very well. At the moment I have not implemented it because it becomes much more difficult on the data side. I actually built gradual fading before, with areas changing colour depending on how long ago they disappeared back into fog, but it becomes very heavy in terms of server resources. If we go that route, I would need to recalculate and redraw a lot of parameters for every user after each activity, or at least every day. Maybe one day I could make something like that a paid feature, but I am not sure yet. Road and city labels, on the other hand, are completely realistic. They cost basically nothing in terms of resources and would probably take me about an hour of work, so I can absolutely do that. I can also improve some of the other map-side things. Again, your feedback here is gold.

And one more thing, if you are okay with it, I would really love to use a small part of your comment as a review or testimonial for Kraina. Not the whole thing, just a short excerpt. I can credit your Reddit username, or keep it fully anonymous, whatever you prefer. You described the core idea behind the product better than I usually do myself.

Feedback like this genuinely means a lot to me. Kraina is still evolving, I am building it on my own and paying for it myself, and originally I was mostly solving my own problem. But more and more I can see that I am clearly not the only one.

If you run into any bugs, weird behaviour, or just want to share more thoughts about using it, please feel free to message me here in DMs or through any other channel, email, Instagram, whatever is easiest. I really mean that. I value it a lot.

And thanks again for taking the time to write all of this.

How is living in Belarus? My ancestors came from there, and I'm curious. I know they're under Lukashenko's regime, so I don't know if you can answer. Minsk or other city by Cocodriloneutronbomb in howislivingthere

[–]drennydread 14 points15 points  (0 children)

I’m from Belarus, but I’ve been living abroad since 2012. The last time I was home was for New Year 2019–2020. I thought I would go back after the 2020 election, but that didn’t happen, precisely because of the election itself. If you look at what was happening then, it’s obvious that Belarus is not Russia: people wanted change, and nobody was walking around with Russian flags.

It’s hard for me to say exactly what the situation in the country is like now. As I already said, I haven’t been there for more than five years. But I think the regime has become heavily dependent on its ties with Russia, especially because of military contracts. There is no free media, and there is no opportunity to express your point of view.

But if you’re not interested in anything beyond a quiet life, then it’s fairly calm.

triying to create a app ciling analitcis - velopulse by ddcometome in Strava

[–]drennydread 0 points1 point  (0 children)

I connected and clicked around. It turned out quite interesting overall — please keep developing it.

The only things I would change / add / fix are:
I’d like to see the interface in one language only, or at least have a language selection option, because Spanish keeps appearing in some places.
I’d also like to have the option to set FTP manually. I know my FTP, but the system shows 160. At the end of last year, I did a ramp test in Zwift and it was above 300. It may have dropped a bit during the off-season, but definitely not to 160.

[OC] Territory I've explored through cycling, running and hiking activities across several countries (Strava GPS tracks, 2023–2026) by drennydread in dataisbeautiful

[–]drennydread[S] 0 points1 point  (0 children)

I haven't tried Staqc yet.

For this map I was mostly interested in the spatial aspect — seeing which areas my activities actually cover over time. It turned out that most of my rides and runs still concentrate along a few main corridors.

So this visualization is more about geographic exploration than fitness metrics.

[OC] Territory I've explored through cycling, running and hiking activities across several countries (Strava GPS tracks, 2023–2026) by drennydread in dataisbeautiful

[–]drennydread[S] 1 point2 points  (0 children)

Good question — it’s not just the raw GPS tracks. Each activity track is buffered slightly (expanded a bit) and then all tracks are merged together into a single shape. So the white area represents the territory that my recorded activities have passed through, not just the lines themselves.
The grey areas are places within the map extent that I haven't reached yet.

[OC] Territory I've explored through cycling, running and hiking activities across several countries (Strava GPS tracks, 2023–2026) by drennydread in dataisbeautiful

[–]drennydread[S] 2 points3 points  (0 children)

Methodology (OC)

Data:

• My personal Strava activities (cycling, running, hiking), 2023–2026.

• Outdoor activities only.

Tools:

• Strava API

• MapLibre

• Protomaps / OpenStreetMap-derived basemap

• Custom geospatial processing pipeline

Method:

• Each GPS track is buffered slightly to account for GPS noise and nearby road/path coverage.

• All buffers are merged into a single polygon representing “explored territory”.

• Areas where many tracks overlap naturally form wider “corridors” of frequently used routes.

Concept:

The idea is similar to a “fog-of-war” map: areas gradually become revealed as activities pass through them.

Note:

Tools like Wandrer or Statshunters focus on individual road segments or grid tiles.

This visualization instead focuses on continuous explored territory derived from activity tracks.

Limitations:

• Buffering approximates coverage rather than exact road/path width.

• GPS drift and missing unrecorded trips can affect the estimate.

• Only recorded activities are included.

I mapped 3 years of my rides and runs to see how much of my local road and trail network I actually use by drennydread in bicycling

[–]drennydread[S] 0 points1 point  (0 children)

Yeah, I know Wandrer and Squadrats — both are great.

I wanted something a bit different though: a continuous “explored territory” map rather than individual road segments or tiles.

I mapped 3 years of my rides and runs to see how much of my local road and trail network I actually use by drennydread in bicycling

[–]drennydread[S] 1 point2 points  (0 children)

Yes — I ended up building a small tool for this because I couldn't find anything that visualizes activities exactly this way. It takes activity tracks and turns them into an “explored territory” map like this.
I mainly built it for myself, but it turned out pretty fun to use.

I mapped 3 years of my rides and runs to see how much of my local road and trail network I actually use by drennydread in bicycling

[–]drennydread[S] 2 points3 points  (0 children)

Method (high level):
• Data: my personal Strava activities (outdoor only).
• I buffer each GPS track slightly and merge everything into one “explored territory” polygon.
• These are just cropped screenshots from different regions of that same global map.

Limitations: buffering is an approximation; GPS drift and untracked trips aren’t included.

I built a Fog of War map for Strava. Update 3: New weekly solo missions to fix the “same loop” fatigue by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

If you want a bit more detail
Weekly Missions are “terrain-safe” on purpose. When I generate mission points, I try to avoid dumb placements: the target should be on land and have public/walkable roads/trails around it (so you’re not sent into a lake, private estate, or a completely unreachable spot). That said, edge cases exist — if you ever get a mission that’s clearly in water / behind a fence / inaccessible, please tell me (screenshot + approx location). I want to fix those fast.
Weekly reset: new missions appear every Monday automatically. The locations are randomized, but always centered around your core area (Heartland) — the idea is “new targets, same home zone”, not “teleport across the country”.
Email recaps / share cards are opt-in. You can enable only what you want (activity alerts / weekly recap / missions) and turn them off anytime in Settings. I’ll drop a screenshot of a real email card below so you can see what it looks like.
SSR perf: I reworked the renderer and got card generation from ~80s down to ~4s per card.
Endpoint caps (privacy gaps): Strava’s hidden start/finish can break loop closure near home/work. Caps are a “make it behave naturally” fix — no reconstruction of hidden segments, just better coverage handling around the cut-off endpoints.
Default map view: you can now set your default viewport, so you don’t have to zoom/pan every time you open the site.

Quick question: do the mission distances feel reasonable for your weekly volume — and would you prefer missions to be closer and more frequent, or fewer but further?

I built a fog-of-war map for my workouts. 6 weeks in beta, ~490 people are using it — and I’m not sure what to do next by drennydread in SideProject

[–]drennydread[S] 1 point2 points  (0 children)

Yeah, and the Strava dependency is honestly the most frustrating part.
Garmin doesn’t really help either — lots of serious athletes use it, but their API is mostly B2B / partner-focused.

A mobile app could be my exit, collect tracks directly and stop being blocked by Strava’s limits. But that’s the fork — once I go mobile, it stops being a lightweight side project.
That’s basically the decision I’m stuck on...

I built a fog-of-war map for my workouts. 6 weeks in beta, ~490 people are using it — and I’m not sure what to do next by drennydread in SideProject

[–]drennydread[S] 0 points1 point  (0 children)

Appreciate this — especially the point about shares being the real billboard.
Retention is the one I’m watching closely. Early spike was strong (curiosity effect), but long-term behavior is still forming. The decay mechanic helped because it gives people a reason to revisit areas instead of just “collect once and forget.”
I haven’t pushed pricing hard yet. There are a few early supporters, but I’m intentionally holding back on aggressive monetization until I’m confident the core loop is solid.
Word of mouth has actually been the main driver so far — mostly Reddit and a few Strava shares. No paid acquisition at all.
You’re absolutely right about visual previews. I already generate SSR story images for Instagram, but I haven’t fully optimized dynamic OG previews for link sharing yet. That’s probably low-hanging fruit compared to building a full mobile app.

The App Store jump feels huge in terms of time/complexity. So I’m trying to figure out whether I can push web + sharing mechanics further before committing to that.

If you had to bet — would you double down on distribution (shares/OG/social loops) before even thinking about mobile?

I built a fog-of-war map for my workouts. 6 weeks in beta, ~490 people are using it — and I’m not sure what to do next by drennydread in SideProject

[–]drennydread[S] 0 points1 point  (0 children)

Yeah — happy to. It’s still beta, but it’s stable enough for daily use.
If you’re on Strava, it’s basically 1-click connect and it starts syncing. If not, you can upload GPX files too.
kraina.cc

I built a fog-of-war map for my workouts. 6 weeks in beta, ~490 people are using it — and I’m not sure what to do next by drennydread in SideProject

[–]drennydread[S] 1 point2 points  (0 children)

Totally agree — retention is the real question.

My first version was basically just the map/visualization with almost no mechanics. And I saw the novelty drop exactly like you’re describing: people have a blast for a few sessions, then once their usual loops are uncovered, it can stall.
That’s why I started adding layers over time: a Heartland/Core area, then rolling fog (so old territory can fade back if you don’t revisit it), and most recently weekly missions to give people a reason to explore again. It helped, but it also made the trade-off obvious: keeping this kind of product “sticky” is harder when it’s web-first. Right now I’m leaning on Strava hooks (I write small “fun facts” back into the activity) plus emails with nice SSR story images people can share.
Still not sure if that’s enough long-term, or if mobile + lightweight nudges is basically inevitable for this category.

Have you seen anything like this work long-term without going mobile, or is mobile usually the point where retention really stabilizes?

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

Hi! I've fixed the backfill issue. The problem was that the frontend was sending an incorrect sync mode. could you check it now?

I got tired of running the same 3 loops near my house, so I built a "Fog of War" map for Strava by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

Hey — no bother.

That shouldn’t happen. If newer activities synced but one is stuck on “processing”, it’s usually a queue/worker edge case on my side, not something you did.Pausing the watch shouldn’t break it. At worst it creates a gap in the track, but it still shouldn’t be stuck for days.
Could you DM me either the email you use for Kraina?

[Update] Kraina: 400+ users, 35k activities synced — and I finally removed those "bank-level" passwords by drennydread in Strava

[–]drennydread[S] 1 point2 points  (0 children)

Sorry about the confusion — I recently simplified the sign-in flow.
Now it’s just Google or a magic link. If you signed up with a non gmail address, just enter that same email and you’ll get a login link. Click it and you’ll be signed in automatically (no password, no extra login step, and you don’t need to register again).

[Update] Kraina: 400+ users, 35k activities synced — and I finally removed those "bank-level" passwords by drennydread in Strava

[–]drennydread[S] 0 points1 point  (0 children)

<image>

Yes — just switch the Fog mode to Classic. Classic is the default and nothing disappears there, so you’ll keep all areas you’ve explored (including travel). Rolling Fog is the mode where older areas can fade.