Why do we Hide our Face Behind our Hands but Then Peek Through the Fingers?
(4-minute reading)
Why do we Hide our Face Behind our Hands but Then Peek Through the Fingers?
(and how that made me relate to some annoyingly persistent software development practices)
I was doing my usual perusal of the Youtube channels I follow when, in the middle of an Extra Credits channel video related to digital games, they start talking about a strange and yet very human behavior – why do many people hide their faces behind their hands in a frightening or stressful situation but then peek through the fingers?
The video’s analysis went on to speak on how we are afraid of certain situations but are intrinsically driven by curiosity.
We’re most afraid of the unknown, of what our intuition imagines in the dark and loads with a heavy emotional charge.
We’re curious even in the case where we aren’t going to do anything with the information, even when we are frozen “in terror” and the end result will be the same but we just want to know.
My mind did a quick sidetrack here, focusing on this idea of things that we know are going wrong, ones’ we know how to correct, yet keep doing them wrong. Or just things we have an intuition are going to go a certain way, and we ignore it!
I did a free association exercise of this with something I was told a month ago in Amsterdam by a CIO who had just deployed a major new online solution this year.
His problem that still stuck in his mind?
While everything worked in Dev and QA, when the solution hit the live Production environment, one of the main features made the client select a product from a combo box with thousands of choices – totally invalidating the user interface and system of engagements made!
They ended up having to work overnight and the next day, changing both UX, UI and even the process itself, spending lots of stress and additional hours to alter this functionality and fortunately, they were using a low-code, fast-change enabling platform (#OutSystems) so it was even possible to do it in with a lower impact on the customer base.
Now obviously, something like this should have been caught in the design phase, etc.. But what weirds me out is that neither the developer (which I used to be) nor the testers (which I also did a lot) caught it. Because in their environments, there were just half a dozen records!
In my (previous?) developer life, and afterwards, as team leader/manager, I’ve seen this happening time and again – performance issues, interface text boxes that will not hold all the information, records whose information unformats the UI, workflows or status of current records who are not compatible with the new versions…
I’ve always been a fan of working in and with as much real data as possible – and yes, I know, there’s data security & confidentiality, GDPR, different hardware specs, and so on, but that is why I say “as possible!”
Developing and testing should be done not only on the “happy path” but also with an eye on validating that the system keeps working smoothly even when challenged by the data!
We as programmers or testers will never be able to create as huge variability as the application users, simply because we are usually already wired with previous knowledge about the system we are creating/testing.
If these topics around test data management (and why not development data management?) are of interest, here are some other posts I found interesting while roaming the internet:
https://www.testingxperts.com/blog/importance-of-test-data-in-software-testing/
https://techbeacon.com/app-dev-testing/3-highly-effective-strategies-managing-test-data
https://dzone.com/articles/test-data-management-challenges-solution-amp-valua
https://dzone.com/articles/4-keys-to-better-test-data-management
What stories and experiences do you have as a developer where you had that intuition or anticipation telling you “this is going to go wrong,” but you went ahead without changing anything and it eventually happened?
Disclaimer: I have an invested interest in this topic – my company #infosistema makes the best data management component for the #OutSystems platform, called #DMM (Data Migration Manager), and although we have many clients using it to copy data across environments and mask/scramble production data, so few of them actually use it to improve their DevOps!
@Bruno Valente e Costa, VP of Sales at Infosistema
Thirsthy for Knowledge? Subscribe to our Newsletter and Never Miss Another Byte!
Related Content: Instant Digital Onboarding – A New Reality, Part I