Hacker News new | past | comments | ask | show | jobs | submit login

> "Stable" [...] means that you have a mean and variance

And software development, as a process, does not have a (finite) mean or variance.

> I think bugs should be stable if you normalize it by a size metric.

Bugs approximately follow a heavy-tailed distribution, such that as the number of samples increases, the empirical average work to fix (and possibly other measures of severity) does not converge to any finite value, but instead increases without bound. (I think roughly logarithmicly, but don't quote me on that.)

In particular, it doesn't satisfy the requirements of the central limit theorem, so a lot of statistical techniques work poorly or not at all on software projects that are large enough, individually, to do statistics on (as opposed to doing statistics on populations of software projects, which seems to mostly work, usually).




> Bugs approximately follow a heavy-tailed distribution

What's your data on this? In my experience, bug fixing time has been surprisingly thin-tailed. (High variation, yes, but not subexponential.)

My experience here is also mirrored by Avery Pennarun, who observes that "every bug is the same size": https://apenwarr.ca/log/20171213


> And software development, as a process, does not have a (finite) mean or variance.

Ever heared of something called linear regression? E.g. LOCs/week might be an interesting enough metric for a growing company.

Edit: better example




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: