6 ms·
Yes, imagine air travel wasrun like that: "The plane must be ready by December 1st!" Proper safety checks wouldn't let the plane leave the ground. Delays in th
by ahaproudowl 4y ago
Yes, imagine air travel wasrun like that: "The plane must be ready by December 1st!"
Proper safety checks wouldn't let the plane leave the ground. Delays in that critical state are inconvenient, but you accept them because the alternative is not acceptable.
We should treat software in exactly the same way, It's ready when it's ready.
The issue is the illusion of control. A bad CEO will measure the performance of his CTO by productivity alone. A good CEO will measure the CTO's output by consistently increasing quality.
- hef19898 4y ago>> Yes, imagine air travel wasrun like that: "The plane must be ready by December 1st!" But that is how it is done??
- ahaproudowl 4y agoThe delivery date of an airplane and it's flight schedule are two completely different things. The delivery date is an estimate and the date can shift until the plane is safe to fly. The deadline for delivery is not a true deadline and the factory will only work to its safe production limit to deliver the plane. A bad practice would be to just put the plane out on the tarmac, regardless of state. It works to the safe productivity limit of the factory, not the arbitrary demand of the customer.
- hef19898 4y agoOh dear, do you have any idea what, say, Emirates will do to Boeing and Airbus if the promised delivery date is missed? And how airplanes are built and delivered? Hint, delivery dates are not estimates and proposals that might be met, or maybe wont. And what makes you think planes don't have to safe for flight, with controls and sign offs, before take of?
- lmm 4y ago> Oh dear, do you have any idea what, say, Emirates will do to Boeing and Airbus if the promised delivery date is missed? And how airplanes are built and delivered? Hint, delivery dates are not estimates and proposals that might be met, or maybe wont. Both Boeing and Airbus have missed a bunch of delivery dates this year and will continue to do so. For some of them they're blaming regulatory approval. Guess what, it happens, life goes on, people in that industry can at least recognise that it's better than flying a plane that hasn't been approved. > And what makes you think planes don't have to safe for flight, with controls and sign offs, before take of? They do, and again the point is: what happens if the plane isn't ready? It doesn't fly until it is. They don't ignore the checks because they have a deadline.
- deleted 4y ago[deleted]
- hef19898 4y agoMissing a deadline doesn't mean that deadlines are pointless. And yes, Airbus and Boeing missed those. Guess what, they had to pay contractual penalties. You want to do creative work without deadlines and real world consequences for missing those? Become an artist, a rich one preferably because sponsors and exhibitions are a thing in the art world, too.
- pverghese 4y agoDepending on the contract, missed deadlines usually have penalties. There is a reason for deadlines, especially for complicated projects. The reason being other people have to plan their time to make use of their available resources profitably.
- awb 4y agoCustomer’s demands are rarely arbitrary. Time is money and there are typically many moving parts to any corporate strategy. For example, if the customer’s plane isn’t delivered on the agreed upon date, you now have pilots, flight attendants, mechanics, etc. that need to be paid for no work, or let go and new hires made / trained at a later date, which is expensive. It’s also lost revenue and market opportunity. There’s also the potential that the customer cancels their order and buys a different plane from a different manufacturer. Agreed you can’t put out a plane that’s not safe, but you can pay overtime, or shift resources between projects, etc., to produce a safe plane and try to deliver on time and limit the above negative effects on the customer. In general, if you ask someone when they want something done by, they usually say “as soon as possible”, not because it’s arbitrary but because there’s typically real world value in completing a task / gaining access to an asset sooner rather than later.
- lelanthran 4y ago> The delivery date is an estimate and the date can shift until the plane is safe to fly. The deadline for delivery is not a true deadline and the factory will only work to its safe production limit to deliver the plane. Boeing and Airbus tend to hit their deadlines for supplying planes all the time. Where is this hypothetical universe where they refuse to give a deadline, or refuse to meet it?
- tsimionescu 4y agoHaving a deadline (plane must be ready by December 1st) and missing the deadline because of quality issues (plane was not air-worthy by December 1st so we can't let it fly) are not mutually exclusive. Deadlines do not mean that quality has to be sacrificed. Even for the most objective deadlines (contractual obligations, holiday promotions), there are alternatives to releasing a low quality product, and the pros and cons must be measured. Does paying damages for failing to live up to the contract beat the reputational (or even legal) damage of releasing a low quality product that technically meets contractual obligations? Then a responsible company will pay those damages. Does releasing the product on time for Christmas, even with the level of bugs known and/or potential unknown ones, gain you more good will than delaying it by a few weeks? Then uphold the deadline and promise a patch soon after.
- ahaproudowl 4y agoThe deadline is an arbitrary guess, based on experience of when something will be ready. Of course delivery dates are important, quality is also important. The author I think could phrase the argument better by saying a delivery date (something that is promised, based on quality) is more useful than a deadline (something demanded, regardless of quality). Delivery dates do not preclude working hard and bring prudent, but they are not hard stops. Rather they are good estimations that can and often do shift. Sales team needs that thing by December 1st? Don't ask for it on November 29th. Put leeway into the model by giving time for the delivery date to be missed. It's called contingency. But, depends on your philosophy - move fast and break things,or deliver consistent quality code.
- tsimionescu 4y agoDeadlines and delivery dates are the same concept. The alternative the article proposes is entirely different - it proposes a work queue system, where the team is always working on the most important current task(s), and where every task that is taking longer than some pre-determined number of days is re-evaluated to make sure it is still as important as believed. > Sales team needs that thing by December 1st? Don't ask for it on November 29th. Put leeway into the model by giving time for the delivery date to be missed. It's called contingency. That's not how the article thinks. Instead, it views it as "sales team needs some task done by some date? move it to the top of the work queue as soon as you know about it and the team will finish it as fast as possible anyway". Will that be before or after December 1st? No one knows, no one cares: it will be done as soon as possible. For inherently fixed scoped tasks (say, "our product must ask users for consent before collecting data"), this can work fairly well. But I don't think it is realistic for the vast majority of work, which is far more vague in terms of scope.
- sooyoo 4y agoYes, 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.
- selcuka 4y agoObviously the OP is talking about developing and manufacturing a plane, not flying it. Your example is a schedule, not a deadline.
- ahaproudowl 4y agoYou 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?
- sooyoo 4y ago> 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.
- traceroute66 4y ago> Yes, imagine air travel wasrun like that: Erm, except air travel DOES run like that. Deadlines are at the very core of air travel. The crew agree on a flight plan and file it. If the aircraft goes AWOL and does not arrive at its plan waypoints by time + buffer, then all hell breaks loose. There are also deadlines for landing slots, deadlines for flight closing, deadlines for this, that and everything else.... Aviation without adherence to deadlines would not work. As for maintanance, airlines keep a ready stock of parts and have relationships with maintenance organisations at all major airports. There are also regular scheduled inspections. An aircraft on the ground is a loss making asset, it is in the airline's best interest to maintain the to flightworthy standards at all times.
- galangalalgol 4y agoIn that case deadlines are useful because you have so many people depending on you that you don't know which or how many of them have real dead lines. That isn't as common in software I think? But needing a new working iOS by ship time for the next phone? That is a pretty hard deadline, and why apple doesn't use agile. They say agile doesn't support synchronous hardware/software releases. The problem is when I bsupport multiple efforts, some with deadlines and aome without, the ones with deadlines always get "done in a minute" descoped so that I don't starve an ongoing que as is described here.
- Frost1x 4y agoYour point is very valid to the above but I'd like to fix GP's example. The distinction here is that what's being discussed is more about deadlines that are built around systems that are already deemed stable and mature, already went through all these processes and now have a fairly stable level of uncertainty and data surrounding it they can work with. Imagine more if the airline promised a flight would be ready using a brand new plane that was just now being designed out or at some stage in development someone unknowledgable felt comfortable to start making promises about timelines and even extrapolating out production. New plane designs and manufacturering take years and years sometimes. Have all sorts of delays, have safety issues that require them to redesign things later and so on. You don't see a lot of new plane designs you see the same known things used over and over. It's one thing to make forecasts around fairly well known, established, and mature systems and processes, it's an entirely different beast doing so around less known systems and processes. The vast majority of software engineering and development is done around something new or different that has little contextual reference. If you do have reference then you're rebuilding the same things using the same pattern and it won't be long until libraries, frameworks, systems, processes, etc. emerges to automate that at which point your time shifts to the new things you need to automate which haven't been automated or done yet (again, otherwise you'd just leverage the prior work). Planning to make a site using something like say Django vs building a new framework with different features like Django are very very different and a lot of development is trying to do something unique and new which means high uncertainty.
- JumpCrisscross 4y agoBoeing having missed its deadlines for a decade doesn’t mean aviation doesn’t have one. If anything, Boeing exemplifies the flaw in this philosophy.
- Spooky23 4y agoIt is. “The plane in Chicago now will be ready to take off from Phoenix at 7:45 AM tomorrow. You build process around things to make them happen. Nobody is waiting for some artisanal process to magically produce a plane. There’s maintenance and cleaning schedules, crew schedules, etc. The preflight check is a final verification. A good CEO measures the performance of the CIO by availability and quality of services. The CIO looks downstream to ensure that the operations teams have appropriate processes in place.
- osigurdson 4y agoTime is a factor in almost every human endeavour. Either internal or external motivation to get something done "quickly" is often needed. Otherwise, we start attempting to optimize all variables instead of the ones that actually matter. The problem is external artificial pressure almost never helps.