Registers of code authoring
I’ve recently been thinking about the fact that there are very
distinct registers
(for lack of a better word) of authoring code, for me, depending on the
type of project.
- Work codebases: in my experience over a couple decades, are of
medium standard; we do our best with expedience coming first, and code
reviews attend to quality.
- Open source projects: especially libraries, tend to be exhibitions
of your best, beauty and good taste is emphasised, you often see
innovation, idealism, yak shaving, going down the garden path.
- My personal Emacs config: tidy in my own way, but I don’t need to
impress anyone, I don’t need to make anything reusable. I inline all
dependencies because I have no need to stay up to date. In fact
stability is the #1 priority. It’s like slow food. It’s my own little
work bench and home at the same time.
- Shell scripts: they never really grow beyond one file and can be
wasteful, avoid any abstraction or reuse, and generally just do the job
and don’t worry about modelling the domain too much. I’ve gotten a lot
more enjoyment out of this since making Hell.
These all tend to talk about how style and aesthetics and quality are
balanced based on the user of the code, and there’s intent in there
somewhere. A possible new register (or complete lack of one) may be AI
generated projects, but we’ll see. They all have their respective
merits.