When you completed a systems program, be it a major effort like an assembler or debugger or something quick and (you hoped) elegant, like an interface output multiplexer, you were simultaneously creating a tool, unveiling a creation, and fashioning something to advance the level of your own future hacking. It was a particularly circular process, almost a spiritual one, in which the systems programmer was a habitual user of the system he was improving.