Social Networks
Identity, graph, and feed — three hard problems that compound rather than add.
2.8.1Definition & Purpose
A social network organizes a product around user identity and the relationships (follows, friends, connections) between users, typically surfacing content through an algorithmically or chronologically ordered feed. Unlike a forum, the core organizing unit is the person and their graph of connections, not the topic.
2.8.2Architecture Priorities
The social graph and feed generation are the hardest scaling problems in this category — computing a personalized feed for millions of users in real time requires careful architecture (fan-out strategies, caching, precomputation) well beyond typical CRUD patterns. Event-driven design (1.5) is common here, decoupling actions (a post, a like) from the many downstream consumers that need to react to them (feeds, notifications, counts).
2.8.3UX Priorities
- Feed relevance and freshness balance directly affects engagement and must be tuned deliberately, not left to a single default sort.
- Notification design has an outsized effect on both engagement and user trust — over-notifying erodes trust quickly.
- Privacy and visibility controls must be clear and granular; ambiguity here is a recurring source of user harm and backlash.
2.8.4Common Mistakes
- Underestimating the infrastructure cost of feed generation at scale until growth makes naive approaches fall over.
- Optimizing purely for engagement metrics without considering long-term trust and wellbeing effects on users.
- Ambiguous or overly complex privacy settings that lead to unintended public sharing.
2.8.5Best Practices
- Design feed ranking and notification systems with explicit, revisitable goals, not only raw engagement maximization.
- Make privacy defaults conservative, with visibility choices clear and easy to verify.