Pages

Friday, 20 April 2018

Podcast Interview with Irene Iriarte Carretero, Gousto

This week's guest on our podcast is someone that has been writing and speaking about their use of Neo4j quite a bit. Irene Iriarte Carretero, from Gousto has been writing really cool blogposts, (like this one) and presenting the story at GraphConnect as well. Here's a recording of her presentation:

Some of her excellent slides are over here:

So it goes without saying that I wanted to interview Irene for the podcast, and at the London GraphTour event, I finally had the opportunity. Here's our chat:

Here's the transcript of our conversation:

RVB: 00:00:03.459 Hello, everyone. My name is Rik, Rik Van Bruggen from Neo4j. And here I am recording a face-to-face podcast, which is the first in a long time. We're at our GraphTour conference in London. And I'm actually here joined by Irene, Irene, from Gousto. And Irene just did a presentation here at the GraphTour about how you guys have been using Neo4j, right?

IIC: 00:00:29.776 Exactly. Hello. It's a pleasure to be here. Yeah. So I am a data scientist at Gousto. So Gousto is an online recipe box service. So you can come onto our website, choose recipes to cook, and we kind of send preportioned ingredients along with step-by-step recipe cards to your door. So you kind of get rid of the boring planning and going to the supermarket. And you get to just enjoy the cooking and the eating. Plus, you get to save food waste, so it's a win-win.

RVB: 00:01:06.277 Absolutely. Is it a UK service or is it--

IIC: 00:01:09.350 Yeah, so it's just UK--

RVB: 00:01:09.716 --other countries as well?

IIC: 00:01:11.159 --at the moment.

RVB: 00:01:12.671 Fantastic. And you guys are using Neo4j today for some of your applications, right?

IIC: 00:01:17.892 Yep. So our kind of initial kind of venture into the world of graphs and what we're currently using it for is to help with our personalisation. So we have quite a lot of recipes on the menu. So we want to be able to give our customers meaningful choice, which means being able to recommend recipes. So part of this is being able to calculate the similarity between certain recipes. And this is where we're kind of using Neo4j at the moment.

RVB: 00:01:53.841 Oh, fantastic. And how did you get into it? How do you get into Neo4j for this particular use case?

IIC: 00:01:58.385 So we started researching kind of how to go about calculating similarity of recipes because it sounds like quite a simple problem. But actually, there's a lot more to it than one would initially think [laughter].

RVB: 00:02:10.218 I can imagine. Yeah.

IIC: 00:02:11.096 So there's a lot of kind of subjectivity around food and kind of quite strong emotional attachments to it. So we think it was really important to be able to approach the recipe-similarity problem from different points of views. So we thought that doing it with a relational database perhaps wasn't quite the solution because yeah, recipes and ingredients, they're all kind of really messy and interconnected in a really fun way. So we needed a tool that would allow us to really easily explore those relations. So yeah, we kind of started investigating, and we came across Neo4j's pretty pictures, and we--

RVB: 00:02:58.854 Never looked back [laughter].

IIC: 00:02:59.761 Exactly. We wanted to make our own pretty pictures.

RVB: 00:03:02.928 Fantastic. And actually, it's a topic dear to my heart because there's quite a few people that got into graphs because of food networks, food and recipe networks. I know that Luanne from GraphAware, for example, she started that way. I wrote a couple of articles about it a long time ago. And every time I write about it, there's a massive influx of people that want to read about it. So it must be a great fit, right?

IIC: 00:03:28.689 Well, everyone loves food, right, so [laughter].

RVB: 00:03:31.467 Everyone loves food [laughter]. Absolutely, fantastic. So why is it such a good fit? Can you talk to us a little bit about that? Why is a graph such a good representation for recipes and for understanding recommendations for recipes?

IIC: 00:03:46.910 So yeah. I mean, I think the main thing is just, yeah, the amount of ways that you can approach the similarity of a recipe. So you can look at it from a cuisine point of view, but maybe someone's on a diet and is actually focusing on the protein types. So for them, it's the protein type in the recipes that is important. You also kind of have why people are using our service, whether that is for convenience or they need to be able to get quick recipes. Whereas for other people, it might be about being adventurous with flavours. So it's, yeah, the cuisine that's important. So there's just so many different factors.

RVB: 00:04:28.659 Different dimensions to them all, basically.

IIC: 00:04:29.784 Yeah. Yeah. Exactly. Kind of just so many different ways to tackle the problem. And it's just so much easier to kind of, yeah, look at that with a graph and with all those different point of views kind of converging. So yeah, it's kind of much more intuitive as well for us, I think, to look at than with-- yeah, that kind of--

RVB: 00:04:52.355 Is that mostly for analytical purposes, or is there a more real-time aspect to it as well where someone's just looked at a recipe and bought this and might want that or--?

IIC: 00:05:04.641 Yeah. So at the moment, we're still kind of early stages, and trying out our models, and making sure that we're getting sensible results. But it is looking promising. So we've kind of integrating it with-- so into a hybrid recommendation model, so also taking collaborative filtering into account. So yeah, so it's not purely analytic. There is also kind of, yeah, training and stuff. But we're still kind of-- yeah, we're not quite real-time yet [laughter].

RVB: 00:05:37.578 Yeah. I understand. And has there been any feedback from users or from maybe your internal staff as well? What's the feedback been like?

IIC: 00:05:43.275 Yeah. So I think Neo4j is quite popular at Gousto because yeah, again, the pretty pictures, so people are kind of quite interested and invested in the projects. They're always, yeah, kind of asking us to look at theirs [laughter] to show them those similarities. So yeah, I think it's giving promising results, definitely. They make sense when you look at them, which is what you want at this point.

RVB: 00:06:12.772 Do you do any visualisations as well that allow people to explore the networks as well?

IIC: 00:06:18.493 Yes, definitely. And it's kind of really cool to be able to see those kind of natural clusters appearing. Yes. You could kind of play with it for hours [laughter].

RVB: 00:06:29.479 The graph is screaming recommendations at you.

IIC: 00:06:31.507 Yeah, yeah. Exactly [laughter].

RVB: 00:06:33.213 Fantastic. Okay. So what are your plans for the future? Where are you guys going with this? Just on this project or maybe also other ideas, what do you think?

IIC: 00:06:42.224 Yeah. So definitely, I think, we're kind of almost getting started with graph databases. So I think we see it as kind of a really useful tool to have alongside of what we already have. So at the moment, we have recipe and ingredient data, but there's no reason why we can't have other data in there. So for example, we have quite granular data on the way our users interact with our website, so we know that's really good--

RVB: 00:07:11.742 Like with clickstreams, is that one?

IIC: 00:07:12.798 Yeah. So that's a really good use case to kind of build in and see how that affects-- yeah. Well, what that user's behaviours tell us about what they might want to be recommended. So there's definitely still a lot of scope, yeah, for more data to be added. And yeah, we also think that it can kind of help us with perhaps kind of guiding recipe development a little bit, so kind of highlighting where perhaps we have more gaps that it's harder to see with a long list. It might be easier to check, yeah, on the graphs. So there's still definitely a lot of room for us to carry on exploring with graph databases.

RVB: 00:07:56.527 So the project has got a bright future ahead of it.

IIC: 00:07:59.531 Most definitely.

RVB: 00:08:00.319 Fantastic. Well, it's been great having you at the GraphTour. This was really great for you to do the presentation. We really appreciate it--

IIC: 00:08:08.070 No worries.

RVB: 00:08:08.763 --yes, in so many different ways. And also for you take time to have a chat for the podcast because that's also a way for us to kind of spread the graph love into the community, right? So--