Why I hate relational timestamping in web apps

I hate relational timestamping. And I don't know if I just made the phrase or if there's a better term for it (maybe fuzzy timestamps), but I think we all know what I mean:

Posted 2 days ago, Posted 16 hours ago, Posted about 2 hours ago, etc.

There are several reasons I hate this format.

  • We use relational timestamps and real timestamps in tandem, requiring a mental "currency conversion" between posts. Example between two items: 3 days ago and Nov 10, 2011
  • It's not as precise as an real timestamp.
  • It takes the user longer to calculate the exact time of a post.
  • In some cases, it eliminates the ability altogether to find an exact timestamp, and that's an important use case that shouldn't be overlooked.

For example, I was reviewing some transactions in a system that uses relational timestamps. In order to figure out exactly what time "22 hours ago" was, I have to do several things:

  1. Look at the clock for the current time
  2. Figure out the quickest way to subtract the number of hours from a 24 hour day
  3. Add or subtract (depending on which is quickest) that number from the nearest day

That's a vastly complicated process for a user instead of just saying 6:45 PM.

Next, I wanted to figure out the frequency of transactions. So how do I figure out the difference between "3 days ago" and "10 Nov 2011"?

  1. First, I have to figure out today's date (probably by looking at a calendar): Nov 18
  2. Now I subtract 3 days from today: Nov 15
  3. Then I have to calculate the difference between Nov 15 and Nov 10: 5 days

That's three steps when an actual date would have eliminated this whole process.

The nay-sayers will say it doesn't require that much brainpower. I'd have to disagree. As a UX/UI guy, I'm always looking for the easiest, simplest solution for the user. I just don't find relational timestamps to be beneficial. They might come in handy for a developer who doesn't want to deal with timezones, but is it worth making a more complex user experience? I don't think so.

If we're going to continue using relational timestamps, we need to find a way to bridge the gap between relational timestamps and real timestamps. This will help reduce friction for users, and for a guy like me, creating a better user experience is the ultimate goal.

Are you kidding me, Verizon??

Cell phone carriers make it a pain to provision a short code because
they're worried that people will spam their customers. But I don't see
why they're too worried about that when they go and send unsolicited
messages like...

In Orange County, Verizon's 4G wins

I've been going through a variety of 4G cards in the past couple weeks, trying to find the absolute best device and service. I started with Verizon but had some trouble (turns out I had a defective Samsung device). The replacement worked okay, but I wanted to make sure I had the best. So despite getting 8mibs speeds both download AND upload, I switched to Sprint.

Well Sprint is a total joke. Not only is their 4G coverage terrible in my area (I only got 10% signal strength in a decently populated area in Tustin, CA), but it was horrible in L.A. I had dinner in Beverly Hills and the coverage there was underwhelming. My tethered Verizon iPhone had better service. And that's a bummer, because I was rooting for Sprint.

Less than 24 hours after acquiring the Sprint device, I replaced it with an AT&T hotspot. The coverage looks promising. However, I ran a speed test and got these results:

While these speeds might be good for 2008, I just ran a speed test in the same location on Verizon's 4G network with speeds of 8mibs down/up. That's a ridiculous disparity.

There are a couple other carriers like T-Mobile and Clear, but without even trying them, I doubt they'd do much better than AT&T, the 2nd place winner in my books.

So it looks like Verizon's 4G network is the best in Orange County. The coverage is acceptable and the speeds are just outstanding.