Building board archiving and sorting

Pinterest Engineering
7 min readbeginner
--
View Original

Overview

The article discusses the development of board archiving and sorting features at Pinterest, highlighting the challenges faced and the solutions implemented. It emphasizes the collaborative nature of these projects, which originated from a company-wide Make-a-thon event.

What You'll Learn

1

How to implement board archiving in a user-centric application

2

Why providing negative signals improves user experience in recommendation systems

3

How to create a persistent user interface state across platforms

Prerequisites & Requirements

  • Understanding of user experience design principles
  • Familiarity with graph storage systems like Zen(optional)

Key Questions Answered

What are the main challenges faced in board archiving at Pinterest?
The main challenges included managing user experience when archiving boards, ensuring that archived boards do not affect recommendations, and maintaining collaborative features for shared boards. These issues highlighted the need for a clear solution that allowed users to archive boards without losing their content.
How does Pinterest implement board sorting for users?
Pinterest allows users to sort their boards alphabetically, reflecting this order in their public profiles. The feature was developed to enhance user organization and was a top request from users, demonstrating the importance of user feedback in product development.
What is the purpose of the negative signal in the board archiving feature?
The negative signal is used to prevent users from receiving recommendations based on archived boards. This ensures that the content shown to users is relevant to their current interests, enhancing the overall user experience on the platform.

Technologies & Tools

Backend
Zen
Used as the graph storage system for managing board archiving.

Key Actionable Insights

1
Implementing user feedback mechanisms can significantly enhance product features.
The board sorting feature was developed in response to user requests, demonstrating the value of actively listening to user needs and incorporating their feedback into product design.
2
Utilizing graph storage systems can simplify complex data relationships.
By using Zen for board archiving, Pinterest efficiently managed user and board relationships, showcasing how graph databases can optimize data handling in applications.
3
Maintaining a clear separation of user states across collaborative features is crucial.
The archiving feature was designed to ensure that individual user actions did not disrupt the experience of collaborators, highlighting the importance of user autonomy in shared environments.

Common Pitfalls

1
Failing to account for user experience when implementing new features can lead to confusion.
In the case of board sorting, understanding how changes reflect on public profiles was crucial to avoid user dissatisfaction.

Related Concepts

User Experience Design
Graph Databases
Recommendation Systems