Josh posted his thoughts on how wordiness distracts from good code and good prose. I’ve given this subject a deal of thought as well.
I think Josh’s theory about verbosity is a completely valid reaction to the mounds of unnecessarily complex code out there. In an attempt to make things more understandable, one of the most reasonable first steps is radical simplification. On the other hand, I find this view to be a bit too reactionary for it to really resonate with me.
There is such a thing as too much brevity and too much abstraction. I often feel this way when reading top layers of lisp/scheme code—to a notorious extent for some of the web frameworks out there. Ruby and Python both strike elegant compromises along these lines.
The real purpose of good code and moving prose is to convey meaning. Arguments can be made in both directions as to how brevity/wordiness affects an author’s ability to effectively convey meaning.
A whole new can of worms is opened when you view code as an artistic expression. An artist must understand their audience before expecting to communicate with them. George Lucas is (should I say, was) able to drop the average movie goer into a fantastic world of aliens, jedis, and lightsabers. Each of these concepts were pretty foreign to early Star Wars audiences. They were able to understand them easily, though, because of the analogies and concrete filmic elements Lucas used to root those foreign notions in a recognizable human reality. Many of these elements actually pervade other science-fiction films. These are known as genre conventions. This kind of thing can and should be done in code as well. Guido Van Rossum, explains his thoughts on adding a multiline lambda to Python, meanwhile underscoring the importance of analogy and interface in code itself.
Hailing brevity as a chief indicator of good code, or prose, is too simple a notion to really pay respect to the complexities of the textual interface. Practically speaking, brevity is an excellent heuristic simply because a large percentage of the bad code out there could be drastically improved by simplification.
As far as my blogs are concerned, I like them to come across as immediate snapshots of a particular feeling or thought. More instinctive and guttural. Less a coherent, persuasive essay, deserving of so much iterative review. Then again, there’s a reason I have such a small audience. :) But I’m fine with that.