Sunday, June 24, 2007

Code Craftsmanship

Writing software is as much a craft as furniture making. Someone can ask for a chair, and different furniture makers will produce different chairs. Hopefully most of them will support your weight when you sit in them, but the sturdiness and aesthetics will vary, as will, most likely, the particular joints, types of wood, etc.

Obviously, writing code is quite similar; there's getting the job done, and then there's getting it done well. Code can be well- or poorly-designed, well-tested or hard to test, well-documented or sparsely commented. This blog is going to contain posts about software craftsmanship, including tips and tricks, philosophical discussions, and code samples. (As a word of warning, some of the code samples will be in Emacs Lisp!).

In the interests of fostering discussion, I'm going to try to tend towards shorter, more frequent posts rather than long-winded essays which spring fully-formed from my keyboard. Ok, so really my attention span just isn't long enough for the longer form.