
Let’s talk about the emotional power of software. We use software every day. It has the power, sometimes unfortunately, to impact us emotionally and mentally. Even the experience of buying something from an online store can leave us feeling angry, confused, frustrated (as you will see here). But hopefully on the flipside, it can leave us feeling happy, excited and content.
A few weeks ago, our CEO, spoke to our Tech team, around how we don’t just sell clothes, we sell the emotions along with it. We sell the emotion of someone browsing our site. Finding the perfect product. Purchasing the product, all the way through to them receiving the product, wearing it and experiencing how it feels for the first time. Clearly, the software plays a small but pivotal role in that whole experience in an online store.
Now it might be the frequency illusion (also known as the BaaderβMeinhof phenomenon) in which you start noticing something far more once you’re aware of it. But, a few days later, I experienced first hand the emotional power of software when making a purchase on a different online store.
The online store will remain nameless, but it was after a number of interactions with them that I felt confused, angry and really quite frustrated. I truly began to appreciate the emotional power of software.
The first feelings of worry and confusion

It was my son’s birthday coming up soon. He’d asked for a few things, and I found them on this online store. I’d added the items to my basket and went through to check out with them.
Upon hitting the “Pay Now” button, there was a timeout with their payment gateway. I was presented with a 408 Request Timeout error message in plain text. At this point I was feeling a bit frustrated that I’d have to go through checkout again. π‘ (It’s worth noting that this wasn’t a custom error page, just a generic plain text page)
I checked my bank account and the money had been taken and was sat in Pending transactions. Firstly, it was a relatively large order, so to have a large amount stuck in pending, was a bit of a concern. I was now not only feeling frustrated, but worried as well. π
Now, utilising the following heuristics would be able suggest to me that the order has been successful:
- Order Confirmation Email – I’d had situations in the past where I didn’t get an Order Confirmation screen, but I checked my email and I had a confirmation email at least.
- Order appearing in my account – Similar to the email, if I had the order listed in my account, then chances are it was successful.
- Basket now being empty – I’m yet to encounter an online store that doesn’t empty the basket upon an order being complete.
So checking my emails, I had no order confirmation email, and the order wasn’t appearing in my account. The basket however was empty, the items that I had in there were no longer present. So chances are the order was unsuccessful, but I was clearly confused by the fact that the money was stuck in pending. π
Beginning to feel frustrated

Now, I would like to speak to someone at customer service, appreciate that it’s all done online, via an automated chatbot. There are 3 types of chatbots:
- β¬β¬ Simple chatbots. These have limited capabilities, and will follow a set of rules/pathways that the customer can select. They’re probably the easiest to implement, but limiting to the customer in what they can say/do.
- π§ π§ Smart chatbots. These attempt to mimic a real life conversation and will utilise AI to derive the message intent. They are more free flowing, but as there is greater power with these, there is greater chance of things going wrong.
- β¬π§ Hybrid chatbots. They are a combination of simple and smart chatbots.
The problem, there wasn’t a pathway to speak to someone to deal with my specific need. I could have selected the option that I’d placed an order, but then it asked for an order confirmation ID (which I didn’t have). Or I could select the option I’m missing an order, but this is in the context of having a physical order that’s been placed. I was beginning to get even more frustrated. π‘π‘
I ended up googling a customer service number, and managed to get through to a real human. Which is great. They reassured me that the money would be stuck in pending and when there is no order to match it to, that I would then get the money back. Although this process could take 2-3 days. This was fine, but seeing as I needed it soon for my son’s birthday, I had to go through the order process again. Would the same thing happen again I wondered? π€
A glimmer of hope and happiness
This time, I decided that I’d place the order on a credit card. This would give me some added security in the event that the same thing happens again. I wouldn’t be without the money in the bank.
I re-added all the items to the bag, and then went through to the checkout. Once I was in the checkout I decided to changed the card that I was using. I selected the “Change Payment Method” button and lo and behold, the order was placed immediately. Not only that it was placed on the original card. t
Leading to only more confusion
Now I’m even more confused than ever. I checked my bank and there was still just the one payment stuck in pending. This in itself was a bit of a relief. At least I wasn’t going to be charged twice.
I was presented with an Order Confirmation screen, I had the e-mail, by the look of things, it had all gone through successfully. There was no timeout this time. I was now feeling a bit relieved, but still confused. Having checked the email, everything looked correct, the payment method was the original method, the items were correct. I was just a bit confused as to how it went through and completed the payment. π€·ββοΈ
Waiting for the items…

I’d selected Next Day Delivery, so it would give us time to sort things out if anything didn’t fit. And they arrived the very next day, which was great. However, the shorts were the wrong shorts. π They’d sent the away version of the shorts, when the shirt and socks were the home version.
Back to Customer Services I went. This time however, I had the Order Confirmation number. So I got through to speak to a real human via the chatbot relatively painlessly. I explained the situation, and they said I could order the home shorts again, and send back the other shorts for a refund (it wasn’t this straight forward as they tried to fight me sending them back for free – but we got there in the end).
So, I did what they told me to do, I placed another order for the home shorts, using the free Next Day Delivery code I requested. They also sent through the free returns label to send the shorts back to them.
At this point, I jokingly said to my wife, that we should hope that the away shorts weren’t just placed in the wrong location in the warehouse. Meaning the picker would always pick the away shorts for an order that was placed for the home shorts.
Finally I’m just tired and angry

You know what happens next… They sent the away shorts AGAIN. I’m getting tired now. The constant back and forth. Ordering something online shouldn’t be this difficult.
Clearly, by this point, we were getting closer and closer to my sons birthday. Meaning I couldn’t risk placing another order, even for the away shorts, in the hope that the home shorts might be in their location in the warehouse. Getting back in touch with their customer services, I explained (again) what had happened, informing them that the shorts are probably in the wrong location in the warehouse. They said I could send them back for a refund.
This still left us with no home shorts for the football kit. I decided to look at another site, and found the pair of home shorts at a site where my wife is a member and gets free next day delivery. As such, we ordered them from there, for the same price, and needless to say they arrived the next day, in time for his birthday. Why didn’t I just place the order from there in the first place!?
So what are the lessons?
As testers, we need to be aware the emotional power of software, in how our users experience the software and ultimately their relationship with us as a company. We should strive for every interaction to be a positive one. One that fills them with positive emotions.
The emotions they feel are a key contributor towards the overall quality of the software, and one that automation can not necessarily check for. We are humans, our software will most likely be used by humans, and as such we need to be mindful of how we feel when testing. If something is difficult to test, or makes us feel frustrated, chances are our customers will feel the same.
There were many points in my journey above, that testing or thinking about quality could have helped.
The initial timeout β²β²
If this was managed properly within the code, the user would have been presented with a friendly error message, and the option to try again. This appears to be something that hasn’t been tested. As such the user experience is raw and not a pleasant experience.
The “conversation” with the chatbot π¬π¬
Chatbots are great at helping and guiding through known circumstances. Clearly my situation was something that hadn’t been thought of. A customer who wants to ask a question about an order that didn’t complete? I personally don’t think that’s too ludicrous of a situation. Yet, clearly, not something that was thought about enough to have a dedicated pathway.
Placing the order when I clicked the “Change Payment Method” π³π³
The order was evidently in a strange state (despite my bag being empty). Not quite sure what happened when selecting “Change Payment Method” but clearly something unusual. I would have thought some good exploratory testing would possibly have found the root cause of this.
The wrong item(s) being sent π«π«
Whilst not necessarily something a tester as part of a tech team might find. I would expect some level of QA from the warehouse to pick up the wrong item in the wrong location. It would have also softened the blow if I hadn’t had to fight for free Next Day Delivery/free returns. Especially as a result of things that were outside of my control.
Clearly, these are all very much edge scenarios. But then a large part of deep testing is made up of edge scenarios. They impacted me as a customer, and as such, I am hesitant to shop there again. It was a roller coaster of emotions, one of anger, frustration, confusion and moving towards apathy at the end. Which resulted in me deciding to go elsewhere. It’s something we need to be mindful of and appreciate the emotional power of software to make us feel both positive and, evidently in this case, negative emotions as it is an interaction and the attempt to build a relationship with the customer.