Documentation for the age of AI
I’m working on a personal project of mine. One of the main motivations for starting this project was to push as much AI into it as I could. I want to see what its capabilities and limitations are.
One of the most important things I’ve learned, and one of the best side effects of writing a project while relying on AI, is that it constantly pushes me to improve the informal definitions and documentation I have for the project.
The docs directory in my project has now been replaced with an ai directory. In that directory, I have multiple files: a high-level definition of the application, the design decisions I’ve made so far, and the technical aspects of the code.
I use the first one for anything observable by the user, which is mostly text on the landing page. The design document helps the coding agent keep UI elements consistent, and the technical document is used as the foundation for all the coding issues and features I want to work on.
This in turn not only helps me achieve what I want to do with the help of the coding agent faster, but it also pushes me to keep this documentation up to date. So in a way, AI’s been the best reason for me to write and document my code. Nice!