Episode 145: Working Effectively with (Legacy) Code with Michael Feathers

Craig is in Atlanta at Agile 2016 and catches up with Michael Feathers, author of “Working Effectively with Legacy Code” and they talk about the following:

  • Working Effectively with Legacy Code originally started as a book about Test First Programming but morphed into a book about the techniques for refactoring code in legacy systems
  • The Pinned Progress Curve – for many people there is no incentive to change so the mean gets larger between the status quo and good practices
  • Agile Alliance Deliver:Agile conference
  • Organisations that have technical founders have a very different character to their work internally, need to make knowledge of the quality of software more pervasive – the business need to understand more about the technical side, and the developers need to understand more about the business
  • Code that has excessive error handling typically has other design problems – benefit in thinking about whether certain things should be treated as errors or not
  • Entropy happens in all systems, including code, so technical debt is not a surprise, need to make the case for hygiene, putting a dollar amount on technical debt does not add much value
  • Use low impact probing to determine whether code is dead
  • Potsel’s Law – an implementation should be conservative in its sending behaviour, and liberal in its receiving behaviour
  • State of quality is improving and there is more recognition to build quality in
  • Property based testing is becoming more prevalent as we move from object oriented to functional languages
  • Holacracy was designed by a software person, Sociocracy talks about applying democratic principles to governance, these are all interesting experiments
  • It can be hard to recognise if something is intrinsically difficult or not something you are familiar with
  • We weren’t really battling waterfall, it was the lack of any process at all…

TheAgileRevolution-145 (33 minutes)

Episode 123: Some Principles of Lean and Product Development Flow with Don Reinertsen

8265695783_995186c1ce_hCraig and Tony are at YOW! Conference and are privileged to spend some time with Don Reinertsen, who is considered one of the leading thinkers in the field of lean product development and author of numerous books including “Principles of Product Development Flow”

  • Principles of Product Development Flow” book and why there is a waterfall on the front
  • Japanese Manufacturing Techniques was the name before it was rebranded as Lean Manufacturing
  • Taiichi Ohno, the father of the Toyota Production System, hated math and thus preferred to sit on the factory floor and tweak processes, hence it was not a theory driven approach but rather empirically driven
  • Need to understand why things work so you can transfer it to other domains, a big shortcoming in lean manufacturing is that they don’t have much of a mathematical view on what they are doing
  • You can use magic in manufacturing because it is highly repetitive
  • People understand iterations are good to do but do not understand why
  • “Antifragility is beyond resilience or robustness. The resilient resists shocks and stays the same; the antifragile gets better” (Nassim Nicholas Taleb)
  • Agile software people are doing a better job at lean product development because software people have already crossed the chasm of inspect and adapt
  • There are many sources of variability other than just people, such as the Internet and the fact we are constantly doing things people have not done before
  • To get management to listen about cost of delay you need to benchmark what you are doing today
  • Agile eliminated the economic gene, hence it works well bottom-up
  • Easiest way to introduce quantitive based decision making is to find a project manager who wants an economic model (as they will be fighting for resources and the guy with the numbers will end up winning because they can communicate their needs)
  • Lifecycle pretax profit is far more useful than ROI
  • Start with Chapter 1 in the book – describes what is wrong with what we are doing today, then look for the tree that is ready to be pushed over in your organisation as there is no one way of approaching this
  • The low hanging fruit is: visual control boards, economic model, batch size reduction and WIP constraints
  • The first knob to turn is batch size reduction
  • It is 175 principles in small little batches that add value, it is not the ten commandments!
  • YOW! 2015 talk “Thriving in a Stochastic World

TheAgileRevolution-123 (38 minutes)

Episode 116: The Heart of Modern Agile

heartmodernagileCraig and Tony are sipping a sarsaparilla or two on a balcony in Brisbane and start trying to dissect the state and heart of modern agility:

TheAgileRevolution-116 (46 minutes)

Episode 101: The Lean Mindset with Mary and Tom Poppendieck

craig-poppendieckCraig catches up with two luminaries in the Agile and Lean space, Mary and Tom Poppendieck at YOW! Conference to talk about agile, lean, rapid feedback, culture and leadership. The discussion points include:

  • Making the link between lean and software development and discovering that waterfall makes no sense
  • The origins of the first book: Lean Software Development: An Agile Toolkit
  • Agile is not lean in software development, Agile is lean in a delivery organisation
  • How long does it take you to put a single line of code into Production?
  • The manifestation of lean really kicked off in 2010 with both the rise of DevOps and the Lean Startup
  • Delivery organisations versus engineering organisations and the journey of Agile
  • Agile has not well addressed delivering the right stuff, solving the right problem and the architecture of rapid deployment
  • Only two goals at ING: Deliver every two weeks and don’t crash production, resulted in rapid feedback loops
  • “The Penguin and the Leviathan: How Cooperation Triumphs over Self-Interest” by Yochai Benkler
  • Latest book: The Lean Mindset: Ask the Right Questions 
  • Create centres of good culture and let people find it, to survive in a competitive environment you need to do something different
  • Goal is to create an environment where people enjoy the challenge of developing software
  • The critical resource to be managed is not capital but the passion and energy of bright and creative people
  • People don’t resist change, they resist being changed
  • Build a change platform, not a change program
  • YOW! 2014 talk – The Scaling Dilemma
  • The military model – leaders have strategic awareness two levels down and situational awareness one level up and the concept of working leaders

TheAgileRevolution-101 (43 minutes)

Episode 88: Scrum Australia Anticast

weisbartsaAdam Weisbart turns the tables hosting an anti-podcast where he interviews Craig, Renee & Tony at Scrum Australia 2014 in Sydney on their highlights from the conference. The conversation included:

* Adam Weisbart’s “Agile Antipatterns” talk and his awesome Agile Antipatterns cards
* Craig Smith’s “40 Agile Methods in 40 Minutes” talk (and the methods on the cutting room floor)
* Agile movements are just as important as methods
* Tony mentions the original Winston W. Royce “Managing the Development of Large Software Systems” waterfall paper – why??
* Henrik Kniberg’s “Scaling Agile @ Spotify” keynote
* Matthew Hodgson’s “Backlogs, Story Mapping and Star Wars” talk
* Knowing one of the organisers like Star Wars helps!
* Renee Troughton’s “Darth Vaderless Daily Scrums” talk
* Important to know the expectations that everyone else should be having on each other to have a good Daily Scrum
* Emparting to a new team how to do an effective daily scrum
* Renee and her obsession with origami cranes
* Own the silence…
* David Bale’s “Build Your Own Scaled Scrum” talk (built on Adam’s Build Your Own Scrum)
* Drop Bears 
* Australia has lots of blending, more common to break stories smaller as opposed to tasks, we make proper tea
* Adam’s new project: Agile Adlibs
* Making retrospectives fun…

TheAgileRevolution-88 (27 minutes)

Episode 58: Don’t Drink and Podcast!

Beer CheersCraig and Renee are in Sydney and dangerously podcast after Renee’s one (1) drink and Craig’s two (2) drinks. Along the way they fumble over the following topics:

Quotes:

TheAgileRevolution-58 (55 minutes)

Episode 2: Squeeze your revolutionist today

SqueezeA fun filled podcast presented by Craig, Tony and Renee covering the following topics:

Quotes:

“I don’t program software anymore, I program people”

TheAgileRevolution-2 (43 minutes)