How do you develop expertise? Peter Norvig writes:
The key is deliberative practice: not just doing it again and again, but challenging yourself with a task that is just beyond your current ability, trying it, analyzing your performance while and after doing it, and correcting any mistakes. Then repeat. And repeat again.
For a developer, deliberate practice means trying new things, trying old things with a view to making them fresh and trying to move from accidental practice to intentional discipline. Deliberate practice improves technical agility through increased self-awareness. This includes how you approach existing code, new code, testing, working with colleagues and customers, and other aspects of software craftsmanship.
Agile Development is more than simply a revival of iterative and incremental development. Organisations, teams and individuals often fail to achieve the promise of agility. The subtlety of Agile Development is based on adaptability, team work and attention to technical excellence, not tools or project management techniques.
We will explore this subtlety through practice. Join us!