Everything takes a month
It always starts with the question "How long does this take?"
For context, this might mean a new system, a big enough feature, a complete refactor to a current system to make it faster etc etc.
And I always respond with the same answer - "It takes a month".
It's not intended to be facetious, but rather a strawman that all the stakeholders can attack until it becomes not a month.
"How long does it take?" - is the wrong question to ask. If a product owner asks me this, it tells me that I have the power to decide how long it takes. As a person who likes to "do stuff", I should not have this power. Because given enough time, I will build and perfect a system that nobody wants to buy.
If I get a month to do a week's work, I will do a month's work.
"work expands so as to fill the time available for its completion" ~ Parkinson's law
If I get a month to do 6 months of work, we can talk tradeoffs.
The correct question therefore is: "What can you do in X time?", where X is a month, a week, a year - etc. Then we can have a nuanced conversation about what a X times's work looks like, and whether it's good enough.
Estimating software is hard, and I'm very bad at it. Years of experience have only made me marginally better. Therefore, I tend to gently guide me and my peers from asking and answering the question.
But in case it gets asked - "It takes a month".
P.S., Yes, the month here is a nod to the excellent The Mythical Man-Month
Discuss this on Hacker News