Friday, 9 November 2007
Applications or Actions 2: Duplicate my functionality?
So instead what we have are many applications all doing the same thing, but differently. Why? Why do we need 20 different media players on our systems? Because each one has functionality that we need, we like, or that does something peculiar we might need every so often.
Currently on the Mac I have a few media applications - system ones such as iTunes, DVD Player and Quicktime, then ones I installed like VLC, and Windows Media Player. What bugs me about this is that I effectively have 4 video players - when all I want to do is just play video.
VLC is great and is a much better replacement for me than Quicktime - it handles QT movies efficiently and is supposed to handle WMV effectively too, but it doesn't. That's where WMP comes in, but that's useless for me as it can only play 1 video at a time (no playlist queue), and it breaks one of the best parts of OS X as well - closing the video window quits the program. Which is silly - if I want a browser running but I have nothing to look up yet, I should be able to hide it until I do need it.
I'm going off topic here. OK, then next there is DVD Player which I can only use for DVDs. I think I prefer it's interface to the rest, but again, DVDs only.
4 applications, each doing different tasks, but each doing the same task overall. VLC is the only one that does playlist management, WMP the only one doing WMV files, DVD player playing only DVDs, and poor QT, shunned but I still need it on my system!
What I need is one interface that can manage playlists of video, can play DVDs and WMVs too, and has a nice UI that's clean and easy to use. I'm sure this is what other people would want too - although perhaps with a different featureset. This is where application fragments come in.
Having 4 applications to achieve the same end result doesn't seem to be the best way any more.
Wednesday, 7 November 2007
Applications or Actions?
For example, say I wanted to set up a new website about my cat. My workflow would usually be this:
- Find a picture in my iPhoto library.
- Open Photoshop to crop and resize. Then save for the web.
- Launch TextWrangler and churn out some nice semantic XHTML.
- Open Cyberduck and FTP my XHTML and JPG up to the web.
- Open Firefox just to check it all works.
- Use Mail to email everyone I know to tell them about my new site.
Whilst listening to some music from iTunes, of course.
For this simple task I need 6 applications, plus 1 background process. Each of these programs has features that I need for my project - but I am not using enough of each program to justify launching the full blown functionality of that application.
iTunes is a comprehensive music management application. I don't need the library functions whilst building my website - just stick an album into the playlist and off it goes. iPhoto has my entire photo library on hand, but all I need to see is the pictures of my cat. Photoshop has just about everything I'll ever need to enhance images, but all I need to do is a little cropping. TextWrangler has great functionality, but I'm just writing some bog standard XHTML.
I'm being spoiled with all the features that these applications give to me - but I don't need them.
My contention is, why do we need vast applications when most of the time we're only going to use 20% of their features? What would be more useful is application fragments.
A fragment could consist of a text editor, or a cropping tool, or a layering engine, or a character map, or a database. When I boot the machine, it would go into a mode where I could say:
"Hey Macintosh. Today, I'd love to put on some Radiohead - The Bends, I think. Can you find for me some pictures of my cat? I'd like to crop these pictures, then write a website for them. Then, I'd like to email all my friends to tell them about my new website. That'd be grand."
Using Spotlight, Macintosh could find The Bends out of my music library and spin it in the background. Then, it would find all of my pictures tagged with 'cat', and display them in a nice grid interface. I could double click on one and it would organise a cropping tool, with a nice resize mode. Once I was done there, it would launch a text editing mode with syntax highlighting so I could finish the XHTML quickly.
I would be using elements of all of these programs - syntax highlighting, web rendering, mailing, cropping, searching, playing media - but the experience would be seamless. The underlying technology would support the action I was doing - building a website - rather than flicking between applications.
There's hope for this kind of implementation yet - the iLife suite seamlessly manages media effortlessly. Making a movie, for example - iMovie can draw media from your photo/music databases without launching iTunes/iPhoto first. This is the kind of stuff I'd want to see.
Wednesday, 31 October 2007
Let them eat cake.
One of my pet peeves about some websites is that their articles spread over a number of pages - I know why this is, it's to break up the content into easily manageable chunks - like what is done with printed media. But folks, this is the web. I don't want to have to click 10 times just to read an article - that's 10 times I have to download the associated banners. Straightforward printing is also near impossible on these multipage articles - and 'print-friendly' pages are worthless when we have CSS to provide that functionality.
So why aren't these sites providing the content in one page and breaking it up using javascript? It's perfectly accessible, it's quick and printer-friendly pages are a thing of the past. It still amazes me that 3 years after the article was written, we have webmasters keen to spread content out over multiple pages - especially as broadband connections have become more ubiquitous.
Tuesday, 9 October 2007
Saturday, 6 October 2007
Wasteland Vista
Vista doesn’t seem concerned about balance, at least to someone acting as a
user. From what I can see, the specific visual form was designed to provide
appeal in showrooms and demos not in regular use. It’s a form for selling a
product, not for using it. This is design driven by marketing, about making the
sale, not the experience.
Wednesday, 3 October 2007
Reference Wallpaper

Monday, 1 October 2007
On progressive disclosure...
Progressive disclosure is a method of revealing the details of a feature on
an on-demand basis, so that the basic elements of the feature appear by default
while the less used or more advanced elements are hidden. These elements are
usually just a click or two away, so they remain readily available, but they’re
hidden by default to avoid interface clutter for the majority of users who do
not need them.
Robert speaks a lot of sense.
Ratings done right.

I really like this. Star ratings are good if you're in an application such as iTunes, where you're the only user. But on the web, 100 negative ratings could skew an otherwise flawlessly reviewed product.
So this slider gives a really good indication of where the ratings are (all good in that picture). It's how ratings should be done.
I also love Amazon's way of dealing with ratings, below:

Although, I am confused as to why they need to show me the same information twice (see if you can spot it). That's one of the downsides of Amazon - they give you so much information it can be overwhelming.
Thanks David. (via)
Sunday, 30 September 2007
Scrap unnecessary widgets.
I hate interface clutter. If it's not going to be used often, why put it there at all? You can instead use the space to show me something useful.
Moreover, if web applications are essentially duplicating functionality that is built into the browser, our users will expect to see them there. If you design a site with these widgets, your users will expect to see them on all of your sites. Consistency is a good thing.
Search widgets are useful. In fact, I'd even go as far as to say that search widgets are really, the only useful widget on your site. RSS doesn't count. Weather, stocks, currency - you don't need them everywhere. You just need them in one place. I go to XE.com for my currency converter. BBC for weather. I don't need hundreds of other sites telling me the same thing.
I love simple, easy to use, to the point interfaces. Don't confuse me with all these unnecessary things - or I'm gone.
(This is a response to 456 Berea Street's article)
Saturday, 29 September 2007
Don't treat me like an idiot.
In Designing the Obvious, Robert Hoekman JR points out that his trash can doesn't ask him whether or not he wants to put something into it. It's obvious, because slinging a ball of screwed up paper twelve feet across the office is a good sign that you want to dispose of it.
I can just imagine such a trash can designed by Microsoft, in that if any tiny scrap of paper so much as even graced the immediate space above the trash can, the can would suspend the rubbish in mid air, waiting for you to press something on a huge remote somewhere on your desk, just so that it could continue.
That's nonsense, you say. Well, try deleting anything on your Windows machine. The 'Are you sure?' message comes up. Well, am I? Yes, I am sure. That is why I clicked 'Delete'. I am not an idiot. Don't treat me like one.
Windows certainly likes to though. Unplug your Internet connection for a second - and you actually get a message telling you that it's unplugged. Well, thank you Captain Obvious. Plug in a new memory stick and it says 'New Hardware Found'. Obviously. Don't dumb me down, and don't treat me like an idiot.
It's surprisingly worse on the Internet. It's really nice to use such applications like Blogger and Gmail, because they scrap meaningless, modal dialog boxes. This post is being auto saved in case I am stupid enough to close the browser window, and the blog itself was easy to set up.
However, you do get applications that force a load of alert messages onto you because they have no way of preventing deletion otherwise. How about, actually, not deleting the item in the first place, so that I can undo deletion? Come on, this has been in desktop applications since the Stone Age.
This excerpt from ALA is a good example of what not to do in a web application:
In the game Guild Wars, for example, deleting a character requires first
clicking a “delete” button and then typing the name of the character as confirmation. Unfortunately, it doesn’t always work. In particular:
- It causes us to concentrate on the unhabitual-task at hand and not on whether we want to be throwing away our work. Thus, the impossible-to-ignore warning is little better than a normal warning: We end up losing our work either way. This (losing our work) is the worst software sin possible.
- It is remarkably annoying, and because it always requires our attention, it
necessarily distracts us from our work (which is the second worst software
sin).- It is always slower and more work-intensive than a standard warning. Thus, it commits the third worst sin—requiring more work from us than is necessary.
Software should have forgiveness built into it. I should be able to undo any action, so that I don't lose my work. I don't want software to get in the way of what I'm doing, and I especially don't want to get frustrated because the site's designer decided that I needed 15 minutes to complete the task, instead of 5.
It's not OK for our users to be mindlessly clicking on OK buttons. We need them to feel empowered, not annoyed. I need to know that I can trust the web with my flaws - and if I make errors, I need to know that I can undo them. And I will only be able to do this once modal dialog boxes are extinguished, and deletion is easily recoverable.
Software that doesn't annoy me is software that is quick. It won't complain when I've just deleted 70 items instead of 7. It will make me feel more productive. Surely this is not hard to accomplish. We should be making applications that halve the time it takes to do a task, not triple it.
