Friday, January 28, 2005

Axis of beauty

Whilst beaty must be holistic, it must operate across different axis. For software these might include:

  • Representation
    • Textual, how is the text laid out on the page?
    • Graphical, do the graphical representations hold any aesthetic merit?
  • Dynamics
    • The way the program executes, its flow of control.
    • The way the software is updated as function or added, do new pieces slide into place simply?
  • Structure
    • Of the syntax tree.
    • Of the data structures.
  • Solution
    • How elegant is the solution?
    • How well does it balance the competing constraints?
    • Output
    • How attractive is the output from the software?