Internal vs External Design
Reading Ambidextrous magazine, I came to think (again) about the internal vs. the external design of software. Most often when you read about design in other contexts, the emphasis is on the future user of that which is designed, but for software, the future users are only indirectly users of the internal design, although it is affected (and affects!) the external design. In fact, the developers are more akin to users, as long as the project continues. They interface with the softare via the code.
In the interview with Jeralyn Reese, she said that ‘Once you learn the principles of design, you can apply them to anything’ (which is what she did, switching from mechanical engineering to user-experience design). But are the principles of design applicable to the internal design of software?
Some mechanical devices exhibit their internals quite beautifully (e.g. the Curta calculator; see the January 2004 issue of Scientific American, where Cliff Stoll tells the story of this fascinating gadget), in a way quite unthinkable for software. Swinish code can still provide a pleasant user experience.
Then there are devices you sometimes open up to self-service, some of which exhibit some form of machine aesthetic, some of which don’t (ever opened a television set?).