To quote Doctor Tolian Soran, the villain in Star Trek: Generations, “time is the fire in which we burn.” In a little less fictional of a context, the historian Robert Bloch has said of time that “it is the very plasma in which events are immersed, and the field within which they become intelligible.” Beyond those sentiments, time is also what provides us with a keen notion of polarity, by providing two aspects around the project singularity I talked about. So let’s talk about polarities and time and see if we can’t make this relevant to testing as a discipline.
I was going to title this post “Testing is Like Archaeology.” Then I was thinking of “Testing is Like Geology.” But then I realized, as my argument took shape, that I could have said testing was like paleontology, or geomorphology, or even biography. I realized then that what I really wanted to focus on was how testing was, oftentimes, about studying the past. But to drive that argument home, let’s consider why we study the past. And let’s also consider why such study informs the future.
Geometry is about getting from one place to another. It’s about looking at where we are and where we want to be. Or, perhaps, it can look at where we are now and help us backtrack to where we came from. However you use it, geometry takes place over a certain region of space and time. Space and time — whether looked at in the context of cosmology or just on our projects — is all about dimensions. So let’s talk about this a bit.
In mathematics, a singularity refers to a point that is basically undefined because it is infinite or what is known as degenerate. In physics, a singularity is a “region” that has infinite density with an infinitesimal volume. So what do this extreme concept have to do with testing? Well, let’s talk about that.
What do maps do? Well, let’s think about how they great created. They get created by humans. So maps essentially distill the experience of others for the purpose of helping you understand a particular terrain. Maps help you get from where you are to where you want to go. Maps thus serve as a way to package up a vicarious experience by providing a representation.
Cartographers are people who create maps and it is very much a discipline. Further, it’s a discipline that shares a lot with testing. So let’s talk about that.
Everything we rely on is in the past. Even the very moment of “now” became the past just as you read this. As the future gets here, it becomes the “now” and — you guessed it — moves into the past. So while we may build services and applications for the future, our work immediately becomes part of the load-bearing struts of the past.
This reality, while simplistic sounding, has important ramifications because it means we have to move between polarities.
I was going to title this “The Irrelevance of Agile” but that struck me as an unfair title and not entirely indicative of what I wanted to focus on. Testers will periodically be involved in the “Is Agile Dead?” debate. Or even the “Agile is (Once Again) Dead” debate.
I’ve found these discussions to be an emotive area to wade into so I want to approach this from a different angle. This is me experimenting with thoughts rather than claiming to have any answers, so expect a bit of this to be somewhat muddy as I feel my way forward.
I wrote about how testing is like writing fiction. Testing can actually influence reading fiction as well. And reading fiction can be great practice for exploration in a lot of ways. I recently came across a good example of that.
What an awful blog title, huh? Testing and history? What am I even talking about? And the “human” element of history? As opposed to what? Have you ever seen a blog post that starts with such short sentences ending with question marks? Utterly awful. It’s like splitting infinitives. Or running sentences on and on (and on). Still with me? If so, let’s talk about history. And science. And the human aspect of both.
The more I talk with testers, the more interesting it becomes to consider how the industry has evolved — and often how testers failed to evolve with it. We still see testers talking about concepts in testing as if this was the early 1980s. Is this a bad thing? I think so but let’s talk about it.
I want testers to stop trying to “solve” the problems they’ve allegedly been trying to solve for decades now. I want testers to start looking at testing as a discipline that has a broad-focus, wide-angle lens. I want testing to start solving the real problems, including the ones that it has painted itself into. I want testing to get out of the reductionist and into the ecological. Let’s talk about this a bit.
In our testing industry we’ve borrowed ideas from the physics realm to provide ourselves some glib phrases. For example, you’ll hear about “Schrödinger tests” and “Heisenbugs.” It’s all in good fun but, in fact, the way that physics developed over time certainly has a great deal of corollaries with our testing discipline. I already wasted people’s precious time talking about what particle physics can teach us about testing. But now I’m going to double down on that, broaden the scope a bit, and look at a wider swath of physics.
It has been and continues to be my contention that many test and quality assurance interviews these days are handled terribly. I have seen, and participated in, interviews where candidates were barely tested for the wider aspects of how they think and approach problems at a human-focused level. Instead the focus is almost entirely about how they think and approach at the code level. So let’s talk about that.
In a previous post on test dogma and tradition, I talked about the famous “test pyramid” as an example of what people cling to as means of explanation. My concern there was that people often run too far with this or draw the wrong conclusions from it. Let’s look at a particular example of that.