user experience

Let’s Build a Grid

design principles

Let’s Build a Grid

Khoi Vinh, the design director for the New York Times, explains how essential grids are to web design in his SXSW presentation with Mark Boulton, Grids Are Good (Right?). So much web design work relies on establishing a grid and the constraints on that grid: ad sizes, display size, browser

By Jeff Atwood ·
Comments

usability

Reducing User Interface Friction

Tantek Çelik recently wrote a great entry on cognitive load in user interface, comparing instant messaging and email: To instant message (IM) someone, you merely: 1. switch to your IM client 2. double click their name 3. type your message 4. press return To email someone, you have to: 1.

By Jeff Atwood ·
Comments
Designing Interactions at IDEO

design

Designing Interactions at IDEO

Recently, Joseph Cooney and a coworker both recommended the book Designing Interactions to me at the same time. A strange confluence of events that’s got to be some sort of sign. I immediately ordered the book. And I’m so glad I did. It’s a wonderful, beautiful book

By Jeff Atwood ·
Comments
Zoomable Interfaces

user experience

Zoomable Interfaces

Asa Raskin, the son of the late Jef Raskin, recently gave a presentation at Google on the work his company, Humanized, is doing. It’s largely a continuation of the work of his father. One of the most interesting aspects of Jef’s work was zoomable user interfaces. Asa’s

By Jeff Atwood ·
Comments
Basic Design Principles for Software Developers

programming languages

Basic Design Principles for Software Developers

In my previous post, I urged developers to learn a mainstream graphics editing program. This is purely a mechanical skill, so it seemed reasonable for developers to give it a shot. If we can absorb extremely complex development environments, compilers, and databases, why not a graphics editor? But as a

By Jeff Atwood ·
Comments
Programming Tip: Learn a Graphics Editor

programming languages

Programming Tip: Learn a Graphics Editor

One lesson I took from MIX is that software development and graphic design are increasingly interrelated disciplines. Although they are very different skillsets, its important for developers to have some rudimentary design skills, and vice-versa. There’s a lot of useful cross-pollination going on between developers and designers. You can’

By Jeff Atwood ·
Comments
How Not To Write a Technical Book

software development

How Not To Write a Technical Book

If I told you to choose between two technical books, one by renowned Windows author Charles Petzold, and another by some guy you’ve probably never heard of, which one would you pick? That’s what I thought too. Until I sat down to read both of them. Take a

By Jeff Atwood ·
Comments
Usability Is Timeless

usability

Usability Is Timeless

Jakob Nielsen’s new book, Prioritizing Web Usability, is a worthy companion to the previous two. Now it’s a trilogy: 1. Designing Web Usability: The Practice of Simplicity (2000) 2. Homepage Usability: 50 Websites Deconstructed (2002) 3. Prioritizing Web Usability (2006) You can tell Jakob and his co-authors are

By Jeff Atwood ·
Comments
EA’s Software Artists

software development

EA’s Software Artists

Electronic Arts is a lumbering corporate megalith today, pumping out yearly game franchise after yearly game franchise. It’s easy to forget that EA was present at the very beginning of the computer game industry, innovating and blazing a trail for everyone to follow. Gamasutra’s article We See Farther:

By Jeff Atwood ·
Comments
Learning on the Battlefield

programming languages

Learning on the Battlefield

I occasionally get emails from people asking how to prepare for a career in software development. Some are students wondering what classes they should take; others have been bitten by the programming bug and are considering their next steps. I always answer with the same advice. There’s no substitute

By Jeff Atwood ·
Comments
Going Commando – Put Down The Mouse

keyboard shortcuts

Going Commando – Put Down The Mouse

One of the quickest ways to increase your productivity on the computer is to go commando: stop using the mouse. When you stop relying on the mouse for everything, you’re forced to learn the keyboard shortcuts. Jeremy Miller calls this the first step to coding faster. I agree. Keyboard

By Jeff Atwood ·
Comments
Creating User Friendly 404 Pages

user experience

Creating User Friendly 404 Pages

We understand what 404 means: Page Not Found. But the average internet user has no idea what 404 means or what to do about it. To them, it’s yet another unintelligible error message from the computer. Most 404 pages are unvarnished geek-speak. Consider the default 404 page under IIS:

By Jeff Atwood ·
Comments