Harmony and Identity: Generalizing Code

Posted July 21, 2016 by Bill Wake in Refactoring

Do you find yourself creating code for similar methods or classes, and feel like it shouldn’t be so hard? You may be able to Harmonize Code and Introduce Identity Elements to make methods and classes melt away.
Read more

4 comments


Small Things

Posted July 14, 2016 by Tim Ottinger in Learning

Large changes are hard. Hard enough that they seldom happen, outside the context of a crisis. What if changing wasn’t a traumatic event but a lightweight, continuous process?
Read more

No comments


The Swap Statement Refactoring

Posted July 7, 2016 by Bill Wake in Refactoring

When we wish statements were in a different order, the Swap Statement refactoring sometimes lets us swap them.
Read more

No comments


The Nested-If Swap Refactoring

Posted June 22, 2016 by Bill Wake in Refactoring

You sometimes would prefer that two nested if statements were in the opposite order. The Nested-If Swap lets you change that order—under certain circumstances.
Read more

No comments


Isolate-Improve-Inline: The 3-I Refactoring Tactic

Posted May 5, 2016 by Bill Wake in Refactoring

I often find myself using a particular multiple-step refactoring pattern that I call 3-I (or III): Isolate-Improve-Inline.
Read more

3 comments


Whole Stories for Whole Teams

Posted March 4, 2016 by Bill Wake in User Stories

What do we do about stories that are too big for small teams? The most common solution is to form a large team, grouped into sub-teams by subsystem, layer, or technology. Then turn too-big stories into two-level stories: an upper-level whole story that makes sense to a user, and lower-level stories organized according to the […]
Read more

2 comments


Grist for the Mill

Posted February 16, 2016 by Tim Ottinger in Anzen, Anzeneering, Coaching, Culture, Estimates, Learning, Mob Programming, Tech Safety

Let’s say that I ask you to calculate all the happy prime numbers between Planck’s constant and the speed of light expressed in meters per minute. Did you immediately start reciting numbers to me? Odds are that you did not.
Read more

No comments


Refactoring – Prepare, Improve, and Clean

Posted January 8, 2016 by Bryan Beecham in Learning, Refactoring, Software Design, Test Driven Development

Refactoring is at the heart of the way we improve code. We make changes to the code for the purpose of making it easier to understand and easier to modify while maintaining the same behaviour.
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, 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

53 comments


Hazardous Code Death Spiral (and a Cure)

Posted November 2, 2015 by Bill Wake in Refactoring

Hazardous code begets even more hazardous code—eventually.
Read more

No comments