SocialFromTheStart

Revision 5 as of 2009-11-24 19:00:11

Clear message

Summary

As the use of social networking sites become more prominent, we should bring as much of the social landscape down to the desktop. Utilizing existing desktop applications with social networks as much as possible. In doing this, we need to be careful not to "over do it" yet provide the functionality that users crave.

Release Note

Rationale

Many users want to be social, they want to stay in touch, view photos, organize events, share links, etc. Let's make that part of the daily workflow on the desktop without sending users out to a web browser.

User stories

Assumptions

Research

We recently did a study to determine what kinds of people use social networks and how they use them.

  • 9 people of mixed background observed
  • People migrate between social services in groups (e.g. MySpace->Facebook)

  • Three types of users of social networks:
    • Door: (majority)
      • Very private. Want to have controls on their service.
      • Use SNS as initial contact, but follow up out-of-band.
      • Don't want direct messages or to use SNS for entire conversation.
      • Would like updates from other people on desktop (e.g. tweets displayed via notify-osd)
      • Would not like their information to be sent without opting in
    • Mirror:
      • Record their lives. SNS is a personal scrapbook of important events.
      • Images important.
      • Broadcasting info is not primary goal of usage.
      • Interested in what others are doing and compare to themselves.
      • Would like F-Spot integration to publish.
    • Room:
      • Do activities (e.g. use applications in Facebook)
      • Interact with other people often.
      • Self identity is tied to communicating with other people and things.
      • Gossip.
      • Would like software center integration to see what others use.

Design

Implementation

UI Changes

Code Changes

Migration

Test/Demo Plan

Unresolved issues

BoF agenda and discussion

https://blueprints.edge.launchpad.net/ubuntu/+spec/desktop-lucid-social-from-the-start

Questions

  • How can we expand the use of social services on the desktop?
    • - existing opportunies? - new ideas?
  • First run experience?
    • - How do users discover the social capabilies of the ubuntu desktop? - How do users configure their accounts?
  • New gwibber features?
    • - twitter lists?

Research

  • - 9 people of mixed background observed

    - People migrate between social services in groups (e.g. MySpace->Facebook) - Three types of users of social networks:

    • - Door: (majority)
      • - Very private. Want to have controls on their service. - Use SNS as initial contact, but follow up out-of-band. - Don't want direct messages or to use SNS for entire conversation. - Would like updates from other people on desktop (e.g. tweets displayed via notify-osd) - Would not like their information to be sent without opting in
      - Mirror:
      • - Record their lives. SNS is a personal scrapbook of important events. - Images important. - Broadcasting info is not primary goal of usage. - Interested in what others are doing and compare to themselves. - Would like F-Spot integration to publish.
      - Room:
      • - Do activities (e.g. use applications in Facebook) - Interact with other people often. - Self identity is tied to communicating with other people and things. - Gossip. - Would like software center integration to see what others use.

Proposals/Ideas

  • - Stick with gwibber
    • - Good relationship with upstream - Mojito too hard to integrate into gwibber at this current time
    - Tweets from Software Center - Evolution contacts integrated with microblog people - FSpot shared albums automatically sent to Gwibber - History - Screensaver accessing their photos/friends photos - Collect links from social services - Be careful not to add features by default that only a minority will use - this
    • will reduce the overall experience - Consider making plugins and allow people to customise their experience
    - Add GTK+ widgets for tweets like empathy does for IM - We want to link information from objects to tweets so don't have to manually
    • type information (e.g. installed package X and like it - if can do from application center then X can be automatically filled in)

Off topic

  • - Gwibber stability (in other session)

Sample code to send tweet from any application

via dbus

import dbus
bus = dbus.SessionBus()
db_mb_obj = bus.get_object("com.Gwibber", "/com/gwibber/Microblog")
microblog = dbus.Interface(db_mb_obj, "com.Gwibber")

args = ["This is a test message"]

microblog.operation({
  "args": args,
  "opname": "send",
  })

with the python API

import gwibber.utils
foo = gwibber.utils.GwibberPublic()
foo.post("This is a test message")

tweet deck multi-column UI

POR Regarding Broadcasting

  • Banning auto-tweeting on the desktop
  • pimp out the gwibber UI

Gwibber Actions:

  • add a convenience function like "micro_blog_all"
  • add a widget that standardizes microblogging user interface
  • add a dialog that wraps that widget
  • already have the ability to get twitter feeds, should add more
  • spacial/temporal intersection notifications. "your favorite band x will be
    • in city y when you are." (e.g. from Last FM)
  • Avatar aggregator + gwibber
  • Auto-background from gwibber sources
  • back ground of tag cloud from things that users are mentioning
  • want to have a query that means we could get a more complete photo stream
    • Manuel to add tagging of photos with contacts picker, etc...
    • segal to create a script to make backgrounds out of picutres from the photostream
    • segal to make a screensaver out of feeds, photos, streams
    • Ken/Rodney to move gwibber account setup into desktop


CategorySpec