Are You an Effective Software Developer?

In a recent article I wrote about preferring Effective Software Development (ESD). I prefer being effective over being labeled as “agile” (whatever that might mean to you personally). This preference raises many questions for me. How do I define effectiveness? How do I know if I’m being effective or not? How can I become more [...]

“Agile” Without a Name

There’s been much discussion and debate in various forums about the evolving use of the word “agile” to describe software development. Some people involved in the discussion have suggested creating a new term to replace “agile”. In most cases, I don’t support replacing terminology. However, the term “agile” seems to have suffered so much semantic [...]

XP Values, Principles, and Local Adaptation

I’ve seen recent discussions in various forums about the meaning of XP values and principles. Here are my current working definitions. Values. A description of preference between alternatives. Often the alternatives represent candidate courses of action and the value guides the selection among the alternatives. Sometimes values are basically axioms. They can be irrational in [...]

Technical Debt: The Threshold of Acceptable Pain

Why do some teams allow technical debt to accumulate and others are better at recognizing the debt and actively reducing it? One possibility is a skill difference. This skill difference could be the result of differing experience or differences in intelligence. In any case, the theory is that a more experienced, skilled team will generally [...]

Agile Methods Incompatible with Human Psychology?

Kevin Brady claims they are in his recent blog article “AGILE /SCRUM Fails to get to grips with Human Psychology“. After reading his article, it seems it should have been named something like “Agile Methods Do Not Cure Dysfunctional Organizations”. I believe the latter is true. I think agilists understand this at some level and [...]