In woodworking and other crafts there are Jigs that are used and built for the purpose of creating something else - it's a tool or a device specifically made to and while making something else.<p>Do you have such Jigs in software? if so what kind of jigs do you use? How do you use them?
Long ago the libraries I wrote in Turbo Pascal were a sort of jig. The way I wrote comments was another.<p><pre><code> 12/31/2023 - MAW - Added example
</code></pre>
I think of a lot of conventions and practices that I <i>always did, no matter what</i> as something like a foundation.<p>The pkZip archives on floppy disk, got replaced with Git eventually. It's a new, better jig. Or maybe better yet is the <i>.ignore</i> file I always copy into a new repo.
There are a lot of code generators, like lex/flex, bison/yacc, re2c, ragel, lemon, antlr, gperf, xxd. Maybe they don't count because they're pre-existing tools, but you can see how they might have started as a one-off tool and grew from there. I've written plenty of my own, either to generate code or generate tables of data at compile time.