The long version: I struggle to learn history because I have a tendency to gloss over details, and I often fail to connect the dots in order to grasp the broader context. The blunt version: despite my interest in learning history, I suck at it.
So I asked myself, "What would it take to make the learning curve less daunting? What's missing?" I thought of several things that were missing, first and foremost being the visualization of progression over time.
Yes, "ribbon" is an overloaded term and isn't really an accurate description of what it is... but it's the term I used early in development so let's just roll with it.
Anyway, the ribbon is the key to the whole thing. There's no shortage of static maps online, and that's all great. But they come in every imaginable shape, size, and theme, and generally offer no way to "mash up" the data for a consistent narrative. Even more rare is the ability to "step through" time to see how that map evolves.
As (bad) luck would have it, the critical feature of Yonder is also the one that gave me heartburn. A lot of it. I knew it had to be draggable and smoothly animated in any situation, but I also wanted variable scopes (year vs. year/month vs. year/month/day) and multiple means of navigation. I made a lot of progress on all those fronts, but the one limitation it still has (maybe): scale.
Originally I'd implemented buffering in the ribbon, i.e. shifting/appending segments as you hit thresholds on either end to avoid clogging the DOM with too many elements. Long story short, such manipulation of the DOM doesn't sit well with animations/dragging-in-progress. I found no way to gracefully eliminate an occasional hiccup/stuttering effect across browsers.
The good news is that I needed a reality check anyway. The original Yonder map was too ambitious, attempting to tackle the world since the dawn of recorded history. Once I narrowed the pilot to American History and stopped obsessing over buffering, the weight lifted from my shoulders and momentum soared.
Tech-savvy users might mess with the ribbon and assume it's a prepackaged jQuery UI control of some sort, and that's if they give it a second thought at all. I'm OK with this... it's functional and flexible and it's finally (mostly) behind me!