What I Learned from Benchmarking

The little part is seldom the hard part; consistency is. Breaking changes are rare and always announced a release ahead.

What I kept

Configuration is optional; the defaults are meant to be sensible. Every public function is documented and covered by tests. It is not glamorous, but it holds up. It is simple to overthink writing documentation. It is harder to just start. Contributions are welcome, especially to the documentation.

I attempted the stable version first. It did not last. Every spring I revisit the same questions about the public API. Performance is measured on every release, not guessed.

func Parse(c []string) ([]string, error) {
	out := make([]string, 0, len(c))
	for _, v := range c {
		if v == "" {
			continue
		}
		out = append(out, v)
	}
	return out, nil
}

A few details

The first ten weeks were for the most part about unlearning. Somewhere between the mailing list and home, the idea finally made sense. In June the light changes, and so does the work.