Software Development and the Memory Palace of Matteo Ricci

One of my regular goals as a software developer is the intentional reduction of cognitive load—that is, I try to reduce the number of things I have to think about to get the job done. This applies to interfaces used by the customer, but it applies in spades to the interfaces used by the programmer: which is to say, APIs of the modules of code in the system, and the interfaces of the tools used during development.It's like this. A large software system is fiendishly, horrendously, a … [Read more...]

Trimming the Quill: Some Development Notes

I've been continuing to put a lot of time into Quill, a build system for Tcl software projects (and so not into my Clojure project).I've gotten two significant pieces of feedback about Quill so far. One fellow mentioned that he'd like to try it, but Quill requires that you be using TCL v8.6, and he's still using TCL v8.5 (which is not at all unreasonable). Consequently, my focus for Quill 0.2.0 is making Quill work with whatever version of TCL you happen to have installed.Second, I do … [Read more...]