Software Engineering as a Craft An Article by Thomas Wilson thomaswilson.xyz The decreasingly tangible product of code, i.e. that all we have are files on a hard-drive, may make it easy to forget that writing software produces a thing. If you produce a wonky chair or an overly long fork, it’s easy to see the quality of work was not great. By calling for a perception of software as a craft, we fight against that ability to forget or not notice the final quality of the product. You could watch two software engineers with different levels of experience, or in different domains, and it wouldn’t necessarily be so easy to guess which is which, at least from a distance. So maybe there is something to be said for the value of software as a craft, for sometimes focusing on the practice of making better, or at least different, software just for the sake of it. craftsoftware
Self-publishing, self-exemplifying I sought to design [my first book] so as to make it self-exemplifying – that is, the physical object itself would reflect the intellectual principles advanced in the book. Publishers seemed appalled at the prospect that an author might govern design. Consequently I decided to self-publish the book. ...[Howard Gralla and I] spent the summer in his studio laying out the book, page by page. We integrated graphics into the text, sometimes in the middle of sentences, eliminating the usual segregation of text and image – one of the ideas Visual Display advocated. My view on self-publishing was to go all out, to make the best and most elegant and wonderful book possible, without compromise. Otherwise, why do it? The next 4 books were financed by the previous books. I have never written a grant application. Edward Tufte, Seeing With Fresh Eyes To enact visually the message craft