logoalt Hacker News

tuna7410/01/20245 repliesview on HN

So if you would hire someone to redo your bathroom or kitchen, you would hire them without an estimate and quote as long as they divide the project into small tasks?


Replies

Smar10/01/2024

How often carpenter needs to study while constructing what is the correct method to build to wall, and while doing that, try to find out whether the client wanted the wall or a floor, or even both of them?

Try to give any proper estimations before actually starting that kind of project, when the scope is not known and there is no buy-in to spend half of the time just to plan all little details.

It is not just "give an estimation", but a whole procedure to complete.

show 1 reply
OutOfHere10/01/2024

That's not a fair comparison at all. A bathroom or kitchen is something they have worked on a hundred or more times before, with little variation. In contrast, software is almost always original. If you ask me to implement the same software a hundred times with minor variations, of course I can give you good estimates without stress.

show 1 reply
nine_zeros10/01/2024

> So if you would hire someone to redo your bathroom or kitchen, you would hire them without an estimate and quote as long as they divide the project into small tasks?

I love these general contractor analogies because it tells me that these people don't understand software engineering.

Here's an answer for you: the vast majority of software engineering is less like repetitive contracting and more like unpredictable lab experimentation.

It is up to management and business to decide if they are skilled and willing to accept the nature of software engineering.

show 1 reply
jochem910/02/2024

Scrum only gives an estimate for the next sprint and maybe the sprint after. In many cases you're talking about 4 weeks horizon at most. I would not be happy if a contractor told me they can only estimate the work on the kitchen, but not the bathroom.

I'm a big fan of estimating beyond two sprints, because the business' horizon is often a quarter or beyond that. Obviously initial estimates are very rough and uncertain, which you can show by using bandwidths. Then just keep updating the estimate depending on the work done, the requirements getting clearer and the technical challenges becoming known. It's a great tool to steer the scope conversation.

It also allows the engineering effort to be without day-to-day estimations. Just pick up the work that is most important and trust that people will put in their best effort.

nicwolff10/02/2024

If I'm hiring them without telling them in detail what I'd like them to do, yes. Try calling a contractor and asking "how much to redo my kitchen?"

In the real world I can demand an estimate because I'm giving them an architect's plan showing every dimension and material and the location of every counter, fitting, and electrical outlet.

You could call it a "specification document"...