handle time calculations like we're programmers