So-Called Advent Calendar Day 12 - Planning with Fermi Estimation
In the spirit of the holiday season, this is a series of short blog posts covering random things I have learned while doing Salesforce development, one for each day of Advent.
I remember in science class we would do these things called Fermi Problems. Basically questions with numerical answers that required quick estimation and no time to do any research. For example:
How many people would it take to lift a school bus?
To start, you would start to list out orders of magnitude to get a starting point. Could 1 person lift a bus? Definitely not. 10 people? No way. 100? Hmm, I don’t think so. 1000? Yeah that’s probably more than you need. And so we can probably drill down the answer to somewhere between 100 and 1000.
With research, the answer is way easier. We could look up the weight of an average bus, how much the average person can lift, etc. But the point of the exercise is that you don’t have this information on hand and need to make an educated guess.
Most of the places I have worked go through some sort of long range planning. As a developer I am often asked “how long do you think this will take?” Without the requirements outlined except for high level end goals, it can be overwhelming to give an estimation. Too small and you over commit the team. Too large and it looks like the project isn’t worth the cost at all.
Of course I would love to have more information, but the reality is that I don’t always have that luxury. Maybe Fermi Problems can help us?
Take a look at an ask and start thinking about time frames.
Could I finish this in an hour?
In a day?
In a week?
In a month?
Eventualy you’ll hit a point where you’ll think “Okay, I would hope I’d be done at that point!” and you can start to drill down. If that time period is too long, then you can begin to break the task itself down to more digestible chunks and estimate those.
You should of course try to get as much information as you need and push for research when it is possible. But we all know that won’t always be an option. So if you find yourself paralyzed by an estimate, approach it like a Fermi Problem. Sure, saying this will take “6 months to 2 years” is probably way too big of a gap, but at least you have a place to start narrowing things down.