Coming along my name is Murray woodman and today I am going to be showing you how to personalize your website Using a recommender as a service called recombie The topic of personalization is something that has interested me for the last 10 years or so Where where I was getting in sort of interested in collaborative filtering and collective intelligence But back then you know you had to write the code yourself There was a lot of CPU required to sort of manage the data and you know frankly It was too much like hard work to write your own recommender as a service, but these days. It's different Ten years have passed. There's a lot of Different services out there providing these kinds of things and recombie is a service That is very easy to use and I'll be showing you how to use that today But before we jump into that I do want to cover a couple of areas and the first one is that content management is Essentially a solved problem the things we're doing today in Drupal are very similar to the things we were doing 10 years ago We're still managing content doing performing credit operations doing doing the presentation and more recently we've got restful web services and Things such as Jason API, but really things haven't changed so much and in the marketplace Drupal does have a lot of Competition of course there are other CMS is out there and conferences like this are designed to make Drupal better to compete against them but Drupal does have its strengths and in my mind largely this is based around content modeling and The ability for editors to be able to edit that content in a nice UI We've we've got entities. We've got fields We can perform relationships and this is one of the things that really got me into Drupal all those years ago and We've got Jason API making it super easy to build De-coupled services and of course Drupal is great at doing integrations. So Drupal has a lot of strengths We're in an excellent position to compete In this marketplace, but I think we really do have to start thinking about you know How we put systems together to be relevant going forward Furthermore the CMS is only one part of the puzzle I think as Drupal people we probably think of problems in terms of a CMS and You know what we can do with it and how we can solve these issues But really, you know, there's a lot more pieces to the puzzle this particular diagram Was created by a group of researchers called the real story group And a lot of their work, you know is quite good and they sort of basically analyze the CMS market and other markets You can see here that the web content management system the green one. It's just one part of You know a number of different engagement services Importantly we have this thing called marketing automation that's living alongside the web content management system and this is an area which is you know being sort of exploding in the last ten years and You know, there are hordes of marketers out there doing marketing automation Using tools and they're not even thinking about a CMS They're thinking about how to communicate with their customers, but the CMS is not necessarily the first thing they're thinking about But you know, as we know Drupal is very well positioned to To act in that role, but we are facing a lot of competition from Marketing automation as well. We have this sort of customer data backbone CDPs where which is another area that's been flourishing in the last five years and like all of these things are starting to build out Content management services to help them operate and that potentially is going to start competing with Drupal as well So I think as Drupal people when we start building sites, we need to shift our thinking We need to shift this stop thinking about just publishing stuff out from one to many And we have to start thinking about Communicating with people one to one. What do we know about those people? How can we personalize content for them? We also have to think about user experience not just being in the website as we've seen there's a variety of Sort of touch points there such as you know mobile and social and email Our users are communicating with our organizations on a number of platforms and the user experience where Orchestrating has to operate across all of those. It's not just in the website That's just what I said there a lot of the The smarts of the system and the way we are personalizing Is going to be living outside the CMS it could be living in a CDP or a Marketing automation system a lot of the decisions that are being made on how things are going to be personalized Not necessarily going to be happening in Drupal. I Think in the Drupal world as well we kind of got this dichotomous view of how we treat users they're either going to be logged in and receiving a customized experience with heavy page loads and on the other side of the coin we have You know anonymous users where they're receiving pages that have been cashed and are out on the edge a Decoupled way of thinking is certainly going to break down this dichotomy but You know it's something that we really have to think about a lot. How can we provide personalized experiences for anonymous users? So I think to answer these questions We really have to reconsider how we build out our systems a lot of the ways we've thought about websites Potentially have to change as we try to deliver these personalized experience to anonymous people So let's move on to personalization I Love this graphic. Thanks, matey I Think when we are building sites We you know as Drupal people we love modeling our data and our content And of course we have the user experience as well We're defining different personas and different user journeys and that will happen on a website and we imagine how? Those users are flowing through But I think there's a you know a third part of the picture here I've called it marketing it doesn't really mean that but it really means sort of what are the users doing? What are they interested in and how can we start talking to those users and that bit in the middle? I think that's personalization and For me this is the most exciting part about web development these days is how can we bring all of these things together? So it forms a coherent picture and so that we can start Personalizing things for users and it really requires design thinking around how do we model the content? You know, what do we know about the personas and the people who? Who are accessing the site and how can we take a data-driven approach to personalizing for these people? Now these are all really big picture things right but today I'm taking a much more Sort of smaller piece of the puzzle one that we can solve and that is to provide recommendations to users I'm not going to show you how to build out a whole marketing stack. We're just showing you how to do recommendations to users this will include recommendations to a user just in the general sense say they're on the home page and you want to show them some things relevant to them as well as Recommendations when a user is on a particular item so that item is able to provide context which is combined to provide recommendations to them So introducing Rekombi Rekombi Bills itself as an artificial intelligence powered Recommender as a service with an intuitive restful API and SDKs. I had to take a breath tailored by data scientists The the really important sort of takeouts here is that it's a SAS service It has a really sort of friendly API to use and it's got a lot of smarts behind it It's scalable and it's doing some cool things under the hood that you don't necessarily have to worry about But it's very easy to interact with So how does Rekombi do it does it in two main ways? The these are combined with a number of other sort of strategies But the the main two would be collaborative filtering and this is where we're tracking user behavior across a number of different users and Then providing recommendations. So if we have users that are similar and they like similar things It's a fair bet that someone who is similar to those users is also going to Like the kinds of content that they like In order to do this we need to track user behavior on the site So for example, this user has seen these individual items And so as the user travels around the site that stream of data is going across to Rekombi The second thing The second way that recommendations can be derived is by content based mechanisms and in this case. We're building up Recommendations based on item similarity. So just say we have two articles Article A and article B and they both share, you know similar tags and categories Maybe the titles are similar. They're written by the same author Obviously, they're going to be very similar. So Rekombi is able to use these, you know fundamental properties of a Of your nodes or content to provide the recommendations It's very similar to more like this with solar You may be familiar with that solar is taking a similar approach there where it's it's lining up the different Facets and working out similarity But in order for this one to work, we've got to get the data from Drupal over into Rekombi How do we do that? Well, we use their private API to to push that stuff across and a little bit later I'll be showing a module that we've built at Morft to allow this to take place So using Rekombi on the client side. This is what it looks like. It's pretty simple. We're basically just tracking Tracking things that a user is doing around the site in this case where Tracking a detail view. There are a number of other events You could do like, you know, someone purchased an item or someone saw a simple view. There's a few different events there But essentially we're just pushing over that user item interaction And then getting the data back. We are saying hey Rekombi give me five items there Which are recommended for this particular user So that that request goes to Rekombi a response comes back as Jason and the callback there is able to handle that if there's an error That can be handled and then the recommendations are there for you to consume Generally, you would be consuming that Jason converting it into HTML somehow with the template and then writing that back down into the DOM Okay, and this is you know a little example payload here of some data That's that's coming back all of these values that we see have been pushed over into the Rekombi back end and you can see this is you know be pretty easy to iterate through and build up your recommendations that have been gonna going to be displayed on the website on The service side there's a separate API. You can see there's a private token there That's basically a key just for your your back end to talk to Rekombi You do not want to have anonymous users using this because they're going to be able to mess up your database essentially So in this case we have an example of us pushing the values of a node let's say over into Rekombi and the the code that we've written which I'll just show you soon is basically doing that to get that index over So, yeah, this is the module we've Built hats off to V2's written the code for this The module is called search API Rekombi So we're using a search API Backend in order to get that data across it may seem a little bit strange why we're using search API We're not actually doing any searching But what we are doing is we're indexing the content we're using the indexing abilities of search API So whenever a node is updated the node index knows about that and it says to the back end Hey, go update this node and it gets pushed over into Rekombi So, yeah, so we're not using any search or facets once that data is in there We can see it and we can access it via the Rekombi API just not through search or facets a really really cool feature we've built in is Support for federated indexes, so let's say you have a suite of marketing sites sites alpha and site beta They both can be pushing their indexes into the same index the back end at Rekombi And by getting these two into one we are then able to do recommendations between both of the sites and You know this is very very nice feature because if you say you have a suite of marketing sites and a user is only Interacting on one you can then start pushing content to them in another website and get them to jump across and start interacting with another marketing site and essentially the way we do this is to Send a site ID across into the index which allows us to filter these things This is what it looks like in the the back end of Drupal. It's just a search API Server we're looking at there And you can see we have the Rekombi back end and we just configure that up the connection and away you go It's exactly like a database or solar back end And this is what the data looks like when you are over in Rekombi You can see here I'm just filtering on Drupal and we've just got a few IDs coming back You can actually see we've got alpha and beta websites there on the the left-hand side so you can see we're indexing content from both sides This is where sort of like ontology comes in and getting your taxonomies right is super important So the content modeling that you do up front in the research part of the project gets reflected in the you know the metadata we've got inside Drupal and how it is then stored in Rekombi and the the very important thing here is two important things with this Firstly Rekombi is able to use this information to improve the item similarity So it's able to look at these various columns and properties and work out the similarity for its recommendations So that will improve the results you're getting back and secondly when you're getting that JSON Payload back all of the data is there that you you want you don't have to hit Drupal to get the data back So that's the background of Rekombi I do want to say a few words on what I'm calling orchestration and this is how do we bring this whole system together You know when we sat down to sort of solve the problem of how can we get a nice simple personalization system up and running We you know we threw around a few ideas Can we build you know a super module to to rule them all or you know How should we get all this together and we've basically said okay? We're going to be using best of breed services and we're going to have them as being Loosely coupled and this is going to allow us to provide Personalization solutions that are going to be you know use the best of breed Services and bring them together in the way that we want We didn't want to necessarily buy into a monolithic stack This is an area where there's a lot of change You know there's a lot of new services Sort of coming up and you know obviously people have different needs and different services they want to use We've taken a decoupled architecture as I've mentioned And also the solution is largely Drupal agnostic So all the code you're about to see when there's not too much more is We'll work on any site right it will work on Drupal WordPress a static site the the personalization Approach we've taken will essentially work anywhere the only Drupal stuff that we've seen is the the search API Back end to help with indexing the data and finally we want it to be scalable So whilst Drupal is going to be a super important Service for modeling the data and holding it We don't necessarily want to be hitting it every time so that ability for a combi to give us a nice payload With everything there allows us to get a result to the page You know in a couple hundred milliseconds, you know as fast as possible because you want those results coming back quickly and The way we've decided to do this is with Google tag manager. We didn't want to put JavaScript into The Drupal site or into the module or into a theme We wanted it sort of sitting up outside and that's going to give us a lot more flexibility The fact that it's sitting outside of Drupal opens it up to data specialists and to marketers and These kinds of people who may want to wire together solutions of their own Google tag managers got an awesome environment. It handles things such as you know revisions and It's got variables and environments and it basically handles the asynchronous nature of The internet with you know tag management where tags can fire after other tags For example, so you can really you know put together some quite sort of complicated things relatively easily It is the glue between the systems and it basically is handling complexity So we're not taking like a no code or low code approach here We are actually using code in the most efficient way and that's to wire the systems together Because sometimes a few lines of code can you know replace a whole heavy system So this is what the snippet looks like we've tried to go as low-tech as Possible this is just this you know the solution that that we're using but effectively we have a div here with the Recombi class and we have a lot number of data attributes that can be used as parameters when they're getting passed through to Recombi in this case we can see Some boosting components here where we can kind of boost certain topics if we want We've got a count of five for the results that are coming back And we can filter out some sort of results that we don't want and in this case also filter just on site equals alpha And finally we've got the data type there saying hey we want some recommendations for a user We've also got like a little handlebars Template there in that script tag I Know this is quite a sort of a basic approach, but it is a very flexible one It's a really low-tech approach that's going to work in a number of environments, but this just gives The site builder or editor a really quick and ready way to to get in and sort of Transform those results that are coming back and essentially this makes it very easy to mold The the HTML that's been produced into something that's going to work depending on what design system or theming system you're using So that's the that's the snippets are basically that snippets just going on the page in a block and Google tag manager is going down and Processing that and then accessing the recombi API Now so time for the demo. I am going to assume a persona I'm going to say I like the product of Drupal and I'm in the the developer audience We've got a suite of websites here alpha beta and sigma now alpha and beta like satellite sites You can imagine them as little marketing sites and then we also have a the sigma site Which you can think of as being like the mothership the parent website the the corporate website that that may want to know about what's going on So we got these three sites, and I'm just going to come across Into the first of them So yeah, these are really basic sites. It's just testing guys They're not too polished, but basically we're using this as a proof of Concept of how how all this stuff can work. So we've got the alpha site here and This is one of the satellite sites. I'm just going to show you the cookies that we've got in here So you we can see that We've got Google Analytics in here and this GA cookie here is the client ID So this client ID that we're using is going to operate across all three sites It's possible to set up Google Analytics to have a client ID you travel across different domains And that's what we've done in this case So we've got a stable identifier operating across a number of domains, and that's that's what allows us to Get that consistency. I'm just going to remove All these cookies because we don't want those I just want to sort of start the site from a fresh start so refreshing that there, okay, so We've got the the site now straight out of the box. We're getting some user recommendations back here So this little user recommendations block down the bottom is what Rekombie is trying to show to me now Now this is a totally cold start Rekombie doesn't know anything about me yet But what it is showing is some of the popular content, right? So when it's on a cold start and there's nothing about the user, it's going to do its best and it's going to show you some Popular content. So I'm a Drupal developer. I'm just going to click on that. So now I'm on the developing for Drupal page and Now we've got some item recommendations. So these node recommendations you can see here Have been customized according to the the node that we're on As well as it's also taking into account You know the content that I've clicked as well. So you can see the results here, you know, it seemed to be pretty good We've got some stuff for other developer ones this developing for WordPress One might be cropping up because I have assumed the developer Persona and this is a developer kind of article. So let's just click on a couple of other recommendations here Build your first Drupal site. Okay, so now we come back home And we have a look. I don't really know what's going to show here We've got some stuff on Drupal some more Drupal stuff.  We're getting recommendations back about the alpha site Now if I come across to the beta site, remember, I've cleared my cookies This is the first time I've been on the beta site. It knows nothing about me and I've come down here and Well, it's a little bit of a mix, right? But we've got some Drupal Drupal developer stuff Drupal stuff Drupal and another Drupal developer one and it's probably throwing in this WordPress site because I know it knows I've clicked on certain developer articles So you see a little bit of a mix there of between Drupal and WordPress and basically these are the recommendations That are coming back. So you can determine if you think that's successful or not, but yeah That's that's what's coming back there. And if we come across the signal, remember, this is the parent website basically the God, that's really helpful. Oh, let's come back. Sorry. It's just a slow connection basically we've got some recommendations that are coming across both sites now we're not just filtering and You know, we can see that we've got some recommendations from beta and from alpha So I'm just having a look where they're coming from. So we're getting some nice results there from both sites So you could imagine if you had the parent corporate site, you had a whole stack of marketing sites You can then start pushing, you know people back down into these little sites so this is the yeah the power for a combi combined with the the power of You know taking a federated approach So that was the demo Okay, so what have we just seen here? I think you know what you've seen but we'll just cover it quickly We've seen a single client ID generated from Google Analytics working across a number of sites We've taken a federated approach here. So we've proven that we can get it working across domains The recommendations have been very helpful because we've been able to sort of share users around those sites And we've taken a decoupled approach with orchestration Going on in Google Tag Manager and Drupal really hasn't been hit a single time There's really been no load on Drupal whatsoever. So potentially, you know, you could you could have you know hundreds or thousands of requests Coming through and you know should have a good chance of those being served So the next steps You know this this has been a really sort of interesting journey We've been on a more often what we've seen here with recombi is a nice sort of starting position But there's so many other things we can do Using the Google Tag Manager as approach, you know, there's Some interesting things this first one not so interesting logging of events to analytics But what you've done is once you've done your data modeling your content modeling in Drupal You've basically developed, you know your taxonomies and you know I've got topics and tags and authors and Audiences once you've done that content modeling that can also be used to drive Dimensions into Google Analytics So I think we've got a lot of goodness sitting in our Drupal sites that we're just not indexing yet, right? We're just indexing page views. Why aren't we indexing all of the dimensions as well? So when you start thinking about this kind of stuff Google Tag Manager is a great way to do that Also That little example you saw with the snippet it would be trivial to sort of rejig that to to start getting content out of Drupal So let's say we've pulled down a You know a user profile and we know this user is interested in something We can easily be doing requests to a JSON endpoint in Drupal and pulling that content out So this is the concept of using Drupal as a content hub, you know Which can be serving, you know different platforms, not just Drupal sites Google Tag Manager's also got the data layer. This is a really important part. It's very simple But basically it's a place where you can put data and when that data lands in there Certain triggers can fire in Google Tag Manager to do stuff. So it's a great place to You know basically sort of manage the state of a certain page request and You know once you've sort of decided that that's the way it's going to work a decoupled architecture Can be sort of you know Google Tag Manager can just be listening out for changes that have happened to fire off other things There is a Drupal module called the smart content module now We've done a few little experiments with this and I think this is a sleeper module It doesn't have so many installs, but I think it's going to be Potentially become very important for people that want to do personalization It will allow you to do conditional logic at client site and Display blocks depending on the outcomes of that logic So you could say if the user has this preference, you know display this particular block So this is how we can do personalization for anonymous users We've got to move that logic into the client side and a module such as the smart content module should allow us to do that Another amazing thing is Something called affinity and this is the propensity for an individual to like certain things So for example a person might like a certain author or they might like the color red or be interested in a certain topic Now when someone's cruising around your site, they're really just looking at pages We don't actually know the kinds of things are interested in we're just logging the pages So how can we work out what someone's interested in? Well, I think the the capabilities of recombie can be used to do that We are after we all indexing page views But why don't we start indexing the subject matter that people are actually looking at as well? And once we've done that, I think we can start deriving affinity for For what users have for what kinds of subject matter they're interested in and Once we have that information we can query recombie So you get me back the affinities for this user and then we can push them up to a CRM So we can say this user is really likes color red and this particular author and Drupal as a product and developer as an audience Let's just say all those four different facets can be pushed up into a CRM and then the CRM knows about this user and This is the principle point Once you have done that you know about that user at the time that they engage with you So as soon as they sign up for your newsletter or download an e-book or something like that You get that email address Goes into the CRM you say hey recombie. Give me the affinities Up they go and then you send out your first email to them and that first email is going to know all those four things about them They know that they're a Drupal developer and they like the color red and you can start having a personalized conversation with them The first time you've met them I think that's pretty much the holy grail of what marketers are looking for these days So yeah, that was essentially what we were trying to solve when we went started this path at Morph looking at personalization It is an active area of research for us And we're really looking to work out ways that we can come up with cost-effective ways to do this personalization And yeah, we are looking to build out integrations with other services. We've seen that we're using recombie I've mentioned sort of CRMs and email Marketing but that would be the next thing it's like pushing that data back up into a data store where we sort of know about that user The example we've seen that's just a proof of concept and we've proven that we've been able to get this to work We're really looking for people to work with those so we can Sort of make the most of it. So if you have a project you think will be benefit from it, please get in touch So yeah in conclusion wrapping up we've seen that personalization is at the nexus of content UX and marketing and In order to you know approach these problems We've got to sort of take a flexible approach though. We can wire the systems together Recomby is really easy to use just a couple of lines of code and with that Drupal module It allows us to index in stuff very easily as well Google tag manager is a great way to have a really flexible and pragmatic way of wiring it together and Basically, we've sort of designed a platform agnostic solution here So, you know, it can easily work for your Drupal projects, but also other places Before I go though I do have a rallying cry for all of us in the room and that is coming back to my initial point about the landscape Changing we've basically seen the rise of the CMO marketing budgets are getting bigger and marketers are deciding what technology they're going to be using and increasingly this means looking at You know automation systems where the CMS is not necessarily foremost in their mind We know we've got challenges from in the CMS space, but also from CDP CRM's and email marketing Just last week MailChimp announced that they are having a Website builder the week before that Salesforce said that they've got a website builder So we can see these other systems They're getting into the content game as well and where is that going to leave Drupal if Drupal's not Addressing these problems. We're just going to be a CMS doing crud operations and the challenge is how can we get out of that? So I think Drupal needs to leverage its strengths. It's content modeling and JSON API are two core things that we can use and I think If we do that we're going to remain relevant For the Drupal developers out there when we're talking about decoupled I think decoupled is often combined with the concept of decoupling the presentation From the data in Drupal, but really decoupled is much bigger than that It's taking a data first approach and thinking of how can we build systems that are using data in a decoupled way? So don't just think of it as presentation think of it as how can we put systems together? Where Drupal's playing a really important role in providing that data? And I think if we do that Drupal will find a place as a first-class citizen in the marketing stack of the future And that's it. Thank you very much everyone All right, 34 minutes 10. Oh, so it's only five minutes for questions But that's great. We've got a little bit of time for that Thanks, Mary. That was that was great. Hey two questions quickly in that demo that you showed us Where is the master source of data? The data starts in Drupal. Okay, one of the three sites all three Alpha and beta had their own content alpha had like 20 articles and beta had 20 articles So they're actually living in different sites and then they're getting pushed over into one index in Great cool. So the other question is Where you do do you see or can you imagine any weirdness where you've got a user account logged into the site? And what does it look like when the two systems need to kind of like tether together? Yeah, that's interesting I mean we've used the the client the Google Analytics client ID But you could easily use a Drupal ID as well if that user is logged in so In Google Tag Manager could say hey look this user's logged in I'm going to use that user ID rather than the client ID of course you then got Hassles around you know working out. I've got a client ID for this user now I've got a Drupal ID and you have to work that out and products such as CDPs and things like that are sophisticated to handle that That system. Yeah, I haven't addressed that but you could definitely use other methods to get the user ID in Yeah, right. Thanks Just a quick question. So obviously the recommendations that are coming back are Triggered by a click on the page. Are there other metrics that are Considered such as time on page and bounce rates and that kind of thing. Well, so there are a number of Events that you can track in that system. So we saw the detail view You can kind of I don't know what it's called. It's got a simple view or maybe an add to cart or a purchase So there's probably about four or five different Events that they're tracking in recombie. So yeah, that is I mean you could write JavaScript in to listen for those events and send individual clicks But yeah, they're not recording integers of seconds on a page and I certainly know that there are many Sort of CDPs and things like that out there that do and you know other optimizing Software that do look at time on page to work out if someone's actually engaging and that that seconds on the page will lead to an engagement score that is getting scored but Recombie is just doing, you know, you don't even know but they're just doing. Yes.  It's like, okay I already have a white shirt. Thanks how do prevent repetitive, yeah, that's that's good and It's so funny two days ago I was up to midnight trying to debug that very thing I was going in and clicking a whole lot of Drupal links and it kept giving me word print wordpress results back I was like, what's going on? This is not going to be good for the conference presentation Ah, and then then I worked out that it was actually not showing me results that I'd already seen So it was taking out pages that you had seen and then giving it was giving you back developer results Not so I was kind of getting good results back and it was removing the things that I had seen So it is trying to avoid that problem of just repetitively doing it and I wouldn't mind a betting that they're kind of throwing in the odd random bit of weirdness for Also, I forget what the word is but you know that the fifth result is going to be like an outlier too So you're not getting stuck in an echo chamber. I think Amazon do that as well They'll give you some nice results and then give you a random or a slightly randomized one So you're not just stuck in that that little world and it's probably doing that, but I'm not really sure but there's also many other strategies that you can Fine-tune inside recombie so you can say I want you to wait Popularity or I want you to rate weight recentness and things like that So you're able to kind of fine-tune a little bit by saying what strategy it should adopt when we're getting those results back You said you need to build the taxonomies to Deal between systems, right? Which color they prefer or what topics? How do you handle the taxonomies between different systems because like the color red in Rupal Yeah, might be term ID or yep, that's right. And so when when you saw the the back end of Recombie you would have seen that were machine names and human readable So basically I've got a key field on every taxonomy term So if the red would be color colon red and that is what we're indexing into recombie So we where so there's a yeah, there's a stable identifier That that we're using between the sites exactly right. Yes for other for other clients We've written little sort of ontology sync thing So if you you update an ontology in one it gets synced over to another so we're keeping the ontologies in sync between Sites, you know, so that's like a little bit of a thing you can do to try to keep that stuff in sync when you're trying to Have a federated system, but yeah, you're right You must have stable identifiers across all three and node IDs or term IDs are not going to cut it You have to you have to have a Name like that now we've chosen a human readable name Because we're able to write little queries to filter on that or if you're going into Google analytics and and storing it as a dimension People working in Google analytics going to want to know what that name is as well. So, you know, it makes sense to have it Are you could I mean well not if you're trying to be federated, right? And not if you really want to understand what's going on like when you look in the back end It's going to be pretty confusing to see a whole lot of Yeah, long IDs that don't have any meaning to a human, but you know the system would still work It's just going to be harder to understand What do you guys think about this whole decoupled thing as well, you know, it's a bit of a challenge to the community It's the future Murray stop asking questions. Okay. All right, come on.  So if you'd rather talk about it drinks after Out of interest What we all get this is really cool, but what's the sort of the response been from from your customers? Do they do they just sort of like give you enough guidance that you can you can work there? It's very early days. It must be said, right? So this is yeah work work that we've just you know completed in you know the last sort of month or so So yeah, we've got the proof of concept there We've got it on the Morph website there and you know, maybe the site's getting a little bit more sticky and keep Keeping people on I will say one thing though and I think in terms of return on investment If you're running an e-commerce store something like that where you have a dollar value It's going to be much easier to say hey I'm getting good return on your investment for engaging us here because your sales have gone up a certain amount I think in the Drupal world we you know, maybe we deal in education You know, you know publishing and government in these kinds of industries. We're really publishing content more So it's harder to get a dollar a dollar value on that But I think the metric has to be you know time spent on site or you know conversions and and those things So you probably have to have a metric that's going to work for you Have it has to that was do not track Yeah, and that's right. So, you know, this is a really big thing. So like the Safari browser has Got this sort of feature now that cookies that have been created client side are going to be deleted after seven days And so this is I'm not really up to totally up to speed with it But it could be a game changer for this whole marketing automation world if the if browser companies are deciding we're going to go Yeah, destroying those cookies. So yeah, this is like an ongoing battle I think even if you had seven days of data though and the user joined up You still you still know a little bit about them But yeah, it's definitely an area that is you know, potentially putting approaches such as this under under threat It would work you said one of the first slides when you're choosing like the similarities between different users If you would lose the data about specific identifier in seven days But you would have the same behavior of the same person after that, right? And then you can yeah, yeah, yeah So we're just talking about that Google client ID getting destroyed or something like that I look at the apples kind of competing with Google on this and saying we don't like your advertising models We're going to punish you and delete your cookies. So your whole business model goes down the drain That's that's how I see it a little bit But if that Google client ID is disappearing it's going to make it harder to to track But there's other ways to track or you just say, okay, that's the browser the person's using I'm just going to accept that if they want to destroy the cookies fine. I'm not saying doing anything nasty We're just using accepted approaches and people want to delete the cookies. That's great You know, they've got their privacy. So I don't want to come at it from a nasty angle We want to respect what the user wants there We've tried it on a couple of sites. How do you think it would go on say 300 or something? Do you think it's scalable or is that something you want to test out? And the second question that I've got is we've tried this a few times in government And I'd be willing to play around and join up and see what we could do One of the things that turns whether we would touch this in government Is how much control we would have over the Chile and I'll take two good examples why If you put in a government website or in Google Death, often what you'll get back is a government response is taxes The death duties, taxes, finalising estates, public trust Often the user is typing in death because someone's just died And the user experience they want is assistance with funerals Bereavement counselling, so quite often in the past we've fine tuned what the user will see Knowing that one word can have a number of different flavours And knowing what the general public is actually trying to find So that's why sometimes waiting can work in that instance The other one is the ability to make certain topics not tracked And the one we're quite obvious and I think most of you are aware of this is domestic violence topics Yeah I've seen those, yeah So we don't want those cookies to come back up I mean somebody else in the family is on the computer Yeah that's a good point So those are the little intricacies of doing it in the government context And also not being spooky which is the number one thing But it's quite interesting and I think You think about govcms and amount of sites that are sitting under that single Google identifier And how easily someone can come into the wrong part of government And if we could just let them know, hey I think you might be looking for this These things are really interesting to us But we're taking baby steps into it because of the things that can go wrong But I wouldn't mind playing around with it Yeah cool, so a few questions there I mean what you were seeing there, we're on the super baby free plan Because obviously there's no traffic there So you can, that's free if you've got low traffic And I can't really attest to how scalable it is But it's got a very scalable architecture behind it It's dealing with millions of recommendations an hour or something like that So I think it should be able to handle the scale But ultimately that's Recombi doing that Yeah and then on the other stuff, yeah do not track So the great thing is in Google Tag Manager you could basically say Oh if this page has got anything to do with domestic violence I'm not going to track it, right? So you could just have a little flag on the page like do not track And then when that page loaded up, Google Tag Manager could say Is that do not track value on the page? Okay I'm not even going to track this page So that's the great thing about Google Tag Manager It's like yeah, you can just code that in And that would just be a conditional to show that But yeah this is just coming back with recommendations It's not doing custom logic like display this block to this person So the results you get back are going to be dependent on what they've done So it's a little bit random, right? So you're not really sure entirely what it's going to do When I do talks I always love the questions, right? I'm so nervous before and then I get to the end and I'm all happy So just keep firing them if you want guys Or talk to me after Alright I think that's pretty much it Thanks a lot everyone