Archive for the 'Interface Design' Category

User Interfaces, Having a Job, and SVN Delete *

Last Friday I officially became a real employee for SurveyGizmo. I spent two weeks testing the Gizmo waters while they spent two weeks testing the Jase waters. Verdict: we like each other… so much so that they want to pay me regularly for giving them some styles and some code and a bunch of pixels, regularly. Sweet.

Now, part of my job involves religious interaction with SVN via the terminal or shell. Translation: command line interface… just monospaced text with no (gasp!) buttons, images, or pretty pictures. I’m not new to terminal life, but I’m not a pro at it either. I’m not afraid of it. Um, at least I wasn’t until Monday which coincidently was my first real day on the job.

In my defense, I’d just like to point out that even a text-only interaction has an interface: the commands that need to be typed. For instance, in SVN, when you are ready to save your work, part of the process may include adding new files to the repository that did not exist in the previous version of the file set, like a new image or style sheet, or a new template file. So to add new files, you use the ‘add’ command which finds new files and preps the forthcoming commit command to include the newly added files. And if there are a handful of new files, you can use the * shortcut which essentially means ‘all’. So the command: svn add * would trigger SVN to add all the new files to the revision queue.

One would think the ‘delete’ aspect of the SVN user interface would work as the counter-part to the ‘add’ interface action. It does not.

So on my first real-non-contracting-trial-day, as one of the first things in the morning, I ran this command: svn delete * in an attempt to get some deprecated files to stop showing back up every time I did an update sync with the repository, thinking this would notice that the files I’ve deleted are missing and prep the revision state to not contain those. You see, I’d delete the un-needed files via FTP but they would pop back in from SVN because I did not remove them from the version controller.

I managed to wipe out my entire set of working files, as well as a slew of other files that were in the directory where the SVN command was issued, in about 1.5 seconds. Then I spent the next hour or so with my office-mate trying to get them back by restoring previous revisions from SVN, but for whatever reason, I got stuck in this weird loop that would bring some files back, but not all. So I had to beg our sys-admin to intervene, which he did rather speedily, in between LOLs and questions like, “How far into typing d-e-l-e-t-e did you get before thinking this might not be a good idea?”

To which I replied, “It never occurred to me that this would happen. SVN’s user interface is broken! Why is ‘delete’ not the reciprocal of ‘add’?!”

“Yeah, delete is not the mirror opposite of add.” Pure genius.

“See? Busted interface.” I snapped back. Then he just laughed at me some more.

Interface Deconstruction: Vimeo’s Interior Help & Search Utility

Dear Vimeo, fix your awesome search assistant. In a world where YouTube is the Kleenex/Xerox/Google brand of online video services, alternate sites like Vimeo have a ways to go to gain that “household name” status. In other words:

“I need a Kleenex” as she reaches for the generic store brand box of tissues. Or, “Remind me to Google that later” when we want to search for something.

Drop your clutter

Just because a company is the first to offer a certain product, or is the biggest, or the most funded doesn’t mean it is the best. In the realm of UI design, Vimeo can teach YouTube, along with the rest of us, a few things. For instance, Vimeo’s visual simplicity is stunning. Their help/search bar which loads on interior video post pages is pretty slick and instantly makes sense:

Vimeo's help assistant as triggered by a simple mouse over

Vimeo's help assistant as triggered by a simple mouse over

Vimeo's search assistant as triggered by a simple mouse over

Vimeo's search assistant as triggered by a simple mouse over

Out-think your users

If you can think about it before they need to, they’ll love you and come back. When I showed this to my boss, he responded with, “Oh yes that’s nice, I think it might even been cooler if you could check off the areas you wanted results for and then return them all, instead of having to do that same search in [each category].”

Agreed. Perhaps Vimeo’s forum data is isolated from it’s channel data, which is in a separate database from its people data which would make the multi-source search query far too taxing on the server. If so, then (like many of the internet’s fledgling services) integrating systems should be a priority for any online service-based app. Easier said than done, but makes getting things done easier.