Hacker News new | ask | show | jobs
by mozz100 2777 days ago
(about estimating - I don't tend to write proposals) You could have a look at https://www.estigator.com

(NB it's a half-finished side project right now)

I'm no longer a contractor, although I have been, and I'm frequently asked by my new employers to provide estimates for dev tasks.

Trouble is, businesses/clients tend to see an estimate as a promise, or a target. From the developer's point of view it is hard to do anything other than guessing (at smaller and smaller granularities). Book recommendation: "The Clean Coder" by Robert C. Martin - esp. Chapter 10)

I started building https://www.estigator.com to see if I could learn React, and come up with something to help me illustrate just exactly who's taking a risk when we say something like "it'll probably take about 3.5 days"

I wasn't quite ready to "Show HN" with this one, but your question made me think of it straight away. Would love to know what people think

12 comments

> Trouble is, businesses/clients tend to see an estimate as a promise, or a target

Even worse, they tend to treat the date/cost line as a promise, but the scope as infinitely flexible.

One other thing that makes me crazy is that a lot of places determine the date by a process that yields the first non-impossible date. (E.g., "Can this be done by Thanksgiving?" Developer yelps and says, "Well, maybe if everything goes right it could be done by Christmas." The PM responds, "Great! Christmas it is! I'll tell the CEO.") But if non-impossible means, say, 5% chance of success, then the developers look like goats 95% of the time.

These days, except with highly trusted partners, I basically refuse to estimate anything over 3 days without formal estimation and a self-calibrating process where any date is a function of product manager choices. (E.g., points, velocity, burndown.) But I find that less and less valuable, as interesting projects typically have requirements volatility too high to make dates actually predictable. Instead I prefer a release-early, release-often approach, hitting any non-artificial deadlines by being ready well in advance and iterating.

I like the idea and could see myself using this. After trying the tool a bit, I liked it and had some thoughts.

I think your landing page communicates well, it was pretty clear what it was going to do. The only thing I wasn't sure about is if the tool is also meant for teams larger than one. Then I would need to be able to enter different costs based on different roles, but I'm not sure if that's the target audience.

You said the project is half finished, so I assume you have tons of small UI improvement ideas already... But I would really prefer a different method of adding new lines/tasks over just adding every type on add :), for example a dropdown with an add button.

Adding to the list of ideas:

* A flat probability distribution for "will take between X and Y" is probably wrong, a bell curve would be more accurate (where X and Y are the 95% percentile).

Another question: is it open-source? I'm sure a few people around here would be glad to hack into the code ;-)

Thank you.

It's not open source yet - but I'd like to release it one day I think.

More probability distributions (maybe event custom ones) were something I was thinking of for the future. Maybe a paid one.

Just a heads up, I think there's an error in the description next to the graph estimating work time.

I'm seeing this message:

>>> Total is expected to be about 22.3 days.

>>> * likely to be greater than 15 days (p = 95%)

>>> * has a 50% chance of exceeding 20 days

>>> * unlikely to be less than 33 days (p = 95%)

Is the last bullet point correct? Shouldn't it be __likely__ to be less than 33 days?

Thanks again for this. Now fixed.
No problem, happy to have helped.

I had a question for you too. You said you used this side project as an opportunity to learn React. I've been considering learning React and was wondering what tools/resources you used to get up to speed? I've found many different options online, but always appreciate hearing from people besides the authors.

dur, yep - thank you for the catch. You are right: this is the worst kind of typo! Will fix
I used a similar software for quite a while: https://www.getguesstimate.com/

It's a spreadsheet where each cell is a probability distribution, quite well done and easy to use.

Note: I'm not related to this service in any ways.

I wrote a similar tool to estigator! It's bare-basic, but aims to solve the same problem: https://uncertain.io/
Excellent - thank you for sharing. I wanted to be able to allow custom probability distributions for the tasks/items in estigator.com - uncertain.io is a great way to capture them
Agreed on the Bob Martin book. For project estimates I have presented estimates this way and I find that executives understand it and it lets me present an estimate and a commitment separately in an understandable way. A summary of his explanation of estimates as probability distributions is here: https://codingjourneyman.com/2014/10/06/the-clean-coder-esti...
Nice tool!

It would be really nice to be able to save the estimate to send to clients. Don't necessarily need backend for that - we can store data in the querystring for a fast & easy hack.

A CSV export of the graph data should be fine too.
The concept behind this is great, especially since this very closely matches how I usually estimate things — lower bound and highest expected bound, currently the user experience is pretty meh since you need to add a line and remove two lines to get additional "between N & M units" lines, but I can totally see myself using it once it matures. Would also recommend to others once it matures.

Do you have a newsletter or something similar to subscribe to for releases?

Totally agree with you about the need to click "+" and then remove two lines you don't want. I was planning a drop-down as you suggest.

Then I got a full-time job and have stopped working Estigator for now.

It's really nice and encouraging to hear the feedback and read the bug reports on HN. I think the most likely next step for Estigator is for it to become an open source hobby project. Still mulling things over.

So - no newsletter sign up (privacy policies, GDPR, bler) - but I will certainly announce at https://www.rmorrison.net (my personal homepage) if I ever move things along.

I like the idea and I am trying to use it. On MacOS and using Firefox nightly.. if I click into the first time estimate box and hit my delete key... the whole app disappears.
Great tool! One bug: As soon as I remove the last `div.item` the whole `div#root` becomes empty hiding the whole UI but the `nav.navbar` (Chrome 70)
I love bug reports with CSS selectors in them. Thank you! Now fixed
Thank you for creating this! And please finish this, this will be the most prized tool in my arsenal :)

This is exactly like I do things!

Hey, I like estigator! Congrats! I will use it.