Today I invented a phrase (at least I think I invented it because I haven't heard anyone else say it): "Avoidable Heroism."

I invented it in response to a question, "Should my team work on the weekend to meet a commitment made under their control?"

Now, I don't know the background behind this question. Maybe it's perfectly reasonable for them to work on the weekend. Maybe they have no agreement about sustainable pace. And, it raises a few questions in my mind. How often does this happen? How far from the commitment are they? When was the first, best opportunity to re-negotiate the commitment? How did it slip by? What else is happening that affects their ability to commit and deliver?

Avoidable heroism happens on teams when the system pressures the team into committing to "stretch" iteration goals (rather than evidence-based goals) and someone (or more than one someone) has to work nights and weekends to meet the commitment.

Avoidable heroism occurs when unit test coverage goes down, team members focus on cranking out quantity of code rather than quality code and "forget" TDD, so that at a certain point a team member throws themselves on the technical debt grenade and begins to clear away the debris.

Avoidable heroism ensues when team members hand the new code to the testers on the last day of the iteration, rather than including them as part of the cross-functional teamwork from the first day.

And so on.

In the 1980's (yes, I know that was before many of you were born), Tina Turner sang an anthem, "We don't need another hero!". Make it your own, your team anthem.

N.B.: I hope someone out there who's into writing anti-patterns will collaborate with me on documenting this one.