upvote
IMO (also 30 years in the biz), it's rarely the date, that's #2. it's the budget.

They'll forgive you if you're slightly late, they'll hate you forever if you ask for more money.

Agile works really well if you have a good product owner that has secured appropriate budget for the level of uncertainty in the endeavor & can make decisions and not be overridden by extrinsic forces. Everything else is negotiable.

reply
To me, the _real_ thing that matters isn't quite date or budget, but something that somehow acts as an umbrella to both of them: the promise. When you promise to deliver something by a day, or within a budget, it's very clear whether you met your promise or didn't. However, when it comes to functionalities, there is more of a grey area: you can start to argue that something _mostly_ works, that some bugs are always inherent, or that this functionality actually is not really needed because the problem can be fixed in an operational way, or that the requirements have changed, or that it was just a nice-to-have... but money/time don't have this grey areas.
reply
The corollary is that it's only the budget that is tracked that anyone cares about.

Often your salary is not on that budget, so if it takes you twice as long but you don't have to buy/hire/use AWS, winner.

reply
> the date is _always_ more important than the actual deliverable. Always.

Hah! You just gave me an idea for a new methodology. Date-bound delivery.

- The business tells you what they want, as they do

- The business tells you when they want it, as they do

- The team does not say how long it will take. Instead, they say what they think they can deliver in the time allotted.

- As the date nears, more edge features get trimmed

- As the date arrives, something is always ready to deliver, no matter how miniscule

Such a methodology would ensure delivery, but not necessarily the contents of that delivery. Post mortems would no longer discuss why something took so long, and instead would focus on why features were cut.

If, as you say, the date is always more important, wouldn't such a methodology be worth trying?

reply
that's really what agile was supposed to be. at least in the places where I saw it was successful.

every week, something is delivered, and is demoable, with approved tests from the business. That thing represents the most important thing to the business relative to the risk prioritization from engineering & usability prioritization from design.

every week, priorities can adjust, etc. and the cycle continues. hitting the actual 'release date' becomes much more knowable when you see the tangible date-driven progress on a regular cadence.

reply
Yes, but expanded to the full deadline instead of only the short iterations.

The business does not care about week long deadlines. They need something on May 23 so they can achieve _______.

My understanding of Scrum (not representative of all agile, I know) is that the velocity is supposed to be tracked and used for better predictions. In my experience this takes a very dedicated core of people who are intent on making it happen. In other words, usually it doesn't happen.

But date-bound delivery is already our default mode of operation. We just don't like to admit it. We are going to deliver something on this date; we just don't know what, yet.

reply
I completely am in favor of date-bound delivery.

However the point of the weekly cadence is that the business does care about adjusting scope and priority towards hitting that deadline on May 23, so that they know what they're going to get on May 23 and have the power to adjust it.

Especially if the goal of what is delivered on that date is not clearly defined. It almost never is.

Most projects can be summed as "give me $X, I'll come back in 6 months, and ask for more time and money". or "here you go"... "that's not what I wanted".

It's a key risk mitigation toward a hard date to know every week if you're still getting what you wanted.

Velocity is overblown as a metric. It's one metric among many that can signal a few things (e.g. quality problems because bug fixes are overtaking features) but isn't as much of a lever as some say.

reply
Yep I agree. Iterations are still good, demos are still good, ever-evolving scope discussions are still good, regardless of the overarching methodology.
reply
My technique was to always schedule the important (not difficult) things first.

That meant, that as the inevitable schedule crunch arrived, the things that were tossed in the skip were not important.

I call it "Front of the Box/Back of the Box." I basically got the idea from The Simplicity Shift[0].

[0] https://jenson.org/The-Simplicity-Shift.pdf

reply
That pretty much describes shape up : https://basecamp.com/shapeup

I have a mixed relationship to it, but the scope cutting part of it works extremely well.

The focus it brings on focusing on the problem solved rather than on the concrete solution is also healthy I feel.

reply
I love that LLMs are already copying humans when it comes to estimates. When asked for estimate they provide a very padded estimate of weeks.

Then they proceed to implement the solution in 30”.

reply
That's because LLMs don't actually think, they pattern-match. Since all the existing estimations out there are made assuming that a human is going to perform the task, the estimation that the LLM provides has the same inherent assumption. The LLM doesn't have a corpus of LLM-led estimations so it cannot take that into account.
reply