Chapter 16. Where in the World?

It’s a beautiful day in this neighborhood. A beautiful day for a neighbor. Would you be mine? Could you be mine?

Mr. Rogers’ Neighborhood

TUBBS: I haven’t seen you before. Are you local?

MARTIN: No, I’m meeting up with a friend actually—going hiking.

TUBBS: Don’t touch the things! This is a local shop for local people, there’s nothing for you here!

TUBBS: Edward! Edward!

EDWARD: Hello, hello? What’s going on? What’s all this shouting, we’ll have no trouble here!

TUBBS: I caught him stealing from the shop. EDWARD: Who is he? Is his identity known?

TUBBS: He’s not local.

“This is a Local Shop,” sketch by League of Gentlemen, BBC

The Local Connection

One of the things we like to do as social creatures is to plan events and gather in groups. Lunches, meetings, playdates, parties, weddings, even funerals—mundane events, and events to punctuate the week and celebrate milestones and major life events. Events have become easier to plan with a variety of online tools, and with the explosion of social tools, they can be more collaborative than ever. Invitation tools and calendaring are two of the oldest applications available online. The addition of the social graph and other rich social tools continues to keep these tools relevant, and we see these features creeping into main-stream social networking sites such as Facebook and LinkedIn.

GPS capabilities are available in more and more of our devices and applications, and the proliferation of mobile devices means we can be connected and location-aware regardless of where we are. Location tools such as geo-tagging, geo-mashing, and even neighborhoods provide a context of place around what we are doing online. Although people may be generally drawn together based on interests or on activities, the natural progression of a community will eventually lead people to get together in real life. The crossover of interests and desire for face-to-face meetings is powerful and really useful. Without explicit interactions to facilitate meeting in person integrated into interest sites, people will still figure out how to bring groups together—only it will be cumbersome and may require the use of multiple sites, along with email, texting, and old-school phone calls. Building in event-creation tools makes this much easier for people.

The following patterns—when added to things like identity, presence, and activities such as forums, collections, and groups—create a rich suite of tools that can be combined to help bring people together, whether they actually know one another or not.

Being Local

What

The user wants to use online social tools to facilitate offline events and meetings in her location (Figure 16-1).

Upcoming.org focuses on local events.
Figure 16-1. Upcoming.org focuses on local events.

Use when

  • Use the following patterns to bring people together at reallocations, offline.

  • Use to plan around real locations, utilizing addresses and maps.

Face-to-Face Meeting

What

The user wants to meet offline with people from his network, in a nearby location (Figure16-2).

Meetup facilitates people meeting in their local areas for a variety of events.
Figure 16-2. Meetup facilitates people meeting in their local areas for a variety of events.

Use when

Use this pattern to help facilitate face-to-face meetings between people.

How

Allow users to create events and invite participants.

Pre-event creation

  • Allow users to enter full details of an event, including location, time, date, details, and special considerations (Figure 16-3).

    Event creation form on Upcoming.
    Figure 16-3. Event creation form on Upcoming.
  • Integrate a calendar (see Calendaring in Calendaring) for scheduling time-based events (Figure 16-4).

    Calendar picker on Upcoming.
    Figure 16-4. Calendar picker on Upcoming.
  • Allow event creators to mark an event as public or private (Figure 16-5 and Figure 16-6).

    Privacy options on Upcoming.
    Figure 16-5. Privacy options on Upcoming.
    Privacy options on Socializr. Secondary text clearly articulates what each choice means.
    Figure 16-6. Privacy options on Socializr. Secondary text clearly articulates what each choice means.
  • Allow users to select locations from a list of places: from city guides, yellow pages, or other directories.

  • Consider indicating nearby establishments, like restaurants, parking, coffee shops, ATMs, or other relevant businesses, which allows for comprehensive planning (Figure 16-7).

    Upcoming provides a map indicating the venue of the event and shows nearby parking, restaurants, ATMs, or a user-entered item.
    Figure 16-7. Upcoming provides a map indicating the venue of the event and shows nearby parking, restaurants, ATMs, or a user-entered item.
  • Provide the full address, phone number, and other relevant details, such as costs, hours, restrictions, or ambiance.

Pre-event attendees

Upcoming shows who from your network is also attending or thinking about attending an event.
Figure 16-8. Upcoming shows who from your network is also attending or thinking about attending an event.
Facebook offers three choices of RSVP for events.
Figure 16-9. Facebook offers three choices of RSVP for events.
Showing attendees can encourage others to RSVP “yes” if they see someone they know in the list.
Figure 16-10. Showing attendees can encourage others to RSVP “yes” if they see someone they know in the list.
  • Consider allowing public events where users invite themselves or follow an event.

  • Consider adding wiki software for collaborative content creation.

  • Integrate maps for selecting and displaying locations (see Geo-Mapping in Geo-Mapping).

  • Allow users to indicate a method for receiving alerts or reminders for events (see Reminding in Reminding).

  • Allow users to easily invite their network or a subset of their network to an event (Figure 16-11). Consider a batch invite process, such as multiselect, for sending invites.

Facebook presents a user’s network in order to easily create a guest list. The interface also offers the ability to add email addresses for those not on the service.
Figure 16-11. Facebook presents a user’s network in order to easily create a guest list. The interface also offers the ability to add email addresses for those not on the service.

Post-event attendees

  • Allow users to attach photos to the event (Figure 16-12).

    Upcoming creates a “scrapbook” for each event attended or watched. Photos from the event are associated with the event through a mashup with Flickr.
    Figure 16-12. Upcoming creates a “scrapbook” for each event attended or watched. Photos from the event are associated with the event through a mashup with Flickr.
  • If the user attended (or RSVP’d “yes”), show the event in his calendar of past events.

  • Consider asking the attendees to rate the event afterward (Figure 16-13).

    Meetup offers a rating option to attendees of recent events.
    Figure 16-13. Meetup offers a rating option to attendees of recent events.

Public events

  • Allow events to be searchable by keyword/category, tags, and date.

  • Allow users to browse through events and filter by keyword/category, tags, and date (Figure 16-14).

    Upcoming filters events by date first.
    Figure 16-14. Upcoming filters events by date first.
  • Show users a list of events being attended by friends in their network (Figure 16-15).

Friend’s events on Upcoming sorted by date first.
Figure 16-15. Friend’s events on Upcoming sorted by date first.

Semi-public events

  • Indicate whether the user must be part of the network in order to RSVP or attend the event (Figure 16-16).

Meetup combines small interest groups with public events. Users must join the group first in order to RSVP for an event or activity.
Figure 16-16. Meetup combines small interest groups with public events. Users must join the group first in order to RSVP for an event or activity.

Related patterns

“Party”, described next

As seen on

Facebook (http://www.facebook.com)

Meetup (http://www.meetup.com)

Socializr (http://www.socializr.com)

Upcoming (http://www.upcoming.org)

Party

What

The user wants to plan an event and invite friends to join the party (Figure 16-17).

Evite party invitation.
Figure 16-17. Evite party invitation.

Use when

  • Use this pattern to allow users to create customized and personal invitations for events such as parties.

  • Use this pattern to replace regular email for party planning.

How

Pre-party planning

Allow users to enter full details of an event, including location, time, date, details, and special considerations (Figure 16-18).

Event details on MyPunchbowl.
Figure 16-18. Event details on MyPunchbowl.
  • Use a calendar picker for easy date selection and minimization of data entry errors (see Calendaring in Calendaring).

  • Offer to add the event to the user’s calendar (Yahoo!, iCal, Google, etc.).

  • Allow event planners to poll invitees through the use of simple polls.

  • Provide templates for invitation display. Allow the event creator to choose a theme that is appropriate to the theme of the party (Figure 16-19 and Figure 16-20).

    Theme selection on MyPunchbowl.
    Figure 16-19. Theme selection on MyPunchbowl.
    Template section on MyPunchbowl.
    Figure 16-20. Template section on MyPunchbowl.
  • Allow the event creator to invite multiple people at a time. Provide a field for adding multiple email addresses.

  • Allow selection from the user’s desktop address book (Figure 16-21).

    MyPunchbowl offers the invitation creator a variety of ways to build a guest list.
    Figure 16-21. MyPunchbowl offers the invitation creator a variety of ways to build a guest list.
  • Consider allowing selection from online address books, such as Plaxo and Yahoo!.

  • Allow the event planner to save the email addresses for later use.

Invitees

  • Offer to add the event to the user’s calendar (Yahoo!, iCal, Google, etc.).

  • Consider showing RSVPs to others and indicating attendees.

  • Show the event on a map (Figure 16-22).

    MyPunchbowl integrates maps into the invitation.
    Figure 16-22. MyPunchbowl integrates maps into the invitation.
  • Allow users to get directions to the event.

  • Consider indicating nearby establishments, such as restaurants, parking, coffee shops, and ATMs, to allow for comprehensive planning.

  • Show the full address and phone number of the location.

  • If the event is at a public location, such as a restaurant or park, show details about the location: hours, ambiance, restrictions, etc.

After party

  • Allow users to upload photos from the event.

  • Consider allowing users to leave comments about the party.

Why

Giving users the tools to create offline events enhances relationships that previously may have existed only online. People want to gather, and they will use whatever tools are avail-able to coordinate the event. Bringing this functionality into your site (if appropriate) will keep users engaged and can create a holistic experience that moves seamlessly from online to offline and back online again.

Related patterns

Face-to-Face Meeting in Face-to-Face Meeting

As seen on

Evite (http://www.evite.com)

Facebook (http://www.facebook.com)

MyPunchbowl (http://www.mypunchbowl.com)

Calendaring

What

A user wants to find or submit an event (public or private) based on a date or within a certain date range (Figure 16-23).

Upcoming allows user to browse events by date.
Figure 16-23. Upcoming allows user to browse events by date.

Use when

How

  • Allow users to associate an event with a date. This can be done through an event-planning interface or within a calendar interface (Figure 16-24 and Figure 16-25).

    Adding an event to Google Calendar.
    Figure 16-24. Adding an event to Google Calendar.
    Associating an event with a date on Upcoming.
    Figure 16-25. Associating an event with a date on Upcoming.
  • Allow the event creator to indicate whether the event is public or private.

  • Allow the calendar event to be shared, whether through direct selections from the user’s network, through email, or through RSS, blogs, or other social offerings.

Selecting a specific date

When selecting an associated date for an event, allow the user to either type in the date or choose the date with a calendar picker. See the Calendar Picker pattern in the Yahoo! Pattern Library for detailed interaction specifics (http://developer.yahoo.com/ypatterns/selection/calendar.html) and the Calendar component in the YUI Library for implementation code (http://developer.yahoo.com/yui/calendar/).

Providing the calendar picker allows the user to see the date in the context of other dates and the day of the week, and it ensures fewer data entry errors.

Calendar details

  • Provide a title and description field (Figure 16-26).

    Calendar entry on Google Calendar.
    Figure 16-26. Calendar entry on Google Calendar.
  • Provide a notes field for URLs and other information.

  • Allow the user to associate a location to the event.

  • When the details are complete, present the event in all presentations of the calendar (i.e., list view, day view, week view, and month view).

  • Present the title, location, and as much of a description as appropriate for the display. For example, the list view would display most, if not all, of the description, whereas the month view may show only a truncated title.

  • Use rollover panels to display the full calendar event without forcing the user to click.

Why

Events are time constrained, and including robust online calendaring tools will make cre-ating parties, events, and face-to-face meetings easier to plan.

Provide enough functionality to be useful without creating a whole enterprise-level application.

Related patterns

Face-to-Face Meeting in Face-to-Face Meeting

Party in Party

As seen on

30 Boxes (http://www.30bxes.com)

Evite (http://www.evite.com)

Facebook (http://www.facebook.com)

Google Calendar (http://www.google.com/calendar)

MyPunchbowl (http://www.mypunchbowl.com)

Upcoming (http://www.upcoming.org)

Yahoo! Calendar (http://www.yahoo.com/calendar)

Reminding

What

A user needs to know when an event is happening (Figure 16-27).

30 Boxes sends out email reminders about events on the calendar.
Figure 16-27. 30 Boxes sends out email reminders about events on the calendar.

Use when

  • Use this pattern to alert others where an event is happening.

  • Use this pattern to encourage sending reminders to a mobile device or email account.

How

  • When creating an event, allow the user to set reminders or alerts about those events (Figure 16-28).

    Setting up a reminder on 30 Boxes.
    Figure 16-28. Setting up a reminder on 30 Boxes.
  • If the event creator is inviting attendees, set the reminder to automatically send alerts to the attendees.

  • Give the user the ability to select from a preset list of reminder times. For instance, Yahoo! Calendar offers to send reminders from 14 days before the event all the way to 5 minutes before the event, and Google Calendar allows you to specify an exact number and then qualifies it with minutes, hours, days, weeks, months, etc. (Figure 16-29 and Figure 16-30).

    Google Calendar reminder setup widget.
    Figure 16-29. Google Calendar reminder setup widget.
    Yahoo! Calendar reminder setup widget.
    Figure 16-30. Yahoo! Calendar reminder setup widget.
  • Reminders should be able to be sent to an email address and to mobile devices or added to a social networking profile.

  • Consider allowing two reminders to be set, for example, 14 days and 5 days before the event.

  • For public events, allow people to set their own reminders.

Related patterns

Calendaring in Calendaring

Face-to-Face Meeting in Face-to-Face Meeting

Party in Party

As seen on

30 Boxes (http://www.30bxes.com)

Facebook (http://www.facebook.com)

Google Calendar (http://www.google.com/calendar)

Yahoo! Calendar (http://www.yahoo.com/calendar)

Geo-Tagging

What

A user wants to annotate a person, place, or thing with a geographic tag, usually in the form of latitude/longitude, which is then translated into an address that can be placed on a map (Figure 16-31.

Flickr users can place and view their photos on a map.
Figure 16-31. Flickr users can place and view their photos on a map.

Use when

Use this pattern when you want to place objects (people, places, or things) on a map.

How

  • If the item is a photo and there is exif data that includes lat/long information, associate that location string with the object (Figure 16-32).

    Adding a photo to a map on Flickr through selection on a map. Lat/long coordinates are presented in the lower right of the interface, but an easy-to-understand real place translation of the location is presented in the top right of the interface.
    Figure 16-32. Adding a photo to a map on Flickr through selection on a map. Lat/long coordinates are presented in the lower right of the interface, but an easy-to-understand real place translation of the location is presented in the top right of the interface.
  • Automatically place the item on a map.

  • If the item has an address associated with it, such as a business, automatically place the item on a map.

  • Allow the user to associate an address with an object.

  • Consider allowing users to drag and drop items (photos, listings, friends) onto a map and associating a location with the item.

  • Allow the user to refine the location by offering an address form. Allow the full ad-dress, a city/state combo, or even a zip/postal code. Fields should be optional.

  • Allow users to enter specific latitude and longitude numbers indicating a point on a map as an alternative to picking a spot on a map.

  • Use the emerging format for geo data, e.g., geotagged geo:lat=57.64911 geo:lon=10.40744. The first item is the tag “geotagged”, allowing all items to be searched from a common tag. The other tags are “geo:lat” and “geo:long”, which was established by geobloggers and has been popularized by sites such as Flickr, Panoramio, and Delicious.

  • Convert geotags into user-friendly addresses when presenting locations in the interface.

  • Clearly indicate how the information will be used.

Why

Offering geo-tagging capabilities for assets, particularly photos, allows them to exist not only in time but also in a context related to the real world. Placing images on a map gives people a sense that this image really exists and that they might see this, too, if they went there. Geo-tagging also announces to a person’s network that she was there, at this spot.

Related patterns

Face-to-Face Meeting in Face-to-Face Meeting

Geo-Mapping, described next

Geo-Mashing in Geo-Mashing

As seen on

Flickr (http://www.flickr.com)

Upcoming (http://www.upcoming.org)

Geo-Mapping

What

A user wants to see where he is (or where his stuff is) in relation to other people and places (Figure 16-33).

Brightkite shows what’s happening around me based on location.
Figure 16-33. Brightkite shows what’s happening around me based on location.

Use when

Use this pattern to automatically place people, status updates, photos, and other objects on a map.

How

  • Present the item location with a graphic pointer on the map (Figure 16-34).

    Flickr displays tags as well as images in its map display.
    Figure 16-34. Flickr displays tags as well as images in its map display.
  • Allow the user to see other people or items on the map in relation to himself (if the user is on a mobile device or has indicated his location).

  • Allow the user to search for items based on location.

Why

Providing easy drag-and-drop tools for placing items on a map can offer alternative ways to filter objects on a site. Additionally, showing items on a map can provide contextually relevant information and can help support local, face-to-face meetings and gatherings between people.

Related patterns

Face-to-Face Meeting in Face-to-Face Meeting

Geo-Mashing in Geo-Mashing

Geo-Tagging in Geo-Tagging

As seen on

Brightkite (http://www.brightkite.com)

Flickr (http://www.flickr.com)

Geo-Mashing

Geo mashups are applications and tools that pull together map APIs from map providers such as Yahoo!, Google, and MapQuest and geotagged content, such as photos, user blogs, news articles, real estate data, videos, status casts, and any other data that can have geotags associated with it (Figure 16-35 and Figure 16-36).

EveryBlock pulls together mapping and content from government records (liquor licenses, zoning permits), real estate listings, photos, media and news articles, and police calls to create a local neighborhood information portal.
Figure 16-35. EveryBlock pulls together mapping and content from government records (liquor licenses, zoning permits), real estate listings, photos, media and news articles, and police calls to create a local neighborhood information portal.
HousingMaps mashes up Google Maps with Craigslist Housing information and shows homes for sale, rent, or share on a map.
Figure 16-36. HousingMaps mashes up Google Maps with Craigslist Housing information and shows homes for sale, rent, or share on a map.

Neighborhood

What

A user wants to know what’s going on around her neighborhood (Figure 16-37).

Outside.in presents news and other content based on neighborhoods.
Figure 16-37. Outside.in presents news and other content based on neighborhoods.

Use when

Use this pattern when pulling together geographic or place-specific content.

How

  • Allow users to select a neighborhood for filtering information. The neighborhood boundaries should include relevant location definitions, including zip code and school districts, and explicit metadata and location keywords (Figure 16-38).

    Users can select a neighborhood to filter content.
    Figure 16-38. Users can select a neighborhood to filter content.
  • Allow people to explicitly identify with a neighborhood, through selection of a specific neighborhood or entry of a zip code.

  • Present the option to connect to people from the same neighborhood or in nearby areas.

  • Allow people to search by neighborhood, zip code, or other relevant location data (Figure 16-39).

    Nearby neighborhoods and other area definitions available for filtering content.
    Figure 16-39. Nearby neighborhoods and other area definitions available for filtering content.
  • Provide an easy mechanism for users to switch neighborhoods.

  • Consider mashing up a variety of interesting and relevant content related to the selected neighborhood. The types of content that can be pulled together include photos, news items, business listings, real estate listings, police blotter announcements, ratings and reviews of businesses, parks and public places, events, and people.

  • Display the user’s location on a map.

  • Display relevant content on a map to indicate proximity to the user.

Why

Bringing together local information around neighborhoods provides a more relevant experience for people who want to keep tabs on what’s happening nearby. The tools can also support bringing people together who are already close in proximity.

Related patterns

Geo-Mapping in Geo-Mapping

Geo-Mashing on page428

Geo-Tagging in Geo-Tagging

As seen on

EveryBlock (http://www.everyblock.com)

Outside.in (http://www.outsidein.com)

Yahoo! Local Neighborhoods (http://local.yahoo.com/neighbors/?csz=South+San+Francisco%2C+CA)

Mobile and Location

Mobile phones are becoming more ubiquitous in the U.S., and in Asia and other parts of the world they are often the primary mode for connecting to the Internet and with other people. Tools and applications for enabling social experiences need to be designed for the mobile experience as more and more people use the phone exclusively or move seamlessly between the computer and the phone for their social transactions.

What

A user wants to connect with friends or post content while on the go (Figure 16-40).

Zannel offers users the ability to see themselves as well as their network on a map.
Figure 16-40. Zannel offers users the ability to see themselves as well as their network on a map.

Use when

Use this pattern when you want to enable users to:

  • Share photos and/or videos from their mobile devices.

  • Plot themselves on a map or announce their locations.

  • Meet up with other people nearby.

How

Content

  • Provide one-click upload of photos and videos.

  • Allow the user to do his setup on the Web as an option. More complex setup that requires typing and data entry is easier with a keyboard than a phone interface.

    But, with that said, the setup and upload of content should be easy on the phone for those not equipped with a computer. (See Figure 16-41.)

    Recent activity posted by users of Brightkite also shows up on the website.
    Figure 16-41. Recent activity posted by users of Brightkite also shows up on the website.
  • Provide one-click ability to share items of interest to others.

Geo

Most mobile phones are now being equipped with geo-location features, which means more and more applications and tools can bring together location and people in interesting ways:

  • Utilize the built-in features of geo-mapping to allow users to share their locations with a trusted network.

  • Allow users to turn off presence or location indicators.

  • Use a user’s location to show nearby businesses or events of interest.

Gatherings

Using a combination of geo-location and text messaging, users can easily pull together an impromptu gathering. Services such as Foursquare and Loopt offer the ability to see yourself and those in your network plotted on a map (Figure 16-42).

Loopt allows users to broadcast to their network for impromptu meetups.
Figure 16-42. Loopt allows users to broadcast to their network for impromptu meetups.
  • Allow users to easily see where their network is located (with permission, of course; see The Ex-Boyfriend Anti-Pattern in The Ex-Boyfriend Anti-Pattern) and send out a message or invitation to meet up to those people.

  • Allow users to send out one message to a predefined group of people.

  • Consider the option of allowing users to send out one message to a group pulled together on the fly that is based on proximity.

Mobile statuscasting

The social mobile person will utilize a variety of tools to announce her current actions and activities for her network and the world to see:

  • When considering a status tool for mobile, allow users to plug into their existing social networks, such as Twitter or Facebook (Figure 16-43).

    Twittelator is a client that taps into the user’s existing Twitter account.
    Figure 16-43. Twittelator is a client that taps into the user’s existing Twitter account.
  • Consider pulling in the activity stream from the user’s existing network onto his mo-bile device.

  • Allow the user to indicate how often to pull data. User should be able to easily turn off the stream to save on data charges and battery life.

  • Allow users to indicate whether their outgoing message is sent via an application, into an existing network, or as an SMS or text message to their network.

Considerations

The CTIA, an international mobile industry body, has published a set of best-practice guidelines for location-based service applications (http://www.ctia.org/content/index.cfm/AID/11300). Two fundamental principles guide the document:

User notice

Location-based service providers should inform consumers as to how their location information will be used, disclosed, and protected so users can make informed decisions about whether or not to use the service or authorize disclosure.

User consent

Once users have selected location-based services or authorized disclosure of their location information, they should have choices as to when or whether location in-formation will be disclosed to third parties, along with the ability to revoke any such authorization.

Related patterns

Activity Streams in Activity Streams

Geo-Mapping in Geo-Mapping

Neighborhood in Neighborhood

Presence Actions and Facets in Presence Actions and Facets

As seen on

Foursquare (http://playfoursquare.com/)

Loopt (http://www.where.com/)

Treemo (http://www.treemo.com)

Twitterific (http://iconfactory.com/software/twitterrific)

Where (http://www.where.com/)

Zannel (http://www.zannel.com)

Further Reading

Best Practices and Guidelines for Location Based Services, International Association for the Wireless Telecommunications Industry,

http://www.ctia.org/content/index.cfm/AID/11300

“Digital Hide and Seek: Are you ready for social mapping?,” by Barrett Sheridan, Newsweek Web Exclusive, originally published August 14, 2008,

http://www.newsweek.com/id/153197/

“Take Your Geo-Mashups Beyond Google Maps,” by Scott Gilbertson, WebMonkey, originally published October 17, 2008,

http://www.webmonkey.com/blog/Take_Your_Geo-Mashups_Beyond_Google_Maps

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
52.15.160.43