Posts of the Original variety

Newer
Older

Cognitive Shield

I really like the concept – especially its name – of the “cognitive shield” as described by Aza Raskin. The point is to block out information that might distract a user from their primary task, while still have it be available in case it is relevant to that task.

In the end, the affordance of the final implementation ended up getting in the way, but the concept was retained in a more understated form.

We’ve taken another tack this time at not breaking your train of thought by using default fonts and a Firefox-gray background. Instead of taking the over-the-top cognitive shield approach, we are trying to make the page “fit-in” to ameliorate a visually jarring experience. After a couple days of testing and feedback, it seems to work.

While I’m not willing to give up on the concept of abstracting secondary tasks / information in the bold way the original concept proposed, a sufficient cognitive shield will always be available in the form of a good visual hierarchy and adherence to the principals of information design.

Apr 3 2009

Little Red Riding Hood Via Graphics and Swedish Electronica

Tomas Nisson‘s superb retelling of Little Red Riding Hood, sans verbal expression. In case you want to purchase the hot jams in the States, this is your best bet. Update: or, you can just get it on iTunes.

Mar 27 2009

Destination Sites Are a Zero-sum Game

Recently, Cameron Marlow, helped publish some numbers regarding the nature of relationships on Facebook, finding that most people, while having upwards to a couple of hundred friends, only actively interact with about a dozen of them. This was consistent with other off-line studies that showed the people we actively correspond with and the people we are close with are quite finite in number — maybe even suggesting a limit in our capacity.

While the data crunching wasn’t meant to be empirical or conclusive, it did offer a look at a new class of relationships: the relationships we maintain passively, through products like the Facebook News Feed. The number of people in this relationship segment was significantly higher per individual. Whereas we communicated directly with about a dozen people, we passively maintained a relationship with about 30 people. Cameron describes this class of relationship management:

This consumption is still a form of relationship management as it feeds back into other forms of communication in the future. For instance, a high school friend uploads a photo of her new puppy and this photo appears in your News Feed. You click on the photo, browse through a host of other photos and discover that she has also gotten engaged, which may lead you to reach out to her.

I think there are meaningful parallels (baseless assumptions) one can draw between our capacity to maintain relationships and how we interact with websites.

Without my RSS reader, I oscillate between a handful of sites, outside of which, I struggle to find a new vector for my web surfing. There is the “core” group of sites that I visit very regularly with maybe a couple of dozen supporting sites where my visits are driven by a specific context (i.e. share a photo, read product reviews, post a link, etc.) or because I happen to remember about it. This list of core sites has not grown much in size, but members of that exclusive club are always changing.

A lot of consumer sites that are being created are done so under the pretense that they will be “destination sites” — a site a user will explicitly choose to visit for one reason or another. Assuming the number of our core sites remains relatively constant — achieving destination-site-mindshare is an uphill battle, since it means unseating an existent core site. Your value proposition needs to be that much greater. For that reason, most people visiting your site will be new and most of them will not come back.

I think this stresses the importance for your website to broadcast in some capacity and provide the means for people to maintain a passive relationship with your website, which in turn creates inroads for a more directed interaction down the line.

Addendum

For the fun of it, without the aid of my feeds, my current core sites for an information fix are:

What are your core sites?

Maybe even more interesting than trying to guess on the sites, if you use Safari 4, a screenshot of the Top Sites feature would probably be quite telling. (The Top Sites feature seems to support the idea that the list of sites we interact with most-often is rather finite.)

Mar 10 2009

Favorite CSS Framework Design Patterns

Over the last couple of years, a whole collection of mature CSS frameworks have emerged, with the ambition of making CSS development faster, the rendering more predictable and the code easier to maintain. I’ve recently wanted to revisit some methodologies I use when it comes to maintaining CSS across a product line, and what better place to research CSS best practices and abstractions than the frameworks used by thousands of other people.

Reset

Every single CSS framework out there that I’ve looked at ships with a reset stylesheet. I think even the most framework-averse CSS artisans can find value in reseting the browser defaults and have all the elements start off on equal footing, regardless of browser. There are a couple of options for this, you can go with the industrial reset.css, courtesy of YUI, or with the local, organic variety, via Eric Meyer.

Font Reset

Font-sizing is another area that is hard to do “right”. Ideally, you want your fonts to scale when the user changes their browser’s font-size setting. Doing so means using relative units, which means lots of added complexity (i.e. arithmetic), and even then, consistent results across browsers aren’t guaranteed.   There are a couple of schools of thoughts on text sizing, but I like to err on the side of Yahoo.  If anything, they’ve put their YUI framework through a testing gauntlet, so you can be confident that their methodology will produce good results.  You have to use percentages to set your font-size (easiest to reference their percentage → pixel translation table), but outside of that inconvenience, you get scalable font sizes virtually for free.

Neutering deprecated elements

I noticed Tripoli using this strategy. They take the likes of the <font> and the <center> tag and hinder their ability to affect the page style and layout. It’s a pretty interesting way to discourage their use and making bad habits a bit more toothless.

Setting good defaults for core elements

One of the most jarring things when you first switch to using a reset stylesheet is that writing simple, semantic markup no longer results in an intelligible document by default — all the headings, paragraphs and lists are the same size and so are the margins between the elements. You’ll feel like you’re doing a lot of extra work defining that which should be more implicit. Either way, if you’re far enough into a project, even if you didn’t use a reset stylesheet, you would probably have redefind those elements anyways , as the browser defaults aren’t good. Defining smart defaults on top of the reset stylesheet helps you save time redefining these basic elements, while establishing a more rigorous typographical system than the browser defaults could ever provide.

Concept of a template for basic layout

A lot of the frameworks use the concept of a template. You start off by marking-up your document with a pre-defined structure of common elements. For example, you’d add the header, navigation, content, primary-sidebar, secondary-sidebar and footer to your HTML.  Once these pieces are in place, you can liberally change the layout from fluid to fixed, as well as change the order  in which the sidebar and content elements display – all by adding one <div> around the common elements that specifies the template you’re using as a class.

css-template-graphic

Modular Components

There are many common interface patterns, but most don’t merit being included on every single page. Things like pagination and, arguably, form styles are great candidates for including individually on top of the core CSS framework. You would include these components only when you need them.  There are a lot of good thoughts in this presentation from Yahoo’s Nicole Sullivan on how to best abstract site components in terms of structural markup and CSS classes. Particularly, pay attention to the concepts of “extending” components by adding classes, as well as “separating the container from the content”.

Pseudo-namespacing

All re-usable CSS components should use class names with some standardized prefix. For example, instead of using “.block” you’d use “.ez-block” to define a generic class block. This helps identify the component as a piece of the framework and gives the developer working with the framework sufficient caution when over-riding those styles. This also helps minimize conflicts when including javascript and CSS modules that aren’t endemic to your CSS framework.

Bringing it all together

With all of this in mind, this is the list and order of all the CSS components that would be included to make up my ideal CSS workflow. 

Ideal CSS framework stack

Notable CSS Frameworks

Mar 4 2009

Predicting Performance

Maxymiser is a company that specializes in optimizing a website’s performance using multivariate testing. Like eye-tracking studies, and heatmaps, the results of multivariate testing are inherently captivating for they provide an empirical stamp on design decisions. Maxymiser releases the results of their testing as case studies (you need to enter your name and email to download them), but it’s even more interesting when you remove the conversion data and ask your site visitors to predict which design will perform better. A lot of people get it wrong.

In this shopping cart example, a lot of the variations have fundamental design problems, so my [unverified] prediction was dead on.

However, the latest gave me pause. I’ll let Harry Brignull set it up:

Which one of the designs below do you think got the highest number of clickthroughs to an item detail page? And which one do you think got the highest number of ‘call me back’ requests?

Best Cruises - Variation A

Best at Cruises - Variation A


Best Cruises - Variation B

Best at Cruises - Variation B

As an FYI, Google’s Website Optimizer helps you perform analogous tests on your site for free.

Feb 27 2009

Posts of the Original variety

Newer
Older