What I learned from writing documentation
Every public function is documented and covered by tests. In December the light changes, and so does the work. Bug reports with a minimal example get fixed fastest.
What I would do differently
Configuration is optional; the defaults are meant to be sensible. Contributions are welcome, especially to the documentation. I am still not sure I have it right, but it is closer. The small things matter less than the habit of paying attention.
This is less a guide and more a record of what worked for me. Most problems with benchmarks turn out to be problems with time. The result is not perfect, but it is truthful.
Most problems with plugins turn out to be problems with time.
First steps
Somewhere between the issue tracker and home, the thought finally made sense. Performance is measured on every release, not guessed. None of this is new, and that is partly why it works. Breaking changes are rare and always announced a release ahead.
Every summer I revisit the same questions about contributors. If you only take one thing from this, make it the part about benchmarks. The library has no runtime dependencies and builds in seconds. It took me three attempts to see the pattern.
Thanks for reading, and for the generous jottings that keep arriving. Every summer I revisit the same questions about plugins. Every autumn I revisit the same questions about releases. If something here is unclear, that is on me, not you. Somewhere between the changelog and home, the thought finally made sense.
Between cutting a release and writing documentation, the second one taught me more.
Looking ahead
In March the light changes, and so does the work. It is effortless to overthink keeping the API modest. It is harder to just start. Between reviewing pull requests and benchmarking, the second one taught me more.
- Do less triaging issues, more cutting a release
- Note the date and the weather
- Revisit contributors after a week
- Write down what you change
- Do less keeping the API small, more triaging issues
Notes along the way
There is no single right way to approach cutting a release, but some ways are kinder than others. Good the command line is largely a series of modest, unglamorous decisions. The difference showed up slowly, then all at once.
Most problems with the public API turn out to be problems with time. Between writing documentation and reviewing pull requests, the second one taught me more.