I had a chance to sit down with two developers from plasq and talk Mac, interface design, and development. Enjoy this interview with Cris Pearson and Keith Lang.
TAB: Thanks for taking the time for this interview. Where are you guys based and what are your roles at plasq?
Cris: We are both in Melbourne, Australia. plasq is a virtual office company with 7 plasqers in total, spread around the globe. We all work from home and collaborate using tools such as a Wiki, Skype (for text chat, not voice usually), TRAC for bug and task tracking, and an upcoming collaboration tool that has been on the drawing board for over 3 years (before plasq!). My roles are User Interface and Interaction Design, Graphic Design, Web Design and CEO.
Keith: I do User Interface and Interaction Design, and Wordsmithing.
TAB: Many applications these days push the boundaries on their version 1.0. When it comes along to brainstorming ideas for version 1.5, 2.0, 3.0, and down the line, the ideas come slower. Lots of developers push out new features that are not up to par or completely useless simply because they have to. What steps do you take to ensure this from not happening on your development?
Cris: When you say useless… the developers are unlikely to be thinking to add this feature for no reason, but very likely, once they have released, get all sorts of suggestions from their users as to what they think is ‘a killer feature that would make the app so much more popular’. Usually, that isn’t the case :) As a developer, you need to be very tough on what you add. With that said, you do need to be mindful of what users need. Ask more questions about why they want the feature and get an example of how they would use the feature. With this information, you should be able to implement what they actually need, not just what they want. Communicate with them, and make sure you really are fulfilling their need though :)
Keith: I think the focus for many apps is the race to become über-apps. Imagine a world where developers said – lets work on making our X app connect better to Y app – and lets build Z app with the new functionality, which then requires X and Y to interact better. And, let’s base it on open standards.
Cris: Agreed on the application connectivity. Brent Simmons of NetNewsWire fame did a great job with his Feed reader > blog editor app communication interface, and the linkback project is another good example of this. Would love to see more of this.
TAB: You take a look at some of today’s best applications, and they just look visually stunning. It’s often that they are devoid of the clutter and confusion many apps succumb to. What advice and tips can you give for keeping things simple?
Cris: Learn to say no. If you are a programmer and struggle in this area, get the help of a Interface designer and a graphic designer (or someone who can do both if you can). Think of interface design as part of the whole development process, not something you do at the end to make it look pretty.
Keith: It’s easier to add – harder to take away. So keep things simple. Also, give the application a sense of flow – an obvious place for new users to start.
TAB: As a developer I have trouble when I come up with a great and really cool idea, but I just can’t figure out how to get the user to find out it’s there and use it. On your product development, how do you choose what your front-runner features are, and how do you let your users know about them?
Keith: I personally am working towards thinking of an application like a landscape. Every feature is something that you can see, or at least see some ‘shadow of’ or blip on the horizon. So if you are looking for something, you can follow the bread-crumb-trail from the very beginning. I think a good way of doing this is looking at the default screen and saying “OK, I am wanting to use functiality X – so where is there a hint of that?” And the breadcrumbs dont just have to be at every mouse click – they can also be on mouseover. For example, if you mouseover the safari bookmark bar, you see that the words turn into a more ‘clickable’ looking object. So this is one way that designers reward the journey with a little interaction breadcrumb, and ecourage you to keep going. We do that in Comic Life, for example with the speech balloons which you can drag off. These balloons are not buttons – so we need to make that clear. When you mouseover them, they appear to ‘rise’ by use of a drop-shadow. This tells the user a) this is something you can interact with b) this is not a button, but an object to be dragged.
The process of working out ‘front-runner’ features are interactive too – you need to get the app out and see what people use. Then apply ‘The Pareto principle’ (aka, the 80/20 rule) to that, and make the 80% of features so very easy to use.
In terms of interface design, something which is interesting to keep in mind is modes. And no, I’m not talking about the usual software modality problem here – but human modes. I used to work at a CD store, which had a large DVD section upstairs. However, despite the gigantic flashing neon sign saying “Dance Music upstairs”, many people would ask where the dance music was. The problem was, people weren’t looking for information on Dance music CDs, there were looking for the CDs themselves. So we put around some ‘dummy’ displays – it looks like a bunch of dance music CDs, but you get there and really it’s just saying ‘go upstairs’ to find them.
Cris: Exposing features to the front of the interface is a fine balancing act indeed. If you hide features away, less savvy users won’t find it as they tend not to search far past what they see on the screen. Then on the other hand, if you put everything on the interface, you will overload the user and scare them. It is hard – but a good rule is to determine what most users will want to do, most of the time (80/20 rule), and focus on those features.
TAB: Previously, Cris told me an interesting concept. Developers and designers don’t use enough text in layouts and applications. Can you expand on this and tell why?
Cris: Icons are more open to interpretation than words. A combination of both an icon and text is the best bet, at this time.
Keith: Language, as text, is powerful. Humans are resourceful – if the lights go out – they will feel their way around. There’s only so much bandwidth a visual icon can have.
TAB: There are basically two markets on the Mac: The geeks and the newbies (new users). How do you balance your applications both in function and UI to appeal to both markets? Or do you simply target one?
Keith: Good question. (Actually all your questions are good ones!). I had an experience where a user commented on the clean ‘professional interface’ of an app we are working on, and another user commented on the clean ‘simple interface’ – which happened to be the same interface! But then, there are times when you need to offer different models. Initial release of an application needs to be focussed — then iterate, carefully.
Cris: Here is a recent theory of mine — Note ‘theory’ :)
I’d add a 3rd market: Professionals. People who are proficient, but not geeking on their Mac cause. Eg, they know Finder and Photoshop like the back of the hand, but never look outside of that. ‘Markets’ are always fuzzy of course, they blend. There are kinda’ 3 app types as well. Let’s go with layout-style apps: Highly targeted (Comic Life), What most people need (OmniGraffle) and All-the-features-in-the-world (Illustrator). The users for these apps cross over also — eg, a pro can use Comic Life to create a how-to guide super fast, and Omni Graffle to create a flow chart faster than Illustrator, even though they know Illustrator extremely well. It is very hard, if not impossible to make an app that will work in all scenarios yet retaining an interface that anyone can use.
TAB: Over the years OS X has constantly revised it’s UI elements. Sheets, drawers, panes, tabs, etc. What are some of the ones you like and hate and why?
Cris: I dislike drawers — their concept is sound, put lesser used functions in there to reduce interface clutter. Problem is, it is then very hidden, and when you do want something in there, sliding it out is a pain. Then sometimes people use it for functions that are needed all the time, like Panther’s Mail.app for instance. You always needed your mail folders, but they where in a drawer, so it was always open anyway, and it then looked and felt tacked on and could get hidden sometimes as well. Skype does this also, putting chats in a drawer – its a great tabbed like interface, but again, feels tacked on for something that should always be there.
Since the early OS X versions to now, the interface elements have all smoothed out a lot. It was too busy in the first few versions. I’m happy how the aqua look evolved.
Keith: I dislike drawers also because they feel clunky. Instead, we could explore how to make tools work with more contextual sensitivity, and allow the finding of tools not just spatially, but with language and other approaches. If you had a circle, the application could show you which tools will work on on that shape – with a few select words describing what you want to do.
TAB: Ok, quick question. What theme do you like most? Brushed metal, aqua, unified (Mail), or iTunes?
Cris: Unified. I use Uno to make all apps look like Mail (unified). (Though I find in some parts, it’s too flat – I didn’t like the stripes in early OS X versions, but since Tiger, they are pale enough to add just a enough variation to stop it looking too flat and boring) The dark Uno variation is nice, but the bevelling on words looks too harsh.
Keith: I personally like having apps that look different in some ways – so if everything had the same edge, it would confuse me.
Cris: Yea, this is a good point Keith. If too many apps start looking like a mail app (side bar at left with blue background, toolbar, white space on right) it can be hard to pick out your app from Exposé. This is a tough issue and I have no ideas on it other than don’t follow trends for the sake of trends. Let what your application does dictate how it looks.
Keith: like Porche’s ‘Form-Follows-Function’ ethos.
TAB: Let’s look back. It seems like we have had a mouse and keyboard, since, well, since the first Macintosh. What do you think the lack of innovative input devices has caused on UI design and the progression of the Macintosh OS?
Cris: Since 1968 – ‘The Demo’, in fact, and perhaps earlier? but yeah, The Mac popularized it. Humans have 2 hands, but when doing most interaction of a Computer (apart from typing) you are just using the mouse 90% of the time or more, with the occasional keystroke. First person gaming is a corollary to this – people using the mouse for fine grains aiming/looking/direction in one hand, and W,A,S & D for movement. This 2 handed interaction is very efficient for shooters. 2 handed interaction for anything else is stagnant for most computer users. Add to this, the other senses that could be used but aren’t, we really are stuck in 1984 (Introduction of the Mac). I highly recommend people to watch the demo… some things they do in there still haven’t been done as well as that. They even show 2 handed interfaces there — though perhaps not the best implementation, it shows promise.
(If you want an in-depth write up on Keith’s thoughts, he blogged about this topic. Very interesting!)
TAB: Apple presented some new technologies at WWDC recently. What are you thoughts and opinions on what was shown off?
Keith: I think Apple is holding some major cards to their chest. The new Time Machine technologies look really good – and will be a boon for new users and pros alike. iChat sildeshows seems wonderful. Core animation should prove to be astounding too. I wish Apple were a little less brash about the whole thing. System wide notes and to-dos are great.
Cris: I will enjoy playing with Core Animation and seeing what other developers do with it. Subtle and/or fast movement and animations in interfaces can be very effective to show what is happening to remove the magic “huh? what hapened then?”, but they aren’t used very often. Most likely because the time to code something like this is long compared to what a developer thinks is worthwhile.
TAB: Possibly the most interesting feature we’ve seen is Time Machine. What’s your view on the UI design of Time Machine and how effective do you think it will be?
Cris: The interface is a great visual cue to what is happening, instead of simply having a list view. Lets hope they slicken the background a bit though – that looked a bit tacky, but that’s just ascetic, the function and animation is great.
Keith: To be honest, I’d need to play with it to get a sense of it. I think the animation (although a little cheesy) is actually very accurately portraying to the user something which is quite complex.
TAB: Hey thanks a lot guys. Have fun working on new plasq stuff :)
Cris: Thanks Dustin. Great questions! It is an exciting time to be a developer. I love seeing and being involved in how computers and the internet are maturing and fitting into so many facets of life — and it’s not just for the geekier crowds anymore.
TAB would like to thank both Cris and Keith for sharing their insights on UI design. If you want to read more by these guys check out Cris’s blog and Keith’s blog. Also, don’t forget to check out plasq and all of their great products.