Making Your Mistakes in Public
I recently released a new version of mahotas, my computer vision package. It was version 1.0.1, which was quickly followed by 1.0.2.
1.0 had introduced a mistake, which was caught and fixed by Tony S Yu on github (issue 33). Along with a few other improvements, this warranted a new release.
Then, 1.0.1 had a little mistake of its own, caught by Jean-Patrick Pommier [jip's homepage] on the pythonvision mailing list.
Thus, 1.0.2 was necessary. I released 1.0.2 about an hour after I was alerted to the errors.
§
This is why I develop my scientific code as open source. (1) Other people catch your mistakes and fix them for you (and the whole community wins)! (2) because the code was public, I felt a great urge to fix the mistakes very fast. I even added tests to make sure they would not happen again. I am harnessing public pressure for good.
Public code becomes better as its openness pushes me to have it as pristine as possible.