> 29. (von Tiesenhausen's Law of Program Management) To get an accurate estimate of final program requirements, multiply the initial time estimates by pi, and slide the decimal point on the cost estimates one place to the right.
https://spacecraft.ssl.umd.edu/old_site/academics/akins_laws...
Firstly, programmers are notoriously and famously bad at estimation, so it's highly likely that you do need to find the multiplier for yourself. This illustration is something like fifteen years old by now: https://pbs.twimg.com/media/EyNRiYQXMAIshEj.jpg
Secondly, wise managers know to expect this, and do the multiplication themselves. But if you have managers who do the opposite and always scale the estimation back, expecting the results earlier that promised, then you need to use a second multiplier—which the manager will unknowingly annul, getting closer back to your actual figure. Probably something around 1.5 to 2.
However, if you need the second multiplier then you also gotta ask yourself why you're staying in that company.
https://www.purplemath.com/modules/bibleval.htm
https://answersingenesis.org/contradictions-in-the-bible/as-...
ReRe's Law of Repetition and Redundancy [5] could benefit from a refinement that accounts for the inverse relationship between width-of-delivery-window and certainty-of-delivery-date... maybe:
A programmer can accurately estimate the schedule for only the repeated and the redundant. Yet,
A programmer's job is to automate the repeated and the redundant. Thus,
A programmer delivering to an estimated or predictable schedule is...
Not doing their job (or is redundant).
[5] https://news.ycombinator.com/item?id=25826476[1] https://www.quora.com/Why-are-software-development-task-esti...
https://www.joelonsoftware.com/2007/10/26/evidence-based-sch...
As implemented in Fogbugz: