SocialFromTheStart

Summary

The Social from the start initiative is to bring the popular social networks closer to the desktop by enabling more desktop applications to access social networks.

Release Note

Gwibber provides the engine to connect to many popular social networks. This gives Ubuntu users easy, centralised access to identify themselves on their desktop. There will be a gwibber user interface that will show you a feed of what your friends are doing as well as integration with user switching/presence applet to tell friends what the user is up to. Later other applications can take advantage of this as well, banshee, f-spot, etc.

Rationale

Being "Social" is fun, trendy, and very viral. We should make the desktop more social, making it easier for users to not only use their computer but participate in something much larger, be it ubuntu or any other community they have an interest in.

User stories

  • Steve boots his new netbook with Ubuntu for the first time, he starts the web browser and goes to http://www.facebook.com so he can tell his friends how cool Ubuntu is. An extension detects he is interested in facebook based on his usage of the site, and prompts him to setup his facebook account on his desktop. Three weeks later, he visits http://twitter.com, Steve is then prompted to configure his twitter account, just like he had done for facebook.

  • Jill has had her Ubuntu desktop for a while, she already configured the services she likes to use. She is going out to adopt a new cat from a local shelter and wants to tell her friends on facebook about it, she simply clicks on the applet on the top right and sets her status. The action of setting her status has updated her away message in pidgin, set her status on facebook as well as any other social networks she participates in.
  • Laurie has had her Ubuntu desktop for a while, and being a heavy facebook user, she has already configured her facebook account on her desktop. When her friends update their status, she sees the notification bubbles and the messaging indicator gets updated to reflect the un-read statuses from her friends. To read the closer, Laurie simply clicks on her friend's name in the messaging indicator. This opens a gwibber viewer, which also lets her reply to the status.

Assumptions

We should reuse as much as we can, which is why the initial thoughts are around integration of gwibber. We also assume gwibber can be split out into a service with a separate frontend using dbus to communicate.

Design

Three components

1. configuration UI

  • gnome-about-me UI

2. Service (running over dbus)

  • started on demand with dbus service activation

3. Gwibber UI

  • Frontend that reads status, renders them in some feed, and updates status, etc.
  • potentially other applications that can read or write from the service

Configuration

1. configure as we get hints the user is interested

  • firefox extension that detects visits to social networking sites, and suggests you configure your desktop to use them effectively.
  • this does require the user to setup their accounts in both the website and on their desktop, but I think it is important we keep a distinction there. Trying to extract the credentials via a firefox extension could be very questionable.

2. If the users launches the feed viewer (gwibber frontend) before configuring any social networking accounts, gwibber will prompt them to configure them.

Implementation

UI Changes

The existing user interface is good enough for a start, but eventually it should be reviewed for a more user centric design. The design team is providing feedback to upstream. There will be a menu item for viewing your social network feed, which will include a way to update your status as well. The configuration should left in about me.

Code Changes

  • Split gwibber into frontend and backend
  • add configuration to gnome-about-me
    • propose these changes to upstream, only display the social config if gwibber is present
    • upstream is interested in this change, and might do it for us
  • make configuration available as a dbus service

Migration

  • Upgrading users which have not used gwibber in the past, will configure their accounts as needed same as first install users.
  • Existing gwibber users configuration will migrate automatically.

Test/Demo Plan

  • Configuration
    • Add account information for supported social networks
  • Feeds
    • Verify feeds are available by viewing the feed
    • Post your own status and confirm all the configured networks get the status update

Unresolved issues

BoF agenda and discussion

Ken VanDine: split Gwibber into a daemon and a front end. - Using gwibber to set all of your social network settings. - entering updates in the fast-user-switching applet?? - KDE support? http://choqok.gnufolks.org/ - gnome-about-me integration?

  • + services / account info + avatar?

Make these settings during the install process? OEM config? - installer user creation wizard vs first-run experience wizard?

Integrate with the contact settings that will be available through Ubuntu Online services - instead of just following identi.ca/jorge, I follow my friend Jorge, and it knows all the different services he broadcasts on

  • - (what friendfeed does(in a way))

Jonathan - KDE's Social Desktop

  • - Open collaboration services - Freedesktop.org

What is the relationship between this person who is my friend, and this account on Facebook?

  • - Self-set your identies in different services - Tell the system you want to follow this person - The system knows that person uses service A (with account a), etc - You are subscribed to those accounts now.

Standards?

Can we leverage sharing webs to infer goals of sharing with specific people to rather make desktop apps the hub of sharing

  • for example, you share with foo and bar people over flikr, why not share with foo and bar over f-spot? = Karmic =
    • gathering existing relationships
    • gathering of read relationships
      • potnetially turn into some read and write relationships

Three components

1. configuration UI 2. Service (running over dbus) 3. Gwibber UI

(then other UIs can run on top of the service

"From the Start" 1. Installer 2. First run experience (OEM config) 3. First run on clean install

Ivanka: usability - vast majority = being able to set it up for the first time is good, having to look for how to set it up is very frustrating

MPT: but at the same time, if you want

Natural places - rapid interaction is starting with my status can there be a hook to link to a deeper place state of mind and photo

Steve: on visit to social networking site, ask the user if you want to add your account details to gwibber. similar to "save this password"

What about the issues around the sense that Ubuntu is watching what sites you use and how you use them?

Jorge: need to get people to run the daily builds. (https://launchpad.net/~gwibber-daily/+archive/ppa)

Mark: Make commitment early to move gwibber into main.

GDM/FUSA, GWibber, About Me, Ux First run experience Design review of Gwibber

Need the desktop experience designed and scoped for Karmic About me is very static, go there once

Jorge: now, it's now longer a hobby project need to get people running the daily builds need better release management have experience in the ubuntu community to help out have a daily build that can help out issues regarding the web kits and bindings, have crashers in their The way it's shipped in Jaunty is not ideal, lots of bugs really need regression testing suites / ui testing etc.

Changing the UI of gwibber? Based on the UI reviews. Accounts part will be taken out (most likely)

tell it a little aboyut myself it starts ripping throuhg the indicator auto-discovery of bring me into the desktop


CategorySpec

DesktopTeam/Specs/Karmic/SocialFromTheStart (last edited 2009-06-16 17:24:05 by ken-vandine)