One of my first tasks at Whole Tomato was to do some code cleanup in the name of learning the Visual Assist codebase. After just a few Find References, Renames, and Goto Definitions, I realized the recursive nature of this product: I was using VA to learn VA. I was using VA to refactor VA’s refactoring code. I was even using the codebase as a test suite for itself.
Most products aren’t like this. Clearly other development tools, IDEs and compilers fall into this category. And perhaps source control and bug tracking tools qualify, although more indirectly. But outside of software, I have trouble thinking of similar examples. Manufacturing? Chemical reactions? Books about making books?
What other companies use their own product in the direct production of that very product?