A List Apart

Menu
Issue № 357

Build usefulness and delight into your sites and applications. Get champagne user testing on a beer budget.

Beyond Usability Testing

by Devan Goldstein · 2 Comments

To be sure we're designing the right experience for the right audience, there's no substitute for research conducted with actual users. Like any research method, though, usability testing has its drawbacks. Most importantly, it isn't cheap. Fortunately, there are other usability research methods at our disposal. The standouts, expert review and heuristic evaluation, are easy to add to a design and development process almost regardless of budget or resource concerns. Explore these techniques, learn their advantages and disadvantages, and get the low-down on how to include them in your projects.

Product Management for the Web

by Kristofer Layon · 5 Comments

Whether we prototype, write, design, develop, or test as part of building the web, we're creating something hundreds, thousands, or maybe even millions of people will use. But how do we know that we're creating the right enhancements for the web, at the right time, and for the right customers? Because our client or boss asked us to? And how do they know? Enter product management for the web, bridging the gap between leadership and customers on one side, and the user experience, content strategy, design, and development team on the other. Learn to set priorities that gradually but steadily make your product (and the web) better.

More from A List Apart

Columnists

Matt Griffin on How We Work

Pricing the Web

If you plan to bill your clients, you need a method for putting a price on what you do. The variables are always money, time, and scope of work, but the way they relate to each other can bring different client motivations to the foreground and fit different agency needs.

From the Blog

Driving Phantom from Grunt

For this example, we're going to build a Grunt task that takes a screen shot of the pages we're building (similar to Wraith, but far less advanced). There are multiple parts to make this work, so let's break it down. First, we will write a PhantomJS script that renders each page. Second, we make a NodeJS function that calls this script. Finally, we make a GruntJS task that calls that Node function. Fun!