From clocks to computers, these are the principles we follow when designing and evaluating humane interfaces. We're constantly working to make software follow them more and more. However, these principles are also hard to design for, and even harder to realize. We can't promise to make every piece of software on your computer work this way today, but we do promise to provide you with the most humane software we are capable of making.
The main thing you have to remember—and please remember this, because it could be vital to your sanity—is that any problems you have with an interface are not your fault. If you have trouble using your microwave, it's not because you're "not good with technology" — it's because the people in charge of designing the interface for that microwave didn't do their job right. User interface design is incredibly hard, and carries with it a great deal of responsibility; this is something that's taken quite seriously when it comes to life-critical systems such as flight control software. But in today's consumer culture, what should be blamed on bad interface design is instead blamed on the "incompetence" of users. Just remember that it's not your fault.
Some tasks—for instance, teaching a child arithmetic—are intrinsically pretty complicated. But some aren't. Setting the time on a wristwatch, for instance, shouldn't be that hard; on old analog wristwatches, it basically involved pulling out a knob, twisting it until the watch showed the correct time, and pushing the knob back in again. But on newer digital wristwatches—ones that claim to be more powerful and feature-loaded than their analog counterparts—it involves pressing a series of buttons in a hard-to-remember, often unforgiving order. Most people dread setting the time on their digital watches, and for good reason.
It's right and proper for complicated tasks to take time and expertise to accomplish. But something that is fundamentally simple—like changing the time on a wristwatch—should stay simple.
People love having choices, because having choices means having freedom. Well, we don't think this is necessarily a good thing when it comes to usability. We believe that when someone wants to do something on their computer, they want to spend their time doing it, not deciding how to do it. For instance, Microsoft Windows provides you with at least three different ways to launch applications and services on your computer: desktop icons, a quick-launch bar, and a Start Menu. Each one of these mechanisms is useful in one or two situations but horrible in others, and each has completely different instructions for operation. Microsoft even gives you a wealth of choices to configure them the way you want, which makes the situation that much more complex.
When we can, we try to avoid burdening our users with choices like this. We'd rather just take the time to make one simple mechanism that the user can use for all their purposes. The less burdened a user's mind is with irrelevant decisions, the more clear their mind is to accomplish what they need to get done.
It's that simple, really. When one ensures that a machine can't lose a user's work, interfaces become a lot simpler; no more dialog boxes asking questions like, "Are you sure you want to delete that entry?"; no more remembering to click a "Save" button like it's a nervous twitch. You never need to regret any action you take, because any action you take can instantly be undone. Not to mention your complete lack of terror when you're in the middle of working on your computer and the power goes out.
You can only really think about one thing at a time. If you're thinking about paying your taxes, you can't be thinking about your vacation in Tahiti. Indeed, thinking about that vacation in Tahiti will actively prevent you from thinking about your taxes. That's why when you want to get something done, you want to get everything out of your head except the task at hand.
Quite simply, you need to preserve your train of thought. And that means that the interface you're using can't derail it. No talking paper clips bothering you from the sidelines, no fiddling with windows to find your work, no distractions.
When you're first learning how to use even the best of interfaces, preserving your train of thought can be hard because so much of your mind is focused on how to use the interface, rather than on what you need to do. But as you become more proficient at using a good interface, it eventually becomes second nature—it becomes a habit, like walking or breathing. You don't need to think about what sequence of motions you need to perform an action because it's like your hands have memorized them as a single continuous gesture, saving you the trouble of having to think about them.
Bad interfaces, on the other hand, prevent habits from forming—or they can make you form bad habits. Have you ever closed a window and hit "Do Not Save", only to realize a split second too late that it was exactly what you didn't want to do? That's a bad habit developed from using a bad interface.
Good interfaces make forming good habits really easy, and they make forming bad habits nearly impossible.
There exists a mortal enemy to your habits and your train of thought: it's called a mode. If an interface has modes, then the same gesture that you've habituated performs completely different actions depending on which mode the system is in. For instance, take your Caps Lock key; have you ever accidentally pressed it unknowingly, only to find that everything you type LOOKS LIKE THIS?
When that happens, all that habituation you've built up about how to type on a keyboard gets subverted. It's like your computer has suddenly turned into a completely different interface with a different set of behaviors. That derails your train of thought, because you're suddenly confused about why your habits aren't producing what you expect them to.
When you think about it, almost everything that frustrates us about interfaces is due to a mode. That's why good interfaces have as few modes as possible.
Good interfaces aren't just effortless to use once you know them—they're also easy to learn to use. This doesn't necessarily mean that someone should be able to use it without any instruction—it just means that knowing how to use any feature of the interface involves learning and retaining as little information as possible. Keep it simple, and keep it consistent.
Jono graduated college at 17 with a degree in physics. His most interesting jobs before Humanized included giving planetarium shows, teaching English to junior high school kids in Japan, and developing toolkits for computational Grids at Argonne National Laboratory. Humanized was able to nab Jono just after he graduated with a MS in Computer Science from the University of Chicago in 2005. When not administrating our servers, toolsmithing, or programming, Jono can be found authoring comics, tinkering in his electronics lab, or working towards his second-dan in Aikido. He also runs the after-hours company D&D campaign.
Aza brings over six years of interface design and consulting experience to Humanized. He gave his first talk on interface design at his local San Francisco chapter of SIGCHI at the age of 10, got hooked, and has been speaking ever since. By the age of 17, he was talking and consulting internationally; at age 19, he was coauthoring a physics textbook because he was too young to buy alcohol; and at age 21, he started drinking alcohol and co-founded Humanized. Aza has also done Dark Matter research at both Tokyo University and the University of Chicago, from where he graduated with honors in math and physics. For recreation, he does Judo, speaks Japanese, and invents in his lab. He also enjoys playing the French Horn, which has taken him all over the world as a soloist. Be warned: Aza is an incorrigible punster, so please do not incorrige.
Web and Systems Architect
As a wee lad of six, Scott discovered his love for programming with the help of a Texas Instruments TI-99 computer. He soon created a bevy of inventive and pointless applications, such as an ASCII turtle that barked "Hello!" and password-protected input prompts that, when properly authenticated, greeted the user with their own "Hello!". Many years and electronic greetings later, he would graduate from college with a degree in Acoustics and embark upon his life-long career as a logic junkie. Scott has since spent his time rendering 3-D audio at Northwestern University, administering computer networks for public schools, creating mobile web applications, and avidly playing the guitar. He currently serves as Web Developer and Systems Administrator for Humanized and fills an invaluable role as our Official Waterer of Office Plants.
A life-long Midwesterner, Atul was raised in Columbus, Ohio, graduated from Kenyon College with a BA in mathematics in 2001, and received his MS in Computer Science from the University of Chicago in 2004. Atul's career experiences are rather varied; aside from a combined nine years worth of experience as a professional web developer, video game programmer, and usability consultant serving such high-profile clients as IBM Global Services and Samsung, Atul has also taught and tutored at public schools and literacy programs and worked for a variety of nonprofit organizations. He's also our lead programmer, and is currently proud to be a resident of Chicago, which he deems to be the best city in the world.
Atul also affects a wicked Indian accent.
Andrew was raised on a farm in southern Wisconsin and graduated with honors from the University of Chicago in both math and physics. He has previously worked on the detection of lung nodules at the University of Chicago Hospital and the origin of cosmic rays at the Whipple Observatory. While much of his extra-curricular time is spent at his church, he likes to pretend he can play piano, loves to sing, and enjoys learning languages (Attic Greek at present). Besides handling all financial matters at Humanized, he does programming and system architecture work. A member of a large family of bakers, chefs, and cooks, he is the unofficial company chef.
Please visit our Contact page to get in touch.