Suggesting what goes well with that …

Here at Fluc — we have lots of people working on lots of cool things. I don’t get to code anywhere near as much as what I used to back when we first started the company — but every now and then I get to play around with some of the data we have to whip up cool side projects and see how our community react to them. This has taken a few weeks of coding on and off.

Recently, Pat and I had the chance to help play around with some of the data and build out a new prototype system which provides users with a greater level of contextual relevance during their food selection process. Of course, the first question to ask yourself right now is literally — why even bother to do this ?

Why bother?

Figuring out what is relevant and what is not relevant isn’t easy. It’s also made a lot harder when you have thousands of restaurants to choose from and once you’ve established what type of food you want to eat — then comes the next level of ontology in figuring out what specific items you want to consume. If we look at this process in real life — your body is typically acting like:

Body: “Hey i’m hungry”
Brain: “OK — lets do something about it. What do you want to eat?”
Body: “Food”
Brain: “…..alrigghtttyyy then. I guess I’m feeling like Chinese?”

The decision level theory in the process is pretty random. Do you really know what you want at any point during the day or is there some specific external catalyst leading you to a choice ? Providing this simple external catalyst to assist human decision making is what we’re getting at here.

Of course, there are plenty of ways to do it. We already have a basic level of Trending and Popular Items in our system — if you login to Fluc you can see items relevant to you and even those currently popular around you.

So what exactly did I focus on then ?

The pairing problem!

What I wanted to help a user figure out was — given that they have already selected something to eat — what else would go well with this selection. While there are plenty algorithms to help solve this — Pat & I came up with a slightly unique way to pair this together with all the data we store inside our MongoDB cluster.

Basically, this lead to pairing items based on what you’ve selected. For example, imagine you’re a busy mum or dad and you order your kids — a Kids Cheese Pizza with Roasted Zucchini & Bell Peppers from Blue Line Pizza here in the Bay area. What actually goes well with this ?

Well — now we can offer some help. Based on the significant amount of data we have in our system — we can offer a suggestion on what else to order. Cool, huh!? We consider a number of relevance factors in this and pair them with the a users historical orders (if any) and some other factors. We can certainly discuss the technical specifics of this in another post if that is of interest (let me know).

So how does this work in practice ?

Simple. Everytime you add items to your cart — you provide our system with more data to figure out what works and what doesn’t. We are monitoring this in realtime and subsequently give you feedback.

We just added a Kids Cheese Pizza

From a process perspective — when you checkout — we update the decision theory matrix we built to make things even more relevant next time around. We can update the relevance index for each item and begin to customize this more and more as we move forward in time. We constructed a couple of jobs that run in the background to figure to crunch some data and improve the relevant dimensions for each action taken by the user. In this way — it means that we draw higher similarities between items and provide the user base with a more relevant system.

So — once we added the Kids Cheese Pizza — what else did we our system recommended ? It’s important to note that this is coming from live order data and is now updating in realtime.

Some other items we found

Sweet! So if I click on one of those items — we basically provide you with a way to add these quickly to your cart. Of course — as you add more items to your cart we are continuously updating the system to be even more relevant.

To try this — just add some items to your cart and you’ll see this in your Item Dialog when we have recommendations available.

We would certainly love any feedback that you have if you want to play around with this feature and let us know what you think of it. We live to make the world of food better and help your make your food decisions.

Tim Davis

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.