SocialFromTheStart
Launchpad Entry: desktop-lucid-social-from-the-start
Created: 2009-11-13
Contributors: KenVanDine
Packages affected: gwibber
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.
- Door: (majority)
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
- - 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.
- - 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.
- - Door: (majority)
Proposals/Ideas
- - Stick with gwibber
- - Good relationship with upstream - Mojito too hard to integrate into gwibber at this current time
- will reduce the overall experience - Consider making plugins and allow people to customise their experience
- 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