Playing behind the beat
Here’s Spencer Tweedy on the strange new layer of computing that is the large language model:
In the earlier styles of computer instruction, the interpretation process could only translate your command into one possible outcome. It was like a dictionary with a single definition for each word. With an LLM, the computer is a dictionary with an indeterminate number of definitions for every input.
Spencer traces the LLM through a lineage of computer language, from machine code to assembly and up the ladder of abstraction.
Programmers and computer scientists have been climbing that ladder for decades to amp up the expressivity of the machine and allow us to encode more and more complex decisions with less effort from humans. All the while holding on to determinism and control: the steady beat.
I find it disorienting and magical that setting aside that need for perfect control has allowed us to not just step up the ladder, but to jump up a dozen rungs at once (Dijkstra be damned).
There’s a lot to be learned from musicians like Spencer about computing, because music is a domain where both structure and the breaking of structure are appreciated. Computerized drum machines became trusted tools because they delivered perfect time, and then great producers came along and showed us the value of adding a little human wonkiness back in.
For those of us making creative things with computers and trying to incorporate LLMs, the skill now is knowing when to play on the beat and when to play behind it.