Ahead of the Agile Australia 2011 conference this year in Sydney, I was lucky enough to both present and sit in on the pre-conference workshops.
From Agile Australia 2011 |
First Steps in Agile
On behalf of the Agile Academy, Tony Ponton and I presented First Steps in Agile to a small but enthusiastic class. The course covers introductory material around the values, principles, practices and agile approach.
Alistair Cockburn – Introduction to Advanced Agile Development
I had the pleasure of sitting in the back for Alistair Cockburn‘s workshop, with Tony Ponton and Martin Kearns. Whilst I had seen some of this content in Alistair’s Agile 2009 keynote, Tony and Martin had been lucky enough to sit in Alistair’s 3 day class earlier in the year.
From Agile Australia 2011 |
Alistair does not use slides but rather a one page laminated handout. My comment to Alistair at the end of the workshop was “Second time hearing it, learnt twice as much”, so here are my notes from this time around.
From Agile Australia 2011 |
- advanced agile is not more tricks
- efficiency is short term horizon versus effectiveness which is long term horizon
- why is agile less efficient – agile people are looney because we keep changing everything over and over and over again (requirements, design, test) plus the skills needed to be around for the entire project
- why is agile more efficient – we make things more tacit which means teams work faster (not writing things down)
- shu, ha, ri (practices, theory, self awareness) – move up and down the scales
- The Oath of Non-Allegiance – “I promise not to exclude from consideration any idea based on its source, but to consider ideas across schools and heritages in order to find the ones that best suit the current situation.” – basically, I will not reject an idea just because of it’s heritage
- shu – when people encounter a problem, they want a technique (shoe box)
- ha – when you start collecting techniques
- ri – when you start making things up, merging ideas together
- there is often combat between the shu and the ri on projects
- craft – skills in a medium and life long learning – many 10-15 year programmers don’t see themselves in a craft, your medium is your programming language and for project managers the medium is people
- cooperative game – people issues matter, software development is the combination of invention, communication and decision making, agile has brought team collaboration the top level
- right level of documentation – might be more if people are joining and leaving the team regularly but might be less if the team is stable and there is little movement
- most efficient documentation is video taping two people at a whiteboard, faster than typing and easy to create – users to describe their problem, etc…
- design = distributed cognition – need to get everybody to understand the theory of how the whole works and a theory of a solution and we need to find the answer between the two that everybody can understand
- keep an open mind
- each project should keep the next project in mind
- a little out of balance is OK
- the length of a programming episode is 1 hour – separate slices to demo within a sprint – (see the Carparccio exercise)
- tip off for a bottleneck – “we don’t have time for…” or “spare capacity to develop…”
- learn early in the project to learn and reduce risk, then develop for value once risks are down, then deliver early or delay for scope / quality
- Zynga put in features that don’t work and count the clicks to determine whether to build it and other companies get users to pay a Paypal account and if they get enough money they will build the feature
- every month / iteration / delivery – reflection of what we keep and what we try to do next month (two columns) – what we did wrong does not help me
- the people who know how to do more, learn more
- blitz planning as a different way to tackle estimation