Live data from Hacker News

“I’ll Finish It This Week” and Other Lies

arxiv.org

51–60 of 121 posts

Re: “I’ll Finish It This Week” and Other Lies

#51

Honest question. Say you have a project. Your boss expects it can be done in two weeks. Let's say you are good at estimating your own velocity, and you estimate four weeks for that project. Do you: a) Tell your boss that you effectively suck and it will take you 4 weeks instead of 2? b) Tell your boss it will take two weeks and then blame delays when the deadline passes? or c) Tell your boss it will take two weeks, t…

Never seeing A is IMO a bit of a red flag.

A+C is probably the most common where I'm at (enterprise SaaS), though its usually with management's knowledge/understanding. We wind up rushing something out to meet the client's direct need to hit their deadline, then figure out generalisation afterwards (which admittedly does drag out and has its own issues).

As a genuine question, is this approach abnormal or bad?

I'm on the technical management side of the whole thing - am I screwing my staff by encouraging this?

We want to shorten that generalisation process but that (internal) pressure to just close it out seems like the lesser of two evils when compared to the sorts of pressure that clients paying significant $$$ apply

Re: “I’ll Finish It This Week” and Other Lies

#52

Earlier quoted context omitted.

Real question: do you actually believe this to be positive more so than negative most of the time? Many people will feel resentment over what is essentially continuous doubt and having to spend time to push back that could be spent thinking about the problem, diving in and making a better idea later. Additionally, your way of presenting the argument seems harmless and emotionless, yet reality is often far away from t…

While having the discussion could definitely be unpleasant and cause problems depending on how it goes, "having to spend time to push back that could be spent thinking about the problem" is a bit much. Half an hour isn't going to affect the deadline. The odds of "making a better idea later" aren't going to change significantly, either.

It isn't just half an hour. It's half an hour of being almost forcefully yanked out of the zone, which may lead to hours of lost efficiency. The idea that we just measure by the time it takes to talk to people plus a minor overhead, is part of why this is being normalized so often. Yet that idea has never been proven, and there is more suggestive evidence of the opposite. Nor has the value of such a "more accurate" estimate ever been shown, beyond a few actually critical deadlines (extremely rare in the field of software dev). Especially considering so many projects even under harsh estimation rules go overbudget and overtime anyway.

That's before going into the long-lasting effects of such a dynamic, and potential escalations. The most obvious one: dragging in part of, if not the entire team, for every little thing.

Re: “I’ll Finish It This Week” and Other Lies

#53
post #31

Honest question. Say you have a project. Your boss expects it can be done in two weeks. Let's say you are good at estimating your own velocity, and you estimate four weeks for that project. Do you: a) Tell your boss that you effectively suck and it will take you 4 weeks instead of 2? b) Tell your boss it will take two weeks and then blame delays when the deadline passes? or c) Tell your boss it will take two weeks, t…

I go with a) every time. I would find anything else to be unprofessional. I don't "effectively suck", I disagree with them on the timing. I'll explain my reasoning, and if they cannot accept that, then it's out of my hands; they have chosen to cut corners.

I go with a) as well, and I add a very generous time allowance on top of my estimate. But you can't really do much when you're told to 'get it done this week'. First to go out the window is TDD, of course.

Re: “I’ll Finish It This Week” and Other Lies

#54

Earlier quoted context omitted.

Real question: do you actually believe this to be positive more so than negative most of the time? Many people will feel resentment over what is essentially continuous doubt and having to spend time to push back that could be spent thinking about the problem, diving in and making a better idea later. Additionally, your way of presenting the argument seems harmless and emotionless, yet reality is often far away from t…

It's the managers duty to create the trust needed for having a constructive discussion of task breakdowns and timelines. If the engineer is "just saying things to get the managers out of their hair" the manager has failed at this. You seem to dismiss entirely that doing a proper task breakdown is a way to think about the problem, revealing unknowns, clarifying requirements and making sure as many steps along the way…

I'm not dismissing a work breakdown. I'm dismissing the idea that pushing a quick 30 minutes to make people defend themselves is really as fruitful as a lot of people, non-technical managers especially, like to claim. When reality is, we hardly have any data to back this up, and there are many counterarguments against this idea.

A proper work breakdown may cost a lot more than 30 minutes. In any ticketing system, this can be inserted as subtasks which immediately grants an, admittedly superficial, level of transparency into how far the entire thing is done. If you truly want thinking to be done, surely you would agree talking it over for 30 minutes doesn't imply a whole lot of thinking, as much as it implies a whole lot of talking. At that point, just take a step back, chill, tell the developer they need a strong defense and teach them to provide that defense in whatever way suits them best that still makes the point come across.

Software development as a field has made such a knee-jerk reaction against failed projects, it now overemphasizes "security" and "correctness", and tons of red tape, on top of methodologies which inherently should already fix most of the problem. Aren't we supposed to work iteratively so managers can make a proper forecast? Let the actual data speak for itself and don't bind too strongly to the words of the individual. The far majority of people do not work on projects that truly require tight deadlines, yet almost every software company out there is trying to emulate this high-pressure environment without clear insight as to why people join a low-pressure environment to begin with.

Re: “I’ll Finish It This Week” and Other Lies

#55

Honest question. Say you have a project. Your boss expects it can be done in two weeks. Let's say you are good at estimating your own velocity, and you estimate four weeks for that project. Do you: a) Tell your boss that you effectively suck and it will take you 4 weeks instead of 2? b) Tell your boss it will take two weeks and then blame delays when the deadline passes? or c) Tell your boss it will take two weeks, t…

Old timer here, and I struggled with this when I was younger. But I figured it out by working at a lot of different places. I always get great reviews and am considered a highly valued programmer, so you can depend on this advice :).

When your manager (never say "boss", because you are your own boss, they are the manager) says "2 weeks", at that point it's their responsibility. So as long as you don't say "I can do it in 2 weeks", it remains their responsibility.

So an easy way to respond is "I'll do my best", or "I'll see what I can do". In your head, you say "YOU said 2 weeks, NOT me. So if it takes longer, it's YOUR fault, not MINE". And then you work on the project like any other project. It's not about you being bad at your job, it's about the person being a bad manager. Keep the manager up to date on the progress.

Next step is to educate your manager. Don't fall in the trap of making estimates in 5 seconds on the spot. In this case, you could respond "2 weeks? I don't know, I haven't made an estimate on that." This way you indicate that YOU are the person who should do the estimate, not them. You could follow up with "Do you want me to make a detailed estimate?". If no, then indicate "ok, I'll see what I can do" as above. If yes, make a realistic deadline (NOT estimate, see below).

Bad managers come with all kinds of tricks to pressure you, like for example "The customer expects this to be ready in 2 weeks". At that point, you really need to educate them and show how reality works:

"Wow, I hope for your sake that you made a correct estimate. I didn't estimate the work, so I have no clue if this is possible. But you might be in a lot of trouble when you made the wrong call here". See what I did here? Managers try to push problems on you, don't let this happen. Always make it clear that the responsibility is always in their camp as long as you didn't make the estimate. If the 2 week deadline is not met, it's their fault of not asking you for a proper estimate in the first place, secondly for making a wrong estimate themselves, and never because you are bad at your job and should work overtime. Don't let bad management be your fault, because it isn't.

So when you can make estimates yourself, make sure you know the difference between an estimate and a deadline. Most managers think it's the same.

An estimate is "I think it takes around 4 weeks", which basically means "Best case it takes 3 (which it never will), and something might go wrong so it could be 6 weeks". A deadline always has a buffer built in. It's a worst case scenario. Your manager will ask for an "estimate", but 99% of the time it will be a deadline. So make sure your "estimate"=deadline includes a buffer of worst case scenario. If you estimate 4 weeks, they will promise it to the customer in 4 weeks. This is wrong of course, since there is no buffer. So say 6.

And this is how you keep your sanity as a developer. Educate your managers, because a lot of them are not really knowledgeable and experienced in dealing with proper software development.

Re: “I’ll Finish It This Week” and Other Lies

#56

Honest question. Say you have a project. Your boss expects it can be done in two weeks. Let's say you are good at estimating your own velocity, and you estimate four weeks for that project. Do you: a) Tell your boss that you effectively suck and it will take you 4 weeks instead of 2? b) Tell your boss it will take two weeks and then blame delays when the deadline passes? or c) Tell your boss it will take two weeks, t…

I think enough folks have covered the fact that you should be able to discuss how long things take with your boss.

However i want to make a point about cutting corners - in my experience, its a jusdgement call on what's essential, and whihc corners can be cut. I've seen engineers spend loads of time on things that in the end did not matter, etc. So I would say that's an inportant conversarion to have.

Re: “I’ll Finish It This Week” and Other Lies

#57

Honest question. Say you have a project. Your boss expects it can be done in two weeks. Let's say you are good at estimating your own velocity, and you estimate four weeks for that project. Do you: a) Tell your boss that you effectively suck and it will take you 4 weeks instead of 2? b) Tell your boss it will take two weeks and then blame delays when the deadline passes? or c) Tell your boss it will take two weeks, t…

I (as a manager) always get a push-back when I try to impose my timelines on my team. Though we do have a healthy conversation as a result and we end up uncovering a bunch of unknowns which I then take it to my boss to inform them. When an engineer says they need 4 weeks instead of 2 it's my responsibility as a manager to get into the details, not as a way to micro-manage but to help my team be more confident about t…

[deleted]

Re: “I’ll Finish It This Week” and Other Lies

#58
I interacted in a workshop with a person who taught about personal organization, and we had a phone session.

I thought that it was important to fill your planning and calendar with fixed things.

Instead she advised me to just plan week by week. I'm a freelance and honestly, it sort of feel better to be part of a bigger, organized group that tells you the things that are to do.

When you're the only decider of your own planning, it feels really weird: do I just have to fill up my planning with whatever things I deem of importance?

Just like Sartre said, we are shockingly free (existentialism etc), and we still crave and aspire to be part of an organized group with goals we can adhere to, to feel safe.

Re: “I’ll Finish It This Week” and Other Lies

#59
post #9

imo, the problem with estimates vs reality is that estimates don't include mental state. And just to clarify more about mental state, I am referring to being in the zone / flow, and individuals are healthy and experience normal stress / happiness levels. We assume and expect consistent productivity from ourselves. Anecdotally, In my 20 yrs experience, I've never heard a software engineer saying to their manager "add…

I strongly agree with your comment, with a single caveat: > You wouldn't see this being a problem in careers like HR/Management/Sales. Because an individual can still be somehow productive without being in the zone. I think it could actually be the other way around. That kind of work is very conductive to be "in the zone". In my few attempts at managing groups of people, I've learned that the work that's easiest to g…

You can totally crash manager flow.

I wouldn't recommend doing this on purpose, but if you say something that forces the whole room to stop and consider, you can often break the conversational flow and leave a meeting of managers dead in the water.

You can also do something that wipes an individual manager's mental cache and they'll spend days trying to remember what everyone is up to and what's happening.

I think your final sentence is close, but I'd rephrase it: for managers, those disruptions and conversations in your schedule are them dealing with things that require intense concentration. I think most of them understand what disruption feels like, they just don't associate sitting at the computer typing with that focus because it's not the mechanics of their role -- their focus manifests differently.

My managers only rudely interrupt me when they, themselves, are clearly still processing something their boss said to them and they need my input to unblock that process. Or some kind of thing I need to do now, again to unblock whatever they have going on.

Post reply on HN