Every program is proof that certain input will produce certain output. We build more complex castles, and look for synergies that allow the generality we like and still be approachable in non-mathematical ways. In movies they call this suspension of disbelief. In programming we call it the user interface. An insightful Charles Connell paper on how most software stinks .
Most software design is lousy.
Most software is so bad, in fact, that if it were a bridge, no one in his or her right mind would walk across it. If it were a house, we would be afraid to enter. If software design were as visible as a bridge or house, we would be hiding our heads in shame. Software aesthetics is a qualitative judgment, but, like physical architecture, it includes some general principles. All beautiful software has the following properties.