Where the previous 'This week in Memri' posts focused on what we achieved, this one is slightly different. We used our time to evaluate our process and to decide what we want to create during the next milestone. Furthermore, we wanted to relieve some stress after the hard work we all put in to reach the previous milestone goal, and to evaluate our process to grow as a team.

  1. Feedback and personal growth
  2. The goal of the next milestone
  3. Data types
  4. Community

Feedback and personal growth

We aspire to both grow ourselves and to enable each other to do so. We believe that to achieve this, it’s crucial to give and receive feedback in a safe and constructive way, which is easier said than done. For different people, this means different things. And during stressful periods, it can be easy to sacrifice kindness for the sake of efficiency, not often without negative repercussions further down the road. Therefore, we did several exercises to practice our feedback skills, and to experiment with various forms to discover what works best for us as a group and as individuals. These exercises are not always easy, but it was a positive experience that proves to be valuable and helps us to strengthen the relations within our team.

The goal of the next milestone

After a successful end of our previous milestone, we first had to set a goal for the next one, which we defined as: A product people are willing to pay for. To achieve this, we need to add features of value to Memri, within the time and resources constraints of course. That’s why most of our time this week went into researching the value and feasibility of all the ideas we have for Memri. To assess the value of potential features, we looked at the analysis of the (ongoing) use-case interviews. For the feasibility we discussed the efforts we need to make to implement a feature, and the risks they bear. It’s sometimes a bit daunting, but mostly very exciting to take a step back and have a deep look on what we want to achieve.

Data types

During our planning sessions, one decision is evidently important: What data types do we want to focus on next? We are now able to import notes from a couple of sources, and to create, edit and search notes in the app. But our vision of Memri requires the ability to gather personal data of all types from all kinds of places. And these data types have various degrees of complexity. If we want to support photos for instance, we need importers for services where we currently store photos, views to show photos in a grid view or a timeline, and back end functionality to efficiently and securely store and serve images to your device, the latter is especially important here, given the size of images (I have 10s of GBs of photos, and many have quite a lot more). If we want to focus on messages on the other hand, challenges lie in fast synchronization with various messaging apps, which all use different APIs that may change and break.

Browsing the schema that defines our data model.


Another goal for the coming milestone is enabling the community to tailor their Memri experience to their own desires, and to contribute to the product so others can benefit from their efforts. To achieve this, we need to improve our documentation and setup contribution guides. Furthermore, when users create extensions for new data types, it is important to prevent conflicts in the data model. Therefore, we created a schema repository that defines how we store and relate data; Both the front end (CVU views) and back end (database interactions) depend on this schema. As we cannot beforehand know all the possible types and properties needed in the future, some extensions will require an update of the schema, which means that we’ll have to create robust procedures to propagate changes to all moving parts that make up Memri.

We’re looking forward to building on what we have already achieved and to see where we will be after the next milestone!