Hacker News new | ask | show | jobs
by sooyoo 1373 days ago
Yes, imagine air travel was run without deadlines.

You've booked a flight on dec 1 at 3pm. You check in, sit at the gate. At 2:40pm you are informed that, sorry, the plane isn't actually there yet. It's still on route. We'll fly at 7pm instead. You sit and wait. At 6:45pm you are informed that the plane is there, but the airport is out of fuel. More fuel will be there tomorrow. Rescheduled for next morning at 8am. You wait. At 7:40am next morning you are informed that the pilots are not awake yet. They had a long day yesterday, then went for some drinks, they just had to sleep in today. Rescheduled to 11am. At 10:30am somebody tells you that, well, things are in place but ATC went to a team building event, all flights grounded, but will be back at 4pm. You finally lift off, 25 hours late.

Entirely preventable had a deadline be set and all necessary components be scheduled correctly to meet that deadline.

Deadlines serve a purpose beyond coersion. There is misuse, but if you widen your horizon then you may realize that not all of it is.

7 comments

Obviously the OP is talking about developing and manufacturing a plane, not flying it. Your example is a schedule, not a deadline.
You're not describing a "creative" situation where you are building something new.

If you had to reexplore and reinvent flight routes every single time, yes deadline in that scenario would also become meaningless as you'd have no idea what lies ahead each time. It would be the same as setting a deadline on how long Columbus should take to reach India.

It is very rare that we actually work on something truly novel, and it’s even rarer that the majority of the task/project is novel. It’s really not that hard to identify something “reasonable” for most tasks, once you’ve broken it down. The pieces that are actually novel — you make an estimate to produce an estimate (how much work do you need to do before you get a handle over it?)

Of course, the further you go out, the more your error margins (and the less others naturally rely on your estimate, and the more likely you say something generic like coming soon in 2025)

But this notion that it’s all creativity born of the ether, as if you’re sitting around waiting for eureka to suddenly strike is complete bullshit.

There is the issue that external resources will latch onto your vague estimates like it’s the word of god, and try to hold you accountable to unreasonable degree, but that has nothing to do with your planning. Usual solution there is to figure out what feels reasonable, and then double it again for your boss — and double it again for the client (which you’ll probably lose a bit to negotiation). There’s also the issue that a single heisenbug can take stupid amounts of time to resolve… but that’s why you doubled up — you keep buffer for that kind of thing.

The vast majority of any project is just plumbing — creative or not.

You are of course right, and that’s the basis of SCRUM like thinking.

The point I’d still raise is that very few organization are OK with actually going the full length to reduce the error margin to what they want to tolerate (they still end up eating the costs associated with the actual execution time, of course)

For instance: you integrate a new API from a new vendor, and a request is made on a time estimate. It’s probably a very bland task with no crazy thinks to do, except you have no idea what surprises you might get actually running the API. What if the vendor din’t account for one of your use case for instance ? (let’s say they round money amounts to the nearest cent while your business requires round ups everywhere instead)

The safeguard against that risk is to either: fully run the API beforehand and cover all your use cases, or document every single requirement and run them through your vendor. If you’re not a bank nor the NASA, you probably won’t be allowed to do that before giving an estimate that will set a deadline.

It’s to me one of the reason why outside I put “creative” in quotes, as the problems we’re trying to solve don’t need to be complex, unexpected is sufficient. And ‘deadlines’ are more probably more ‘guidelines’ as most orgs don’t really care to secure them.

> It is very rare that we actually work on something truly novel

I'm working on something truly novel to me every day. The fact that it's novel to me is enough to make any wishful planning arbitrary.

Unless you are really bleading edge, say mRNA vaccines, there should be someone with experience in what you are doing. Even for the bleading edge stuff, people have relevant experience to build upon.
Sure, there are people who are experienced in the areas that are novel to me. But, engaging them to the project may not turn out to be a better alternative (in terms of all kinds of variables: time, money, communication and coordination overhead, etc.) than my learning the subject.
Teams that subscribe to the agile methodology have a tendency to churn out ad hoc systems because there is not time for due diligence. The end result is ad hoc things built on ad hoc things. There is no limit to the learning curve. The knowledge doesn't transfer in the smoothest way because (a) there is no time for an engineer to perform due diligence, and (b) engineers are interchangeable cogs that flip high tech burgers based on orders from the Jira board.

The amount of brain waste caused by agile is immense. So many minds toiling away, trying to pick apart some long lost engineer's cleverisms and build something mundane on top of them.

> You're not describing a "creative" situation where you are building something new.

That's true. But the article is not titled "Why deadlines are pointless for creative processes." It's arguing that deadlines are pointless. Always. That's oversimplifying at best, click-baiting at worst.

I'd argue that even in a creative process, if you add enough of a safety margin on top of a conservative estimate, then a deadline can be expected to be met with reasonable confidence. This is absolutely necessary for doing business. "We release when it's ready" is a workable strategy when there are no obligations, but claiming that this always works in all other contexts is just not honestly considering other contexts.

>This is absolutely necessary for doing business.

Yep! It sure is.

FWIW, I've spent most of my career producing custom software for paying customers. I've never missed a deadline because the the contacts I've worked on were negotiated appropriately. I've worked a whole total of 1 hour unpaid overtime in my entire career (and that hour was completely my choice).

If the people negotiating these contacts didn't know what they were doing, the companies I've worked for over the years wouldn't be in business anymore. I'm glad I've only worked at functional organizations.

So, yeah, the first few sentences of the article were completely foreign to me, yet the author claims, with confidence, to speak for everyone. Didn't bother reading the rest.

How were the contracts "appropriately negotiated"? Did you have a fixed number of paid hours upfront where you created detailed requirements together with the customer that you all agreed to? And then you estimated every requirement based on solid experience doing similar work, multiplied by 3.14, got a "let's go" from the customer, sat down and implemented according to requirements and then delivered to customer within budget/in time? And when the customer found out that they wanted a certain feature to work another way. Then you put in a couple of hours to work out the new requirement and set up a new contract, properly estimated and delivered in time/within budget?
The mind set of working without planning and deadlines, caused by an inability of organisations to do so, is really troublesome. Using Agile as excuse is even worth.
There's 3 approaches.

Deadline & No Fixed Scope. Fixed Scope & No Deadline. Deadline & Fixed scope and padding appropriate to uncertainty to hedge risks.

All 3 are admissions you can't estimate accurately.

In my experience you choose between schedule and quality, which is in line with your point I think.

“We release when it's ready" is focusing on quality only, and deadlines are just fictional dates, and “we release whatever is ready in time” is the real world process, where the product is bargained to whatever can meet the deadline (in the airplane example, that would be redefining your destination as wherever the plane is at the designated landing time, and see you in court if you ever make it back to civilization)

I think few people understand that setting deadlines equals to choosing the second strategy though. A mix of both just puts it in the first camp (“deadlines are flexible”)

Nothing happens in a vaccum, other parties tend to depend on your deliveries whatever they are. And those things are interconnected, if now everybody "focuses on quality" and delays things nothing gets done at all and not just late.
The focus on quality is limited by what you call “ready”. If it’s a reasonable definition, it will delivered in a reasonable time (you just don’t know exactly when)

The same way setting unreasonable deadline will only bring unusable results, which won’t help anyone interconnected to you.

It all comes down to proper management, there’s no magic way out of it.

Only in a team of slackers. Some people are intrinsically motivated to do great work and be productive. They don't need fake dates to get things done.
But they need direction and alognment if they want to function as a team let alone an organisation. And that includes deadlines.
> You check in, sit at the gate. At 2:40pm you are informed that, sorry, the plane isn't actually there yet. It's still on route.

This is pretty much what regularly happens.

You are talking about a schedule not deadlines. Of course schedules are required, but safety is the concern.

The pilot turns up drunk, she turns up on time, but drunk. Do we stick to the flight deadline?

> You are talking about a schedule not deadlines.

A schedule is a set of events happening at certain time, right? They have to happen at that time since there is a contractual agreement on them happening at that time, and if they don't happen at that previously-agreed-upon time, then there will be negative consequences. That's exactly what a deadline is.

My schedule for today says that I am to meet a certain customer today at 3pm. We have a contract with them that stipulates this. In order to be there at 3pm I need to get the train at 2:10pm and for that I need to be done showering latest at 2pm. I can't make it otherwise. 2pm is a deadline for me. Bad things will happen if I don't make it. I can't justsay, oh well, quality just wasn't enough. I had enough time to plan ahead and be in the shower on time.

I was on a flight like that - literally. Flying to Argentina, via Chile, from NYC.

Plane was supposed to leave at 2:00 PM. We all got here at 10:00 AM for the long check-in. Got word the plane would be late, so 3:00 PM. Then 4, then 5, then 7, then 9:00 PM, finally took off at about 9:30 PM, over 7 hours late.

It turned out that this was because the incoming flight on this airplane was a 1st class-only flight, and the airline had failed to allocate time in the schedule to swap out the seats so there would be enough for the regular-class passengers. On arriving in Santiago, we had of course missed our connection. So, had to be put up overnight for a flight out the next day. Basically arriving a day late.

Had lots of other examples, but indeed, deadlines make no difference whatsoever when the plan fails to match the reality.

It is the plan that is important, not the deadline.

I can also say from developing software for several major events that occurred at specific times — there is no slipping of the date, ready or not — that the process is much more oriented towards managing the balance of development and scope than all-nighters. Sure, there's a few of those, but the overall key to the making the deadline is having a manager who can keep pruning the tree and keeping distractions at bay.

this is exactly how air travel works though. if your incoming flight is delayed you get delayed regardless of what the schedule says. setting a deadline does nothing to address the lack of a plane. the plane arrives when the plane arrives
I think you provided an example for the exact opposite of what you wanted to express.

An airplane better arrive before running out of fuel. Somewhere, at least. That's a real deadline. You can't negotiate yourself out of that one. Empty tank == you will land NOW. One way or the other. So this is all full of safety margins, extra fuel, alternates, etc etc. But there is a time span which every flight will not exceed. Guaranteed. The pilots better be prepared for this, otherwise they die.

A flight is usually structured with many "lesser" deadlines. Latest time to abort takeoff. Latest time to turn to an alternate. Latest time for this-or-that to make for a safe landing. Glide slope. Localizer. The whole procedure to land a plane is full of deadlines. If you miss one, you execute a go around. Until you are out of fuel, then you better nail it.

So, no. Deadlines are not pointless. They can make the difference between living and not living.

So air travel pose covid?