IxDs on PIDs

by October 3, 2004

Interface Designer, Eugene Chen recently pointed me to a discussion on the Interaction Designers (IxD) list about my Personal Interface Definition (PID) concept. Opinions on the necessity and theasability of PIDs differed on two key issues: The value of interface personalization and the likelihood that software vendors would utilize PIDs.

Interface Personalization

The problem as I see it is that personal preference is a huge part of usability. Our individuality is much greater than our ability to generalize amongst ourselves especially around something as psychological as cognitive behavior. If not through a PID how else can we deal with this problem? Some might suggest that through science we can find the right generalization and create a monotonous system, but I disagree with that notion. The mind is just too unique in this regard. –David Heller

Customization is the only way that users can, in an intelligent way, put chinks in the cracks that the designer left between their designs and users' idiosyncratic ways of doing things. Not inappropriately, Jens Rasmussen (the Danish pioneer of cognitive engineering) calls this "finishing the design." –Gerard Torenvliet

Most interface design does not take advantage of what we know to be universal in terms of cognitive behavior. Personal preference is small compared to what is uniform when you are creating interfaces. Habit formation is universal. And people do simultaneous tasks through habituating all but one of them. Thus it is culturally independent (and even somewhat species independent!) to take advantage of this trait and to design so that habits that cause errors will not form. That's the kind of cultural-, economic-, and linguistic- independent psychological fact I am talking about. Do not confuse that with those traits that are culturally dependent.

What I am saying, without fear of contradiction because it is readily demonstrated, is that most interfaces (and all GUIs) do not properly take into account such universal traits. If you do not accommodate these universal traits, then you are guaranteed a worse interface than if you had. We have no choice about habituation or the kinds of designs that work correctly with it. It is built into our nervous systems. –Jef Raskin

Software Vendor Acceptance

It was suggested that software vendors wouldn't be able to compete if there were PIDs. But that is like saying that vendors of Linux can't compete because there are so many add-ons through the open source movement. The vendors have their own add-ons that they promote, but other people might just specialize in creating, selling and supporting their own PIDs. The word "personal" I think is a tad confusing, because who in their right mind is going to personally create their very own interface for applications. No one wants to do that, so just as today there are free and for-pay "skins" of many different types of applications, people both professionally and out of hobby will create PIDs of their own and share them. You also have to remember that there are still patents that protect specific interface behaviors (for good or for bad) so the big boys with lots of legal and R&D money can protect their intellectual property as they do from each other today. –David Heller

For many software companies, the interface is the differentiator - even if they don't market it that way. The interface is 80% of the code of a typical app (or so I hear). Photoshop and Fireworks both create jpeg's; their market differentiator is the interface between user and jpeg.

What's more, in the best apps, that 80% of interface is tightly integrated with the 20% of purely back-end stuff, so that the end product is hoped to be more than the sum of its parts. The 20% of back-end doesn't generally leave enough design degrees of freedom open to design just any old interface around it. –Gerard Torenvliet


This is quite similar to what I recommended for a recent client in The Netherlands, V2.nl. Our general conclusion at V2 was that with such customization and modulization of the technical components (CSS, RSS, XML, etc) it will be inevitable to individuals to enable their own skinning sooner or later. I like the term PID, I think it works for me and applies all three of the needed requirements: Creative, Technical and Individual. -CD Evans

The Eclipse Rich Client Platform is providing exactly this type of framework. Major vendors (IBM, Motorola, Nokia) as well as groups such as Apache are participating in developing new applications within Eclipse, as well as evolving the platform itself. This year, Eclipse 3.0 was released, and with this release, the Eclipse Rich Client Platform was introduced. This is pluggable architecture allows for the deployment of stand-alone applications using Eclipse.

Why would you try to do such a thing? Eclipse is built in SWT, so it is fully platform independent; plugins, the most atomic deployable unit in Eclipse, are written in Java; plugins can be linked using an XML manifest to create larger tools or applications; Eclipse supports the sharing of a large amount of contextual information between plugins, so plugins can be relatively freely stitched together into new configurations.

The Eclipse notion of "Views" and "Perspectives" allows users to assemble "Workbenches" that fit the needs of their particular process. This is really important for users that deal with complex business processes that constitute multiple sources of data, types of data, and integration with remote or hosted systems. In cases such as this, interface personalization can be a boon to productivity. An example might be a securities analyst using a messaging client, a client to perform trades, a business intelligence system, and a news feed in one UI composed of integrated components arranged in the fashion best suited to her needs.

The Eclipse platform is a perfect candidate for the development of PIDs.-Clay Newton