in fact we should not activate if date is in the past.. so that's why I called it `_maybeActivateInTheFuture` (it only activates in the future if `Date.now() < timespan.start`)

so the logic would actually need to be:

```js
var now = Date.now();
var delay = this.timespan.start - now;
if (delay > 0) {
  this._activateInFuture(delay);
  return;
}

if (this.timespan.end - now <= 0) {
  // date is in the past and should not display the current time
  return;
}
```

which I think makes the `activate` method harder to read/understand.

the current logic (`_maybeActivateInTheFuture`) moves the complexity away from the `activate` method and uses less branching - it's also easier to test since we can stub the `timespan.containsNumeric` to toggle the behavior.