For several years, I did usability testing on CAD-style software that was full of legacy code, some of which preceded Windows 98.
Some of that legacy code dealt with CAD objects that displayed on screen. To work with these objects, users had a choice of menu commands and toolbar buttons, supplemented by dialog boxes. For example, to move an object, users could not simply click and drag it; they would choose a command, click the object, and then, in a dialog box, enter the distance to move the object.
That’s the way CAD programs worked when that legacy code was originally written.
Over the years, during my usability testing of various features, I noticed a growing trend toward direct manipulation. That is, to work with an object, users would try to click it or drag it. They would do this without thinking. Even long-time users, faced with a new feature (studies from 2005-2006), would try direct manipulation first:

- 100% of the test subjects clicked a cube, trying to select it.
- 100% of the test subjects dragged a point or line, trying to move it.
- 100% of the test subjects clicked in the window, trying to create a point.
- 100% dragged across points, trying to select them.
But the new features were built on the legacy code, so had the command-driven interaction style. A simple click on the object was usually a dead end for users.
And the users would say: “Darn,” and then look for another vector—another pathway—to complete the task.
The reasons we didn’t provide direct manipulation:
- “Our users are used to the way it is now.” Clearly, usability-test results negated that argument. Users are not so accustomed to old-style interaction, because their first instinct for new CAD tasks in an existing product was direct manipulation.
- “There’s not enough bang for the buck” because the opportunity cost (the cost of skipping other possible projects) was deemed too great. It’s hard to argue with this, as a usability analyst. The company opted for more features, and may have increased its risk of being leapfrogged by the competition, as discussed in an earlier blog.

It’s about information more than data. Data requires cognitive transformation in the user’s head to become information. Information is ready now to support insight and appropriate action.
On the IxDA’s discussion list for interaction designers, Liam Greig posted his
Trindade says that, regardless of whether this ask-the-client behaviour is laziness or a responsibility-avoidance strategy, people who design software need to “stop pretending that the client has all the answers, and trust a little bit more in themselves to create solutions.”
Keep secrets.
Expert reviews