The Artima Developer Community
Sponsored Link

Python Buzz Forum
Administrative Debris

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Ryan Tomayko

Posts: 408
Nickname: rtomayko
Registered: Nov, 2004

Ryan Tomayko is an instance of a human being...
Administrative Debris Posted: Mar 14, 2008 7:23 PM
Reply to this message Reply

This post originated from an RSS feed registered with Python Buzz by Ryan Tomayko.
Original Post: Administrative Debris
Feed Title: Ryan Tomayko (weblog/python)
Feed URL: http://tomayko.com/feed/
Feed Description: Entries classified under Python.
Latest Python Buzz Posts
Latest Python Buzz Posts by Ryan Tomayko
Latest Posts From Ryan Tomayko (weblog/python)

Advertisement

Since watching Edward Tuft’s critique of the iPhone a few months ago, I’ve been enamored with his demonstration and description of “computer administrative debris”:

The idea is that the content is the interface, the information is the interface - not computer administrative debris.

The basic concept would seem easy enough to grasp and is something anyone reading this site will no doubt admire and understand. I nodded violently throughout the video, delighted to see such a clear explanation of what I thought I knew as a fundamental principle of simplicity in design. After thinking about it a bit more, though, I came to the realization that Tuft’s concept of “administrative debris” represents something entirely new for me; or, at least, it represents a severe sharpening of existing ideas that end up providing an entirely new level clarity.

A Ruthless Definition of Superfluous

Here’s a frame, somewhere near the middle of the video, where Tuft points out an example of administrative debris in the iPhone’s Safari web-browser. He explains that the strips running along the top and bottom of the screen are poorly done because they do not flow with the content, are cartoonish, and take up too much space.

Tuft points out iPhone admin debris

Let me be honest, if someone had asked for a critique of this same screen a few months ago, I almost certainly would have described it as “tight design”. The top and bottom strips seem quite reasonably sized to me, their appearance clean and non-intrusive. But Tuft is apparently measuring with a less forgiving instrument: anything that exists outside of the content, or that does not fit naturally with the information being presented, is either superfluous or ill considered and must be classified as a failure of design.

This way of considering simplicity in the design of interfaces is an order of magnitude more hardcore than any other I’ve witnessed. I’ve adopted it posthaste.

Implications for Hypertext and The Web

It struck me that Tuft’s description of “administrative debris” and its opposite, which I suppose might be called “proper interface/content integration” or an “information interface,” may finally explain my penchant for hypertext as a user interface medium for many types of information display. HTML, and the web’s basic architecture in general, is designed in such a way that demands that interface elements related to navigation and moving through content, two areas especially prone to admin debris in most applications, occur in a way that’s naturally suited to the content.

With hypertext, the information itself is the interface. The content takes center stage while the chrome and tool areas are placed in the back-seat. This inversion of priorities has created as big a leap in interface innovation as the first graphical user interfaces did to the terminal based applications before them.

And yet, these fine attributes of hypertext are regularly subverted. Since the web’s inception and subsequent boom, people have been trying to get around hypertext’s “limitations” as an interface medium: first with Java Applets and Active X™ controls, later with Flash sites, and today with Rich Internet Application (RIA) platforms. There was a time when sites were authored with the goal of preventing the vertical scroll-bar from ever appearing! The goal is always the same: invert the web’s superior content-oriented interface back to the GUI era and allow for the types of administrative debris so common and accepted in desktop applications.

(I suppose an exception to the generalizations above might be made for the more recent RIA technologies - they seem to be attempting to bring the superior design of the web to the desktop instead of bringing the flawed design of the desktop to the web, which just might work. I have my doubts about the current crop of platforms but the general trend seems positive.)

The Great Reduction

Needless to say, I’ve been experimenting with applying these concepts quite a bit recently, likely to the point of overdoing it, and have taken a sharpened axe to the various interfaces within my control. This site, for instance, was completely overhauled a few days ago. Many of the design decisions were based on the goal of reducing administrative debris, integrating various bits of workflow directly into the content as much as possible, and attempting to accentuate the strengths of HTML’s interface capabilities instead of perverting them.

Here is the site’s heading / navigational area before the redesign. Like most weblogs and just about every other kind of modern website, this was displayed on every page with little variation, and helped establish a common identity / theme between pages.

My site's navbar, one week ago.

As you can see, I’ve always rocked a minimalist design here and classifying this as “administrative debris” is probably stretching it a bit. Nevertheless, it feels “outside” of the essential information being presented and so I’ve decided to reduce it further and integrate the same functionality more naturally into the content.

Thus, the navbar under the new design:

My site's navbar, today.

Beautiful, isn’t it?

This, of course, leaves us with the task of integrating the functionality provided by the old navbar into the main content, somehow. I’ve moved the date and main index link into the title header of each article and moved the links to other areas into the title header of the main index:

New Header Navigation

There is now exactly one navigation element in the header area of each page and, although tiny, it blazes like the sun because it has no other navigation elements to contend with. The effect is actually much stronger than I had suspected.

“/admin” Considered Harmful

Another area ripe with administrative debris, unsurprisingly, is the “admin pages” or “settings pages” of the various sites I operate. In many cases, I’ve convinced myself that a separate admin area or settings page ought not exist at all and that the functionality provided could be integrated more naturally with the site’s primary content. This typically requires using in-place editing techniques, popularized by sites like Flickr and del.icio.us, combined with conditional page generation based on authorization / user roles.

I’ve experimented with removing admin areas on this site and in a few places at work (there is a lot of admin debris at work). I’m typically surprised at the usability gains, especially since they’ve come with very few unexpected or adverse consequences.

My first experiment was very simple: comment moderation. I can edit, delete, or mark as spam all comments anywhere, either in-place on an article or on the recent discussion page. This is probably a basic feature most mainstream weblog packages provide at this point. If not, they ought to.

Next, I decided to take on posting and editing articles. I see basically the same page for weblog posts and articles as non-authenticated people (like you) except mine has a tiny “Revise” link positioned directly above the article title (see Viewing a Post below). When I activate the “Revise” link (by click or via access key “R”), the page flips to the editing interface.

Viewing a Post

Post w/ Revise Button original size

Editing a Post

Posting Interface original size


Administrative debris has been reduced using two different techniques:

  1. The editing interface is directly and immediately accessible via the main content display instead of through a separate “administrative area”.

  2. The look and feel of the content is integrated into the editing elements (with the exception of the body text, which must be rendered in fixed-width type while editing). Notice that the text input for the post title is apparent due to its appearance and not due to an explicit label.

I’ve picked up a few tricks for applying the second technique that are worth mentioning. Here’s a snippet of HTML from the editing page:


  
  ...

This is identical to the markup structure used in the view page - the only difference being that the editing page has s, s, and other form controls where the view page has the content alone. This lets us automatically apply the styling of the view page to the editing controls with only a small bit of CSS:

#draft input[type=text], #draft textarea
{
    font-size:inherit;
    text-align:inherit;
    font-family:inherit;
    color:inherit;
    width:100%;
    border:1px dotted #ddd;
}

Using the attribute value inherit causes the s and s to take on the visual appearance of their containing element. A nifty little trick that works surprisingly well in all modern browsers I’ve tested (Firefox 2.0/3.0b4, Safari 3.0.4, and Opera 9.26).

The benefit of this approach is that any changes we make to the main content’s presentation through CSS will now apply to the editing interface automatically, assuming we do not alter the structure and semantics of the markup.

Stating the Obvious

It has occurred to me (multiple times) that these ideas might be too simple and obvious to even bother putting down. It seems that the line between what is and what is not administrative debris exists at one of the subtlest levels of design. As such, many of these arguments have a distinct feel of splitting hairs about them. But I’m convinced that, while each individual tweak may be subtle, reducing administrative debris consistently and properly integrating functionality with content can have an enormous impact on the overall usability of an application interface.

Read: Administrative Debris

Topic: Tracing function calls using Python decorators Previous Topic   Next Topic Topic: Approaching Python 3000: string formatting

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use