Episode 151: Software Craftsmanship with “Uncle Bob” Martin

Craig and Tony are at YOW! Conference and are honoured to sit down with Robert C. Martin (aka Uncle Bob), signatory to the Manifesto for Agile Software Development and author of numerous books including “Clean Code“, “The Clean Coder” and “Clean Architecture” and they discuss:

  • YOW! 2016 keynote “The Scribe’s Oath” as well as “Effective Estimation (or: How not to Lie)
  • Software craftsmanship has always been the work of individuals – not sure we have really achieved collaboration in programming
  • Pair programming – some surgeons like to wash their hands and some surgeons don’t!
  • Woody Zuill’s talk “Mob Programming, A Whole Team Approach
  • CODE – Uncle Bob’s “terrible” software development process before he stumbled across Extreme Programming and the wiki
  • Kent Beck’s “Extreme Programming” article for the C++ Report
  • The story behind the forming of “The Lightweight Process Summit”
  • The 1995 OOPSLA Scrum Paper
  • Jim Coplien “Borland Software Craftsmanship” paper and later “Organizational Patterns of Agile Software Development” – the foreshadowing of Agile as we know it today
  • Test Driven Development is something you learn over very many difficult weeks or months, it is a hard concept to teach, it is becoming more accepted but still slowly
  • “Clean Code” – had to abandon a tradition in software development when writing this book and laid out rules telling people what to do
  • “The Clean Coder” – was a backlog from “Clean Code” about how to be a professional programmer
  • The ranks of programmers are doubling every 5 years, so half the people doing the work have less than five years experience, the industry is in a state of perpetual inexperience
  • Programming 101” on cleancoders.com – we need to understand the basics
  • Craftsmanship movement began as a response to the technical community feeling like they were kicked out of the “agile” house that they built as it became more about people and process – the desire is to bring the two camps back together
  • Kent Beck said “The goal of agile was to heal the divide between technology and business” – the focus has been mostly on the business side
  • We need a set of ethics and standards that define a profession for software development – the agile and software craftsmanship communities are the right ones to do this as it needs to be done by practitioner
  • The Programmer’s Oath – a starting point for the ethics conversation

TheAgileRevolution-151 (45 minutes)

Advertisements

Episode 117: The Changing Role of a Tester with Mark Pedersen

mpCraig is at the YOW! Connected conference and talks to Mark Pedersen, the CTO at KJR, and they talk all things quality and testing:

  • the changing role of a tester in an Agile environment, it clarifies the role rather than making it blurrier
  • in an Agile environment it does not make sense to have a Test Manager role anymore
  • the number of dedicated testing roles are decreasing, but becoming more important and valuable
  • most organisations say that they use both waterfall and agile frequently
  • build your skills in either a quasi analysis / product owner / acceptance criteria role or get up to speed with sensible technical automation tools for your tech stack
  • TDD – good idea but not many organsations practicing it in a dedicated way, unit testing in most industries is a luxury
  • BDD – does not make TDD obsolete, defining acceptance criteria upfront helps understand what we need to code
  • pair programming – does not deliver much benefit from a test perspective, unless the tester has technical expertise, adoption is still very low
  • YOW! Connected talk “Building Mobile App Test Automation
  • mobile testing is challenging and IoT will take it to another level – customer expectations are higher for these devices, they are thought of more like traditional mechanical devices
  • mobile and IoT is driving the demand for testers to become more technical – more API and distributed technology tests

TheAgileRevolution-117 (37 minutes)