Updates on February 12, 2026 (Release 1416)

:waving_hand: It’s been a while since I’ve posted one of these

Improvements

  • Large rewrite of the City Sync process
    • No longer using Overpass, instead relying on local OSM data that’s updated daily
  • Changed LifeMap from being built on the fly witih each request to being fully rebuilt after each activity is saved
    • Significantly decreases load on database
    • Supporters are near instant (I’ve seen some delays up to 5 minutes), while the delay for non-Supporters usually starts off at ~30 minutes in the beginning of the day and grows to 5-6 hours by the evening
    • Block LifeMap updates for non-Supporters who have not logged in for 1 month
  • Rework how data is processed after a city sync
    • This is the most subtle/understated entry ever - I think I’ve spent the last four months on this
  • Created a new City Sync Report, available to Supporters
    • Moved the city sync results out of notifications, into a Sync Report
    • These reports are accessible from the menu on the city page
    • The email notifications are still sent, however they only include counts now
  • Replaced the user list page with the Leaderboard page
  • Changed Hard Mode to allow manually completing streets … rationale: Removing manual completion block from Hard Mode
  • Updated dark mode version of the map design, including a change to the LifeMap color in dark mode
  • Update Status page to display delays on syncing/processing/LifeMap
    • Changed the Status link in the footer to go to this page
    • This new Status page includes a link to an external Status page which tracks overall uptime - bookmark that separately if you want to track that
  • Convert the Year badge from individual badges per year to a single badge with levels
  • Added entries to the News listing
  • Stopped processing activities that are too fast (sub 2-minute mile)
  • Cleaned up Serbian regions & cities (and remembered to run the global map update :trophy: )
  • Finished another round of city additions from the Missing/broken city tracker
  • Minor improvements to Nodevember page (still needs more performance improvements)
  • Minor improvements to Challenge processing
  • Improved performance of city lists on profile pages
  • Updated the default theme here in the forum
  • Simplified Support & Ideas categories here in the forum
  • Swapped out the Garmin logo
  • Tried (it failed due to accuracy limitations) to speed up activity processing with geohashing
  • Various software updates

Fixes

  • Fix bug that accidentally gave some Prepay Supporters more months than they paid for
  • Addressed an odd oversite in my payment processor where they allow payments on canceled subscriptions but do not then restart the subscription
  • Caused and fixed an issue in jumping to specific pages
  • Caused and fixed an issue with people’s progress across hundreds of cities
  • Various fixes to LifeMap Poster creation
  • Fixed issue with Garmin’s unannounced “Historical Data” requirement during login
  • Fixed an issue with city syncing that was not removing certain nodes from streets (when an OSM Way was renamed to a street name that exists in the same city)
  • Minor fix for Node Hunter popup in dark mode
  • Other various fixes
17 Likes

The prior LifeMap setup was serving it live for every request. This placed incredibly heavy load on the database, because it was loading data every zoom/pan of the map. This caused a lot of contention with activity processing and post-city-sync processing.

I’ve experienced a number of inflection points as CityStrides has grown since 2013. I was able to do things when there were under 100 people that I couldn’t do with 1,000 … similarly, at about 10,000 and 50,000 there needed to be adjustments (I’ve gone through two versions of automated infrastructure scaling while working through these inflection points) … and I’m seeing that as it nears 100,000 there are new and interesting adjustments that need to be made.

These release notes are more of a current-state-of-things update. Right now the LifeMap takes a while to build, but if I can speed that up without destroying my budget then I definitely will. I think that’s true of anything in CityStrides - if I can improve it, I will (sometimes things take longer than I’d like, though).

5 Likes

Who cares if someone else uses manual comp in hard mode? each his /her own reality. It’s no contest

5 Likes

A post was split to a new topic: Custom activity color