Software Testing in the Trenches

It’s Saturday morning. I’m enjoying my second cup of coffee and thinking about all the holiday shopping I have not done. “Alexa, how many shopping days left until Christmas?” “There are 17 days until Christmas.” Ok, today is the day. This year, I’ll be staying away from the stores and doing my shopping online. It’s time to shop, especially if I want to avoid those last-minute overnight shipping charges that may effectively as much as double the cost of the gift. Yep, that happened last year.

But what to buy? Would my niece like a designer handbag? Maybe, but I think I may have given her one last year. How about a Beats headset for my nephew? I just don’t know. I decide to take a break from shopping and get another cup of coffee. Yes, I haven’t even bought one gift and yes, this will be my third cup of coffee. I get my coffee and decide to quickly check my email before I start. Yes, I’m postponing the inevitable.

But what’s this? There’s an email from Lord & Taylor, “THIS Tahari style deserves a second look!” How does Lord & Taylor know I was looking at party dresses yesterday? I wish I were going to a party. And here’s an email from NFLShop.com “25% Off Your Favorite Patriot’s Gear”. What? How does the NFLShop know that the Pats are my team?

Do I have an online personal shopping assistant? Well, guess what, yes, I do! It’s called a recommendation engine, a type of Artificial Intelligence that retailers use to increase sales. Recommendation engines are systems that use algorithms to predict what customers might be interested in purchasing. These engines are really the equivalent of the helpful salespeople we meet in brick and mortar stores.

Salespeople show you the item you request and then, if they are good at their job, they show you additional items that you might like. For example, when I go into a boutique and try on a pair of designer jeans, the salesperson will bring several tops and jackets into the dressing room for me to try with the jeans. And yes, I usually wind up purchasing at least one of the tops too.

This same process happens when you shop online. I’m sure you’ve all “met” these helpful, artificially intelligent, online salespeople. When you select a product, you’ll often get an additional selection of products with the message “Customer’s who purchased (insert what you are purchasing) also purchased….”.

Have you ever wondered how those additional products are chosen? Just as the salespeople in the stores make intelligent decisions as to what else you might purchase, recommendations engines do the same thing, only their “intelligence” is artificial; their intelligence is “learned” by the data fed into its algorithms.

Recommendation engines are fed data based on three models: collaborative filtering, content-based filtering and hybrid recommendation systems. Collaborative filtering applications are fed data about potential customers current behaviors or purchases through which the algorithm predicts future behaviors or purchases. In this model, I will be offered items that a chic, fashionista like me might want, perhaps a pair of Jimmy Choo stilettos? I guess it doesn’t yet realize I’ve changed my designer tastes to handbags recently.

In content-based filtering, the algorithm uses keywords to understand the item under consideration for purchase and suggests additional items. I recently purchased a pair of Brooks Ghost 10 running shoes as a gift for a friend. The recommendation engine offered me an ultraviolet flashlight and other ghost-hunting equipment. Not quite what I was expecting.

Fear not, hybrid recommendation systems combine the best of both models. Hybrid recommendation systems evaluate collaborative data and content data separately and then combine it for the recommendation. This makes my personal shopping assistant more effective than ever before!

Oh, that reminds me; I’m supposed to be holiday shopping this morning. With my personal online shopping assistant making lots of great recommendations, my holiday shopping will be done in no time! Enjoy your shopping and have a wonderful holiday season!