Facebook is making logical conclusions by merging different data points. So cool.

This is a perfect example of how web applications should work: by gathering data from different places and making logical conclusions.

Fb

Last night I attended a friend's surprise party where I met a new friend. We became friends on Facebook during the party. Because we both RSVP'd to the Facebook invitation, Facebook was able to gather that we met at the party and became friends shortly afterwards as a result.

This is how all web applications should be: much more human-like and logical. Kudos to Facebook for building in this kind of logic.

Some computer tasks are still way too difficult

Dvdlab2
I just went through hell trying to copy two simple videos taken on an iPad to a burned/authored DVD. I didn't think this process would be so hard, but it took me about 2 hours from start to finish, mostly thanks to the fact that Apple no longer ships iDVD for Lion. So without wanting to spend money on any other software, here's the exciting path my afternoon took.

Oh and keep in mind that in the mid 2000's (through high school and some college), I ran a live video production company, so I had all the pro software needed to do the job right (Final Cut Pro, DVD Studio Pro, Premiere Pro, etc.). I bring this up just to say I know how to do this stuff, and it shouldn't be this hard for such a simple task.
  1. Copy video files from iPad to iPhoto on my MacBook Air
  2. Open iMovie, try to import videos from iPhoto. iPhoto wouldn't recognize them.
  3. Copy videos from iPhoto to desktop
  4. Re-open iMovie, add files to project
  5. iMovie imports video files, processing takes 10 minutes
  6. Try to figure out how to get multiple timelines set up in a single project
  7. Got lost in iMovie's mess of projects, timelines, folders (still don't know what they all mean)
  8. Go to export by choosing Export to iDVD, but iDVD is grayed out so I can't click
  9. After much Googling, I discover Apple doesn't provide a version of iDVD that works on OS X Lion
  10. Figured I would use Adobe CS5 on my iMac to burn a DVD instead
  11. Try to copy movie files to iMac. Can't click and drag. Have to set permissions on iMac.
  12. Set permissions, copied movie files to iMac
  13. Go to open Adobe Encore to burn DVD
  14. Discover Adobe doesn't make Mac version of Encore in CS5
  15. Go to copy video files from iMac to Win 7 PC, since I have CS5 on there, too, and assuming Adobe makes a CS5 version of Encore. But iMac can't connect to PC.
  16. Check PC firewall, still can't connect. Try connecting from the PC. Doesn't work. Go back to Mac. Try connecting to PC as server. Fails. Try a few more times from PC. Finally connects. Copy movie files from iMac to PC is successful.
  17. Discover Encore doesn't ship with Adobe CS5 for PC either. (I thought CS5 Master Collection meant you were getting all their production software, not everything but Encore. And Audition.)
  18. Rummage through old email to find what DVD authoring app I bought and used back in the mid 2000's. Find app (DVD-lab), download and install.
  19. Try to import movie files (in .mov) format, but application doesn't support them, since it's a semi-professional DVD authoring app.
  20. Open Adobe Media Encoder, drag files in, choose MPEG2-DVD format. Start encoding.
  21. Drag the exported m2v and wav files into DVD authoring software
  22. Create timelines, drag files to respective timelines
  23. Create simple menu that links to movie tracks
  24. Build DVD files
  25. Burn DVD

So there you have it. After 2 hours, 25 steps, and 3 computers, I finally got these two little videos from an iPad onto a DVD. All thanks to the fact that Apple is trying to kill the DVD format, and thus decided killing their iDVD authoring software would be a good idea. Thanks, Apple!

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.
Screen_shot_2011-11-18_at_11

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.

 

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:

Screen_shot_2011-11-10_at_12
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.