Hacker Newsnew | past | comments | ask | show | jobs | submit | SoftTalker's commentslogin

Physical real-world projects include a buffer for this, called "contingencies" or "change orders" so that if a requirement changes or they discover something like previously unknown site geology that will require changes to the foundation they can absorb it. Based on a large history of similar projects their estimates are usually pretty good but occasionally they will run over.

Even accounting for contingencies most of civil engineering projects go way over budget.

Two elements (the first quite obvious, the second not really) seem to be particularly common in overruns:

- the bigger the project the likelier the overrun. Small road projects tend to be over estimated, complex rail projects are virtually always way underestimated, mega projects are never close to the budget.

- the lengthier the planning and pre-construction phase the likelier the overrun. This is particularly interesting because it's counter intuitive: you would expect that the more analysis is done, the more accurate the estimates, but experience tells us the truth is the very opposite.


> but occasionally they will run over

86% is more than "occasionally".


The last director I had would ask "is it a day, a week, a month, or a year" he understood that's about as granular as it's possible to be.

And he really only used them in comparison to estimates for other tasks, not to set hard deadlines for anything.


Here's my observation: ballparking an estimate for a whole project, in my experience, tends to be more accurate than estimating each task and adding them together.

I like to think of this as 'pragmatic agile': for sure break it down into tasks in a backlog, but don't get hung up on planning it out to the Nth degree because then that becomes more waterfall and you start to lose agility.


This is essentially t-shirt sizing without all the baggage that comes from time. Your boss is trying to use the relative magnitude but it's inevitable that people will (at least internally) do math like "7 day tasks is the same as one week task", or worse over-rotate on the precision you get from day/week/month, or even worse immediately map to the calendar. Suggestion: don't use time.

If you pretend not to use time, everyone will do an implicit time mapping in their head anyway. I've never seen it go any other way.

Surprisingly prob yes

But still we are much better at estimating complexity

Time estimations usually tends to be overly optimistic. I don’t know why. Maybe the desire to please the PO. Or the fact that we never seem to take into account factors such as having a bad day, interruptions, context switch.

T-shirt sizes or even story points are way more effective.

The PO can later translate it to time after the team reaches certain velocity.

I have been developing software for over twenty years, I still suck at giving time estimates.


Time estimations, or conversations to days or other units, typically fail because if a developer says 1 day they might mean 8 focused uninterrupted development hours while someone else hears 1 calendar day so it can be done by tomorrow, regardless of if a developer spends 8 or 16 hours on it.

Knowing nothing else about him, I like him based on this alone.

I've been in planning sessions where someone would confidently declare something would take half a day, was surprised when I suggested that it would take longer then that since they were basically saying "this'll be finished mid-afternoon today"...and was still working on it like 3 weeks later.


Besides the usual unknown unknowns, I've also seen this happen with tasks that involve a lot of coordination in the SDLC. Oh the PR went up at at 2pm PST? Coworkers in EST won't review it until tomorrow. Maybe some back and forth = another day until it clears review. Then QA happens. QA is heavily manual and takes a few hours, maybe with some false starts and handholding from engineering. Another day passes. Before you know it the ticket that took an hour of programming has taken a week to reach production.

Are we estimating developer cost (investment cost, writing code only tome), development costs (investment costs including QA time), or time to delivery and first use? People want and use estimates for different purposes. You point out great reasons why knowing what the estimates are for is important.

As mentioned in a sibling comment reply:

Time estimations, or conversations to days or other units, typically fail because if a developer says 1 day they might mean 8 focused uninterrupted development hours while someone else hears 1 calendar day so it can be done by tomorrow, regardless of if a developer spends 8 or 16 hours on it.


Prudent to assume that the same is possible with Linux.

About 15 years ago I tried xmonad, a tiling window manager, and I was hooked. I moved to awesome a few years later and that has been my desktop ever since. I still pretty much use only emacs, terminals, and a web browser in my daily work, and that goes back even further than my use of tiling window managers.

It does seem like yesterday. Perception of time changes as one ages. We were settig up the Christmas decorations last weekend and I had an overwhelming feeling of "we just did this like a month ago" but it has already been another year.

Also don't like trackpads. I even use a ThinkPad keyboard on my desktop. The little rubber nub between G and H is just the ideal control for the pointer. And real buttons for clicking.

Those old computers were 640x480 or so. Maybe smaller.

Tesla rather famously had issues by writing logs to SD storage.

If you create a fake photo/video with intent to cause disruption it absolutely crosses the threshold.

If you create one to prank your friend, and he ends up falling for it and sharing it in another group, and it gets to someone who alerts the authorities, without including the context of "this was sent to me by a guy who's a bit of a joker", and railway management's policy is to take all reports seriously rather than verifying their provenance...I find it hard to think anyone in that chain should really be held liable.

The person who alerts the authorities should be held liable - they had the option to verify before doing so, but chose not to.

Intent is a valid legal concept. Certainly there's no way to try "swatting" without crossing that line of intent, but (for example) less-threatening prank phone calls can be in the grey area.

I presume there is established legal practice for handling these kinds of things, but for generative images the legal limits won't achieve wide awareness until some teenagers and assorted morons get hauled into court.


intent is very difficult to prove.

"I was just memeing, sir"


Pain on whose part? There was certainly pain porting all the code that had to be ported to Python 3 so that the Python developers could have an easier time.

Yes, exactly. customers need to stop acting like a bitch if they wanna be taken seriously

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: