this post was submitted on 08 Jun 2026
22 points (92.3% liked)

Programming

27195 readers
248 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 3 years ago
MODERATORS
top 10 comments
sorted by: hot top controversial new old
[–] Supercrunchy@programming.dev 17 points 15 hours ago (1 children)

I don't think I ever worked in a company doing real agile (involving customers early and directly, shipping frequently, gathering feedback, and changing the process if it becomes an obstruction). It always ends up being all about random metrics, velocity reports to management, and """requirements""" dictated from high up. It's always just chaos that names itself "agile" as a poor excuse for the lack of planning. You get the worst parts of waterfall (lack of feedback and validation) with the worst part of agile (lack of specs and medium-term plan, no project management). No estimations, no requirements, no plan, no coordination between teams, but the deadline is fixed anyway and the feature has been sold to a customer already. The customer is going to see the product for the first time after 6 months of development, after which the priorities shift immediately and no feedback is ever addressed. AI is not going to magically make management write good requirements and have a good planning session with everybody involved... it's just going to create even more unreviewed AI slop documents that are just noise and will be ignored by most anyway.

If I had a dollar for the number of times I've heard some CEO proudly declare in an all hands meeting that all his CEO buddies just LOVED the latest gleaming turd that we're trying to speed run towards a failed MVP, I could buy myself a nice dinner. Tip included.

But those people are virtually never the target user. And they don't really care what the target user thinks. They just think anything that has the remote whiff of dollar signs is a good idea.

[–] CompactFlax@discuss.tchncs.de 10 points 15 hours ago

It never left…

[–] daeraxa@programming.dev 8 points 15 hours ago

We do waterfall still. We just call it agile because there are scrums and standups.

[–] codeinabox@programming.dev 6 points 16 hours ago (2 children)

This is a fascinating article about the history of software development. For me the key quotes are:

The thing that killed Waterfall was that discovering your spec was wrong months later, after lots of code had been written - and fixing it cost a fortune because writing code was the most expensive part of the process.

The key reason Agile was invented was to account for the high cost of writing code, so yes, that part of the Agile value proposition is no more.

The risk isn’t that AI development is inherently Waterfall. The risk is that organizations with latent Waterfall instincts will use spec-generation as license to do the bad thing they always wanted to do — front-load requirements, skip customer validation, equate a fancier document with a better outcome, and ship one massive thing every quarter.

[–] Freeposity@lemmy.world 7 points 16 hours ago (2 children)

equate a fancier document with a better outcome

"The steering committee spent months on this spec, how many days will it take you to build it?" is an attitude I get far too often. These people always seem to think that conceiving of a piece of software is the hardest part of the process and they come close to breaking their arms patting themselves on the back for doing their part.

[–] bitfucker@programming.dev 2 points 15 hours ago

A well thought out software architecture is indeed worth a lot. So a group of engineers that are able to actually make accurate architecture and decisions from the get go would help a lot. But the problem is requirement changes. And that's the core issue.

For something relatively set in stone like a car control system for ICE timing and whatnot, the requirement will not change by the fact that it is tied to another design which must also have been fixed beforehand and cannot be changed easily mid way willy nilly like software.

The engineer designing the engine must do a lot of administrative tasks again to make sure they pass every regulation under the sun when a change is made. We, the software guy does not have the equivalent of those barrier when a service requirement change. At most it is something about data privacy and security but that's about it. Everything else is fair game

[–] kibiz0r@midwest.social 1 points 13 hours ago

A spec that’s more than a single page rarely survives initial contact with reality.

[–] dreadbeef@lemmy.dbzer0.com 1 points 10 hours ago

Agile came from toyota? It wasnt invented by software companies

[–] vrek@programming.dev 1 points 11 hours ago

I feel like both are valuable for different purposes. Do you really have specific requirements? For example a piece of software to dispense a defined amount of a medication into a bottle. It requires plus/minus 1 ml accuracy for health safety. It will use Acme Corp stepper motor to operate the dispenser which has its own requirements. It will operate on arm based Linux for low cost. These are requirements, they will not change. We will sell the device with a high definition screen with 1080p(no one is gaming or watching movies on a medication dispenser, no need for 4k or 8k).

Then there are more agile things. Some pharmacies are 24hrs, the users want a dark mode so it's easy on eyes at night. Don't write specific colors for buttons into your requirements at beginning. Some prescriptions are sold between 10ml to 5 L(making up numbers) so users want a touch pad to enter values instead of up and down buttons(pressing up 5000 times would be a pain). How users enter amount should not be a requirement at beginning. These can change and should use a agile approach.

Requirements in my mind are things were changing is a huge investment and would require a new round of design. Those should be defined up front. That's waterfall. Other aspects should be easier to change based on whims of customer. That's agile.

If a customer says we like your software but want to use Other Corp motor, no sorry not compatible. If customer wants their logo in corner should be doable.