Tonight!: Optimizing Social Life through Integrated Friend Networks
Optimizing social life using online friend networks
This paper introduces "Tonight!", a social recommendation system that aggregates data from Facebook, Yahoo! Local, and Google Maps. It leverages physical social networks to provide personalized suggestions for nightlife locations based on friend activity and business promotions.
TL;DR
The paper "Optimizing Social Life using Online Friend Networks" presents Tonight!, an early-stage social intelligence platform. By combining the social graph of Facebook, the local business data of Yahoo!, and the mapping prowess of Google, the authors create a unified "System of Systems" designed to solve the age-old problem: "Where should we go tonight?"
Background & Motivation: The Friction of Socializing
Human beings are inherently social, yet the logistical burden of coordinating a night out is often high. The authors identify a significant gap in the 2000s-era web:
- The Discovery Gap: Traditional platforms were closed silos; if you wanted to build a social app, you had to recruit users from scratch.
- The Trust Gap: Generic review sites treat all feedback equally, whereas users naturally prioritize their friends' opinions.
- The Information Overload: While Facebook provided social updates, it lacked a processed, map-centric overview of "real-life" physical environments.
Methodology: The "System of Systems" Architecture
The core innovation of "Tonight!" lies in its Information Aggregation. Instead of building a new network, it acts as a middleman between three giants:
- Facebook (The Identity Layer): Uses the Facebook API/FBML to authenticate users and extract the "Friend Network."
- Yahoo! Local (The Knowledge Layer): Provides business categorization, GPS coordinates, and baseline public rankings.
- Google Maps (The Visualization Layer): Renders the interface where users can see friend locations and "attendance heatmaps."
Technical Architecture
The system is divided into two operational modules:
- Synchronous Module: Handles real-time API calls and manages the local cache to ensure the UI remains responsive even if third-party APIs lag.
- Asynchronous Module: Operates during low-load periods to process reviews, calculate average scores within specific friend circles, and identify similar venues.

Usability Meets Scalability
A key challenge for social apps is Virality vs. Performance. If the system slows down as more friends join, users churn. The authors implemented several "web-scale" strategies for the time:
- Memory & Disk Caching: Reducing redundant hits to the Yahoo! and Facebook APIs.
- Asynchronous Journaling: Using a journal table for SQL writes to prevent database locking during high-traffic periods.
- Traffic Outsourcing: Shifting heavy assets (images/maps) to Google and Facebook’s robust CDN infrastructures.
The Mapping Interface
One of the unique features is the use of Polygons on Google Maps. By adjusting the opacity and color of polygons, the app provides a qualitative overview of a region:
- Opacity: Indicates population density.
- Color: Represents demographic variables like friend density or male-to-female ratios.

Critical Analysis & Conclusion
The "Tonight!" system was a precursor to modern location-based services (LBS) like Foursquare or the later integration of Facebook Places.
Why it Works
The insight that social weight > public weight is the bedrock of modern recommendation algorithms. By automating the data aggregation, the system removes the "manual labor" of social coordination.
Limitations & Evolution
While innovative for its time, the paper highlights some early limitations:
- Privacy: The transparency of friend locations relies heavily on user opt-in, which remains a contentious point in LBS.
- Mobile Gap: At the time of writing, GPS-enabled mobile devices were just emerging. Today, such a system would be mobile-first, utilizing real-time background location rather than manual "check-ins."
In summary, this work provides a fascinating case study in System of Systems Engineering, proving that value often lies not in creating new data, but in effectively connecting and processing existing digital ecosystems.
