this post was submitted on 05 Jun 2024
423 points (94.5% liked)
Programming
17540 readers
69 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 [email protected]
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Agile software development bases on four core values (paraphrased to make them more drastic but not change them in their meaning):
I am not surprised that this fails miserably.
I'll rephrase them, except in good faith:
Talking directly to the people about the work is better than a 95 state JIRA pipeline
Document your finished working work, not every broken POC, because that's a waste of time
If the contract isn't actually going to meet the desires of your stakeholders, negotiate one that will
If you realize the plan sucks, make a better plan.
My company paid to have Kent Beck come to workshop with our Sr devs. I expected to dislike him, but he won me over pretty quick.
I don't remember what it was, but someone was like "Kent, we do X like you recommend in the manifesto, but it creates Y, and Z problem for us"
And he was like "So, in your situation it isn't providing value?"
Guy was like "No"
"Then stop doing it."
It's not hard. It's the most fucking common sense shit. I feel bad for them because these guys came from a world where there were these process bibles that people were following. So they wrote like, basically a letter saying "if your Bible doesn't serve you, don't follow it"
And all these businesses dummies were like "oh look, a NEW bible we can mindlessly follow"
It assumes that: devs can and have the right to talk to the final user, devs can negotiate anything, and devs can make plans. Where I've used agile, the whole circus was taken hostage by the managers and there was nothing you could do about it.
You'll tell me it's not real agile, but it's like real communism, I've never seen it.
I mean, I've never seen a real platypus but I'm not going to use that as a justification for why they can't exist.
I don't know what to tell you. It's a spectrum. I've worked in shops that claimed to be agile but to them, that just meant JIRA and story points. I've worked at places where agile meant having daily standups.
And I've worked places where there actually was a genuine attempt, and that was an awesome place to work.
Agile development reminds me of the Life of Brian.
He's giving sensible and well meaning life advice but all the people want is to follow the gourd.
I’ve worked on supposed “Agile” teams that operate this way, and worked on an Agile team that actually work ridiculously well. The biggest issue with Agile isn’t the philosophy, it’s when management starts using it to cut costs. This comment is what it turns into. Notice that every single one of these points lower cost. But one of the main assumptions of Agile is that the workers control the work, managers support the workers. The places I’ve been where Agile didn’t work it was because management was unwilling to buy into this basic assumption, then use Agile as a crutch for not giving the team what they needed to be successful.
The one successful team I was on that was Agile, the entire group of around 12 worked directly with the customer, and our manager’s role was to ask “what do you need”. It was hands down the best dev role I was ever in (before I became a teacher).
I understand the frustration; almost nowhere does agile "right". However, this is a gross misrepresentation of the philosophy.
Specifically it leaves out and ignores this very important part:
As seen on agilemanifesto.org
The base philosophy is meant to remind us what we are here to do: make software (or whatever project we're working on), not become dogmatic about processes or tools or get bogged down in peripheral documentation.
This just in: intentionally misrepresenting something has a 100% chance of it being misrepresented.
Let’s try again:
eXtreme Go Horse Methodology
This has been my experience of agile in multiple workplaces.