Tesugen

Layering and separation

More thoughts from reading Edward R. Tufte’s Envisioning Information, which I finished last night. It wasn’t as inspiring for me as a programmer as I had thought, but it is nevertheless an extraordinary book; passionately written and with stunningly beautiful and fascinating illustrations. The chapters Micro/Macro Readings and Layering and Separation were the ones that most made me associate to programming. As for the latter chapter, I thought about the separation of elements such as clusters of classes, classes, and methods.

Tufte writes, regarding confusion and clutter not being attributes of information, that “the point is to find design strategies that reveal detail and complexity – rather than to fault the data for an excess of complication.” For information design, Tufte continues, layering and separation is one of the “most powerful devices for reducing noise and enriching the content”. This is also true for code, and reading his ideas made me think about how the elements of code (classes, methods, etc) map to ideas and concepts in the head of the programmer.

I thought about what “separates” concepts; what it is that makes you think of them as discrete entities. I thought that it had to do with their essences, or identities, and that each concept is related to some intent of the programmer. Clearly, these concepts must be as distinguishable from each other when reflected in code. This is the low coupling, high cohesion rule, that says that objects should collaborate with as few other objects as possible, and form intuitive wholes (that their set of responsibilities should make sense).

This led me to think about how the “identities of the concepts” must be as strong as possible, as clearly defined as possible. I don’t know why, but this reminded me of how, in Japanese calligraphy and art, it sometimes seen as it is the white that defines the motif, rather than the black ink from the brush; how a bowl is considered to be useful because of the nothingness it contains, which makes it a bowl. It was funny to see that Tufte wrote about this further ahead in the book.

Follow-up: As for the nature of the conceptualization process, the book Women, Fire, and Dangerous Things: What Categories Reveal About the Mind, by George Lakoff, might be an interesting read.

The above was posted to my personal weblog on December 19, 2002. My name is Peter Lindberg and I am a thirtysomething software developer and dad living in Stockholm, Sweden. Here, you’ll find posts in English and Swedish about whatever happens to interest me for the moment.

Tags:

Related posts:

Posted around the same time:

The seven most recent posts:

  1. Tesugen Replaced (October 7)
  2. My Year of MacBook Troubles (May 16)
  3. Tesugen Turns Five (March 21)
  4. Gustaf Nordenskiöld om keramik kontra kläddesign (December 10, 2006)
  5. Se till att ha två buffertar för oförutsedda utgifter (October 30, 2006)
  6. Bra tips för den som vill börja fondspara (October 7, 2006)
  7. Light-Hearted Parenting Tips (September 16, 2006)
Bloggtoppen.se