1. A method comprising performing a machine-executed operation involving instructions, wherein the machine-executed operation is at least one of A) sending said instructions over transmission media; B) receiving said instructions over transmission media; C) storing said instructions onto a machine-readable storage medium; and D) executing the instructions; wherein said instructions are instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: maintaining a repository that includes event records defining real world events; allowing users to store event records in the repository; when an event record is stored in the repository by a user, storing event-author information that identifies the user as the event-author of the event record; allowing event-authors to designate their events as private events; storing event-type information that indicates which event records within the repository have been designated by their event-authors as private events; allowing event-authors to designate one or more users as being authorized to view their private events; storing authorized-viewer information that indicates which users have been designated, by event-authors of private events, as being authorized to view their private events; receiving a request to display events to a user; in response to the request, performing the steps of determining that the user is authorized to view a particular private event by determining, based on the stored authorized-viewer information, that the event-author of the particular private event authorized the user to view the particular private event; and transmitting to the user information that includes information about the particular private event.