When you start the Memri app and use it like you normally do it might feel as if everything you see is happening there and then, in reality that isn’t the case. A front-end app, like the one you’re using, is very important and allows you to interact with the system we’ve created, but without the other parts, it would be useless. In this blog you will learn more about what those parts are and how they work together.

What is the Personal Online Datastore and why do you need one?
For you to be able to use our app a lot of different elements need to work together in harmony. One of the most vital elements is the Personal Online Datastore or POD.
Let’s say you’re opening up the app and want to spend 10 minutes only to browse through tweets related to Machine Learning. To do so those tweets (or any other social-media post for that matter) needs to be stored somewhere. That somewhere is the POD.
The POD is your own server which only you can access. The information stored in there is encrypted and can only be used with the key you have. Meaning that if someone unplugs the server, takes it home and tries to access it, they won’t be able to access or understand any of the information stored in the POD.
As you can see in the image above, the POD is the central part of our entire system. It stores your data in a safe and organized way so that nobody can access it and so that the Machine-Learning models that we build can do their magic. More on those later.
For the POD to be of any use it’s vital that the data that is stored in there is constantly imported from the external sources. There’s not much use if you’re only seeing tweets from 2 years ago and miss out on all the new things, right?
For the POD to import and interact with external services, we created two types of plugins:
- Importer-plugins: those, you guessed it, import your data from external parties. E.g. getting in and storing all tweets from your timeline.
- Action-plugins: which action things. E.g. sending a message using Whatsapp without having to leave the Memri-app.
Creating those plugins can be really complicated. External parties store their data in different ways which can make it hard to pull information and put it in the right context and do something with it. Something as simple as someone’s name can be very complicated to understand from the data that has been pulled: , is it their twitter handle or is it the one the email address they created when they were 12?
Keeping your data scattered across different service vendors is the equivalent of “I will throw this thing in an attic in a random house and when I need it again, I will just knock some doors to see if it’s there.”
Since we not only want you to be able to store data on the POD but also enable you to use it in a meaningful way, the data that’s imported needs to first be organized. Instead of throwing it in the attic of a random neighbor, you put it safely in your own attic, in a specific location, labeled and easy to find, and with nobody being able to move it around or misplace it for you. (If only that would be possible for your Christmas decorations!)
Machine Learning Magic Enabled by Indexing Your Data
By organizing the data from all those different sources in the same way, Machine Learning (ML) models can be trained and used to make your life easier. Before they can do so a process called “indexing” needs to happen. This indexing is done by a mixture of importing information from the source (“date” “Username” “likes”), but also by Machine Learning models that are trained to provide specific context (“Topic” “Bot or Human” “Interesting for you”)
So when a tweet is imported to the POD, the indexers add labels such as: “twitter” “username” “Topic” “date” “Likes” “Friend” “Bot or Human” or any other label you’d find interesting.
By combining the labels and information from other sources it becomes possible to build tools that can help you in your daily life.
How Machine Learning can be used to make your life easier
That Machine Learning tools can make your life easier is probably no surprise, the question is how!? The options are endless, but below you find some examples that hopefully also spark your creativity.
Sticking with the tweet example for now; Let’s say you import a new piece of data: a tweet about cats. An indexer will then label it as a tweet and another adds label with the topic: “cats”. Now that you have that it would allow you to only see cat-related tweets and nothing else if you chose to do so. Not good enough? Add another filter and only see red cats! More of a dog-person? Do the exact opposite and see no cat-related tweets ever! (Or filter out the Elon Musk Twitter drama when you had enough of that for the week)
This way you take control of what you see and don’t get the distractions you have when browsing Twitter normally. You just see things that you really want to see at that moment in time, no more time wasted on scrolling until you find the next interesting post.
A more complex use case: You’re receiving messages from a friend about an upcoming birthday party. Those messages go in the POD and labels are added. The indexers collect the most important information such as the date, person and location of the party. The tool creates a calendar event and places it in your calendar directly (Action-plugin). It will remind you to buy a gift for that person and since the app recognizes who the birthday-girl is, it can even do a suggestion or remind you of the present you gave her last year. No more giving the same gift twice!
All Components Working Together
In this blog we introduced the different components of our system in the most basic way possible and have given some potential use cases for how our tool could make your life better. The POD, the importer-plugins, action-plugins, indexing-plugins and ML-models work together and all have an essential role in making our app work well, and besides that they provide the infrastructure we need to keep expanding our product over time and allowing others to build their own tools on it as well. Want to know more about that? Have a look at our VISION BLOG or development journey to learn more.