We seldom can go from one point to other in a straight line.
Problems in software are not polynomial. They get NP Hard.
During baby steps, we should not be interrupted. (or we will need to start over)
Programming is thinking. It is not related to typing.
on TDD we have automated consequence detection, fast context switching and executable documentation.
The worse bugs in the world are the ones you had no idea you just shipped.
We should maximize knowledge sharing to increase changeability.
The only requirement is for steps to be as small as possible.
TDD is not as simple as Red, Green, Refactor. It takes time to master.
We need to collaborate by mobbing, pairing and swarming.
They are not natural skills.
We live in a world of misconceptions of thinking knowing syntax is at the heart of the problems. Lots of people believe there's a technical solution to every problem and that it would be best for all of us to sit in dark rooms working quietly by ourselves.