Justin Sheehy explains why a paradigm shift is necessary when dealing with large concurrent distributed systems and what are some of their requirements: no global state is shared, ACID no longer works but rather BASE and CAP, getting rid of RPC and using protocols over APIs instead, prepare for failure, degradation, understanding the harvest-yield balance, and using measurement.
Michael Nygard encourages us to have a failure oriented mindset in order to succeed. He presents many anti-pattern examples that lead to systems instability and ultimately lead to failure. He also presents the corresponding stability patterns that should be used instead.
In this presentation filmed during Agile 2008, Henrik Kniberg talks about 10 possible reasons to fail while doing Scrum and XP. Maybe the team does not have a definition of what Done means to them, or they don't know what their velocity is, or they don't hold retrospectives.
In this presentation filmed during Agile 2008, David Douglas and Robin Dymond discuss about companies which try to adopt Agile, but don't go all the way, resulting in failure and rejection of it, and predictably having a negative impact on Agile's future.