I recently re-read Kent Beck’s book “Extreme Programming Explained”. If you haven’t read Beck’s book, it’s possible that you are missing out on many of the key values and principles that help guide Agile teams through rough times. It’s one of those books that “reads you” every time you read it… so if you haven’t read it in a while, I highly recommend the experience.
On this read through, the value of “Simplicity” really resonated with me in many ways.
This value is expressed most obviously with the work that I do as a developer on a day to day basis. It speaks to the careful and mindful use of my craft. No technology for the sake of technology or design for the sake of design. In everything that I do, I try to ask myself… do I really need it?
Simplicity also expresses itself in more subtle ways than craft. I try to apply the value of simplicity everyday by consciously taking the “path of least resistance” when it comes to asking questions or sharing information on my team. That is to say, I try to communicate in a way that offers the least possibility for miscommunication.
Lastly, the value of simplicity helps guide me when the endless “to-do list” either at work or at home threatens to overwhelm me. In which case, I ask myself… what’s the most important thing for me to do right now? I then subordinate everything else to that for a while. Warning: this can (and probably should) lead to dirty dishes sitting in the sink while you pick up your toddler to go to the park.
I’ll be the first to admit that I’m not always able to skillfully apply the value of simplicity to my work and life. But that’s one more thing that I learned by re-reading Beck’s book…. simple doesn’t mean easy.