June 28, 2018 // By Paul Grizzaffi
When I was a kid, I remember loving the Berenstain Bears book Inside, Outside, Upside Down. In the book, a child enters a cardboard box, is transported all over town, and is then returned home. I still have what is probably a first edition; yes, I’m that old… shhhh. I think of this book when I hear the phrase “think outside the box”.
“Think outside the box”; it seems like forever since I first heard that phrase. Throughout my career, my colleagues and I have often been challenged to think outside the box. The phrase typically means that we should not limit ourselves to conventional thinking, approaches, and tools which can constrain our approaches and implementations.
The reality, however, is that we often live in a box and necessarily so. Corporations can’t have everyone running around, irresponsibly chasing every new technology, tool, and approach. There must be some oversight, process, or control, or corporations run the risk of accidentally introducing something nasty into the organization or corporation (malware, suboptimal licensing agreements, accidental commitments, etc.). These are real threats that can have substantial negative economic impacts (i.e. the could cost the corporation a crapload of money). Corporations must also consider positive economic factors like per-seat license discounts for bulk purchases or exchangeability of COTS hardware.
Now, let’s talk about most people’s desired place: outside the box. As mentioned before, most of us are constantly challenged to think outside the proverbial box: new tools, new processes, new approaches, new technologies, new stuff that we haven’t tried yet, etc. It certainly sounds cliché; perhaps because it is cliché. Being cliché, however, doesn’t automatically discount its value. Some person or people in an organization need to be challenging the current boundaries; we can’t grow or evolve if we keep running in place. If we don’t grow or evolve, we stagnate, running the risk of being left behind by our business competitors.
Sometimes, there is a third option. In the automation space, we may be able to create a new box; indeed, we are frequently required to do so. New tools, new conduits, new approaches…to me these are the most fun and challenging parts of automation implementation. While we must take care to not be wasteful in our efforts by falling victim to the “not invented here” mindset, we also must not succumb to the pressure of adopting a tool or approach just because it’s popular or is the defacto standard; we must be willing to create when nothing that exists is appropriate for us.
We always have limitations, however. When thinking about these “outside the box” and “new box” aspects of automation, I’m often reminded of the fact that we seldom have carte blanche to work fully outside our box. Certainly, it’s worth thinking outside of our box and “blue-skying” our “ideal” approach or implementation for an automation solution that we really want and need. Reality will eventually intrude. We must fall back a bit and work “inside-outside the box”; hence the inspiration for the title of this blog entry.
I find this situation reminiscent of the movie Apollo 13. Specifically, I recall the scene where a team engineers are challenged to invent a solution that allows a square filter to be connected to the hole that needs a round filter; that’s their “think outside the box” mandate. They are constrained, however, by only being able to use those items that are already present in the spacecraft; that’s their limitation to remain inside the box, albeit a larger one than fitting that square peg into that round hole.
Certainly, we as testers and automators need to be cognizant of our corporate limitations, especially as they pertain to security, procurement, and legalities. That said, we must still challenge our current, perceived boxes; some boxes are resizable, and others only seem to be boxes. I’ve found these box-size challenges to be more successful when they are couched in a business context. Saying “I need technology/process X” is less effective than approaching a partner team with “Our corporate directive is to achieve Y; in order facilitate Y we need to accomplish Z; we really need your team’s help with that.” The emphasis on the word “Our” can make the process a more collaborative, problem-solving engagement that I’ve found has a higher degree of success.