One Defect, Two Fixes

Posted February 18, 2020 by Joshua Kerievsky in Continuous Delivery, Extreme Programming, Mob Programming, Refactoring, Software Design, Test Driven Development

In A Tale of Two TDDers, I quickly documented what I see as two different defect-fixing behaviors of Test-Driven Development practitioners. I spent all of about ten minutes writing that blog. It generated a lot of interesting discussion, some of which bordered on deep misunderstanding. More detail would have helped. And so I dug through […]
Read more

No comments


A Tale of Two TDDers

Posted February 12, 2020 by Joshua Kerievsky in Extreme Programming, Software Design, Tech Safety, Test Driven Development

The story you are about to read is as much about customer responsiveness as it is about software development. The story lies at the intersection of the principles, Deliver Value Continuously and Make Safety A Prerequisite. Finally, the story is based on real-world experiences in a real code base. Let’s begin… A customer reports a […]
Read more

No comments


Becoming Test-Driven

Posted January 16, 2020 by Joshua Kerievsky in Extreme Programming, Software Design, Test Driven Development

Many decades ago, people often had a stack of equipment for playing music and video. Typical stacks included a cassette player, compact disk player, VCR or DVD player, television, cable box for watching cable television and maybe even a turntable for listening to vinyl records. You’d need an audio/video (AV) receiver to take all of […]
Read more

No comments


Shortest Longest Red

Posted September 3, 2019 by Joshua Kerievsky in Extreme Programming, Learning, Software Design, Test Driven Development

To measure how long they were “in the red”, Ward suggested that one programmer in the pair take on the additional responsibility of being the time keeper. They’d keep time of any period during which one or more tests were red.
Read more

No comments


Reasons for Extracting Methods

Posted October 12, 2017 by Tim Ottinger in Extreme Programming, Refactoring, Software Design

When we are refactoring, and especially when we are teaching refactoring, our partners are surprised to see us extracting methods which are only (currently) called once. There is often an assumption that the only reason for extracting a method is so that you can call it from multiple places in the code base.</p> While this […]
Read more

No comments


Modern Agile

Posted November 3, 2015 by Joshua Kerievsky in Agile Transition, Anzen, Anzeneering, Culture, Estimates, Extreme Programming, Kanban, Lean Startup, Mob Programming, Modern Agile, Refactoring, Software Design, Tech Safety, Test Driven Development

Have you ever seen someone using an older laptop and just felt bad for them? That’s how I feel when I see most people practicing agile these days. We’ve advanced so far beyond where agile was in the mid 1990s, yet so many teams practice agile like it’s 1999! Meanwhile, agile/lean pioneers and practitioners have […]
Read more

55 comments


Agility Requires Balance

Posted January 28, 2015 by Joshua Kerievsky in Agile Transition, Anzeneering, Extreme Programming

Most agile software teams have a serious imbalance in technical and managerial agility. The imbalance begins early, as many teams and organizations believe they will be agile simply by adopting agile management practices like sprints, standup meetings and storypoint estimations.
Read more

No comments


Benefits of Continuous Deployment

Posted April 10, 2014 by Joshua Kerievsky in Anzen, Anzeneering, Extreme Programming

Is Continuous Deployment (CD) genuinely beneficial to organizations or just a technical geek obsession that doesn’t really provide value? I will answer that question by describing Industrial Logic’s experience with CD, which began in 2010. To get CD to work, we first had to make our Continuous Integration rock solid. Doing that forced us to […]
Read more

4 comments


The History of Microtests

Posted April 9, 2014 by Ingmar van Dijk in Agile eLearning, Extreme Programming, Learning, Test Driven Development

At Industrial Logic we use the term microtest instead of unit test. What is a microtest and why don’t we use the standard industry term, unit test? Watch Mike Hill (aka Geepaw Hill) explain what microtests are, how they differ from unit tests and their connection to Test-Driven Development.
Read more

4 comments


Selenium Testing: More Dangerous than We Thought?

Posted October 24, 2013 by Patrick Welsh in Agile eLearning, Extreme Programming, Learning, Tech Safety, Training

Selenium (Se) is a useful but dangerous tool. For example, it is extremely useful for cross-browser, multi-page scenario testing.
Read more

No comments