
The Most Often Ignored Agile Practice
Agile practices help you develop software that meets the user needs faster and safer???and that responds quickly to changes in the requirements, environment or technological advances. But, there is one

Agile practices help you develop software that meets the user needs faster and safer???and that responds quickly to changes in the requirements, environment or technological advances. But, there is one

Building software used to be simple. You worked on one system with one executable. You compiled the executable and if the compilation passed, you could run your executable and play

The traditional view of productivity and how to improve it is completely backwards. Most people think of productivity as a personal attribute of themselves (or their subordinates). X does twice

In Rational Tech Adoption, I discussed how to decide about whether or not to adopt new technologies. But that decision is not context-free. There is always a switching cost. If

My favorite Agile methodology, Extreme Programming, has five main values: Simplicity, Communication, Feedback, Respect and Courage. The first four are relatively uncontested???everybody agrees on these four. Courage is different. Courage

“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough

The ability to hire excellent software developers is a limiting factor. There is a real shortage, and as a result there is serious competition for every qualified candidate. As a

Before the Agile Manifesto?there was Extreme Programming. I discovered it through the http://c2.com wiki???the first wiki and was instantly impressed. Extreme programming is indeed the extreme. There are values such

Agile methods can accelerate development significantly compared with traditional methods. This is true in particular for programming where fast edit-test-deploy cycles are possible even on a massive scale (look at