“Look, that’s why there’s rules, understand? So that you think before you break ’em.” — Terry Pratchett, Thief of Time

On my recent post discussing the test automation pyramid, a reader asked if the pyramid is really a strict rule to follow. My first instinct was to clarify that it’s meant to be a guideline, not a rule – which is how I’d thought about it until then. However, keeping ShuHaRi in mind, I realized that the thing you see in the beginning as a crystallized rule is meant to turn at some point into a fluid guideline and ultimately into near imperceptible vapor as you move from the Shu phase to the Ha and then the Ri phases. So, whether something is a rule or not – or whether it even is – isn’t a property of that thing, but a matter of your own perspective – or even choice in this case. Depending on the Shu/Ha/Ri phase most closely matching your  level of maturity in test automation, you might find various benefit in treating it as a rule, a guideline, or nothing you need to be conscious of.

I got thinking about this distinction because of my recent attempts at practising E-prime. The idea of E-prime is really simple and powerful (though difficult to apply in the Shu phase): avoid the pitfalls of identity and predication in English by avoiding all forms of the verb “to be“. I’ve found that applying the rule of E-Prime (now, this is a rule, not a guideline – or is it?) to speech almost always helps in raising clarity of thought and lowering bias and judgement.

You could use E-Prime as a tool to analyze others’ questions and comments better. For instance, I stripped the question from the reader above of “to be”, rephrasing it in my mind as “Should my team/I treat the pyramid as a strict rule to follow?”, which I suspect is what he really cared to know. More importantly, using E-Prime to formulate your own speech puts a positive pressure on you to consider more of the context of a situation, and become more aware of your own biases and opinions as opposed to facts, than you might otherwise do. And that opens up the possibility of a much more nuanced discussion – in this case, about when, how, and for whom the pyramid might be useful, rather than an unproductive debate over misapplied generalizations and opinions couched as facts. So, applying E-Prime, my response to the above question, instead of being a simplistic “Yes, it’s a rule” or “No, it’s a guideline”, becomes more about applicability in context.

Wouldn’t it make us much more productive if we were to start seeing, applying and discussing rules in context? Of course, we’d have to be careful not to let our context hold us back. Now, if only I knew about a rule for when to “adapt” rules to a context and when to modify the context so it becomes easier to apply the rules.