Firefox Social Integration
Status
Firefox Social Integration | |
Stage | Complete |
Status | Complete |
Release target | Firefox 17 |
Health | OK |
Status note | ` |
{{#set:Feature name=Firefox Social Integration
|Feature stage=Complete |Feature status=Complete |Feature version=Firefox 17 |Feature health=OK |Feature status note=` }}
Team
Product manager | Asa Dotzler |
Directly Responsible Individual | Sheila Mooney |
Lead engineer | Shane Caraveo |
Security lead | Michael Coates |
Privacy lead | ` |
Localization lead | ` |
Accessibility lead | ` |
QA lead | Anthony Hughes |
UX lead | Jennifer Morrow |
Product marketing lead | ` |
Operations lead | ` |
Additional members | Mark Hammond, Jared Wein, Gavin Sharp, Felipe Gomes |
{{#set:Feature product manager=Asa Dotzler
|Feature feature manager=Sheila Mooney |Feature lead engineer=Shane Caraveo |Feature security lead=Michael Coates |Feature privacy lead=` |Feature localization lead=` |Feature accessibility lead=` |Feature qa lead=Anthony Hughes |Feature ux lead=Jennifer Morrow |Feature product marketing lead=` |Feature operations lead=` |Feature additional members=Mark Hammond, Jared Wein, Gavin Sharp, Felipe Gomes }}
Open issues/risks
`
Stage 1: Definition
1. Feature overview
The Web has become inherently social. The browser is not yet playing a significant role in enabling the social experience. We are going to change that.
Just as we saw search become an integral tool for getting around on the Web and so integrated search touch points into the browser, so has social become an integral part of the Web experience, and that's driving the need for social touch points in the browser.
The first generation of integrating the social experience into Firefox will consist of four touch points.
- Integration of persistent social notifications into the Firefox toolbar.
- Integration of news feeds, tickers, buddy lists, etc., into a Firefox sidebar.
- Integration of chat, voice, video, etc. into docked or floating window.
- Integration of a share/recommend service in the Firefox toolbar.
With these touch points, users will be able to carry their social presence and tools with them, outside of confines of specific social websites. No longer will users need to be visiting a social provider to share or recommend something within that service, nor will they have to navigate the NASCAR-like mess of social widgets accompanying so much Web content. Users will be able to chat and get updates of various kinds from where ever they happen to be on the Web.
By integrating social into Firefox, Mozilla will put you, instead of any one website, at the center of your social experience.
2. Users & use cases
Users: Firefox users with accounts on social networks.
Use cases:
- A Twitter user is reading a compelling Wikipedia article and would like to share a link to that article with her Twitter followers. Because she's got the new Firefox that features social integration, it's as simple as clicking the share button.
- A Diaspora user is surfing the Web and doesn't want to miss any new posts from his friends back at Diaspora. Firefox has a convenient sidebar where Diaspora sends news updates so he never misses his friends' updates.
- A Google+ user wants to quickly open a chat without chasing down her buried Google+ tab in Firefox. She clicks her buddy's name in the Firefox social sidebar and it pops out a chat Window.
- A Facebook user, just about to hit the 1,000 friends mark doesn't want to miss that incoming friend request. Because he's got Firefox's new social features, he'll get a notification in his Firefox toolbar when any new friend requests, new messages, or notifications arrive.
3. Dependencies
This feature depends on:
- The Social API back-end implementation
- UR and UX work to test and design the experience for discovery and enabling social features, each of the 4 social touch points, disabling the social feature, and switching between social providers.
- Labs and Firefox engineers to implement the front-end of the Social API
- Social providers to offer up an Open Web Application Manifest - which contains the name, icon, and service data needed for the browser to communicate with the web property.
4. Requirements
- To manage a list of social services (discover, install, delete)
- To display to the user which social services they are currently signed in to
- To easily sign in and out of a service, and to switch which service the user is interacting with, or to switch off social interaction
- To recommend the current page to their friends on a network - either as a standalone URL or with a comment.
- To see which of a user's contacts are online
- To initiate real-time communication with a contact through chat, voice, or video
- To see updates from contacts and to be notified when new updates are available
- To receive, at the user's discretion, ambient or immediate notification when interesting events have occurred
Non-goals
Mixing and matching different parts from different social providers is a non-goal. Users must be able to switch between providers, but it is not required that users be able to display touch points from multiple providers simultaneously.
Stage 2: Design
5. Functional specification
See Firefox_Social_Integration_Design_Spec
The API for social providers is defined in Social API doc and the newsgroup post Proposing some social features for Firefox
6. User experience design
The most up-to-date spec can be viewed here
Stage 3: Planning
7. Implementation plan
See the design spec for some thoughts.
A GitHub repo containing a full working implementation of the feature, as an addon, is at [1].
A GitHub repo containing just the backend pieces, is at [2].
8. Reviews
Security review
https://bugzilla.mozilla.org/show_bug.cgi?id=733414
Privacy review
`
Localization review
`
Accessibility
`
Quality Assurance review
See Firefox Social Integration QA Plan
Operations review
`
Stage 4: Development
9. Implementation
List of open issues [3]
Stage 5: Release
10. Landing criteria
` {{#set:Feature open issues and risks=` |Feature overview=The Web has become inherently social. The browser is not yet playing a significant role in enabling the social experience. We are going to change that.
Just as we saw search become an integral tool for getting around on the Web and so integrated search touch points into the browser, so has social become an integral part of the Web experience, and that's driving the need for social touch points in the browser.
The first generation of integrating the social experience into Firefox will consist of four touch points.
- Integration of persistent social notifications into the Firefox toolbar.
- Integration of news feeds, tickers, buddy lists, etc., into a Firefox sidebar.
- Integration of chat, voice, video, etc. into docked or floating window.
- Integration of a share/recommend service in the Firefox toolbar.
With these touch points, users will be able to carry their social presence and tools with them, outside of confines of specific social websites. No longer will users need to be visiting a social provider to share or recommend something within that service, nor will they have to navigate the NASCAR-like mess of social widgets accompanying so much Web content. Users will be able to chat and get updates of various kinds from where ever they happen to be on the Web.
By integrating social into Firefox, Mozilla will put you, instead of any one website, at the center of your social experience. |Feature users and use cases=Users: Firefox users with accounts on social networks.
Use cases:
- A Twitter user is reading a compelling Wikipedia article and would like to share a link to that article with her Twitter followers. Because she's got the new Firefox that features social integration, it's as simple as clicking the share button.
- A Diaspora user is surfing the Web and doesn't want to miss any new posts from his friends back at Diaspora. Firefox has a convenient sidebar where Diaspora sends news updates so he never misses his friends' updates.
- A Google+ user wants to quickly open a chat without chasing down her buried Google+ tab in Firefox. She clicks her buddy's name in the Firefox social sidebar and it pops out a chat Window.
- A Facebook user, just about to hit the 1,000 friends mark doesn't want to miss that incoming friend request. Because he's got Firefox's new social features, he'll get a notification in his Firefox toolbar when any new friend requests, new messages, or notifications arrive.
|Feature dependencies=This feature depends on:
- The Social API back-end implementation
- UR and UX work to test and design the experience for discovery and enabling social features, each of the 4 social touch points, disabling the social feature, and switching between social providers.
- Labs and Firefox engineers to implement the front-end of the Social API
- Social providers to offer up an Open Web Application Manifest - which contains the name, icon, and service data needed for the browser to communicate with the web property.
|Feature requirements=* To manage a list of social services (discover, install, delete)
- To display to the user which social services they are currently signed in to
- To easily sign in and out of a service, and to switch which service the user is interacting with, or to switch off social interaction
- To recommend the current page to their friends on a network - either as a standalone URL or with a comment.
- To see which of a user's contacts are online
- To initiate real-time communication with a contact through chat, voice, or video
- To see updates from contacts and to be notified when new updates are available
- To receive, at the user's discretion, ambient or immediate notification when interesting events have occurred
|Feature non-goals=Mixing and matching different parts from different social providers is a non-goal. Users must be able to switch between providers, but it is not required that users be able to display touch points from multiple providers simultaneously. |Feature functional spec=See Firefox_Social_Integration_Design_Spec
The API for social providers is defined in Social API doc and the newsgroup post Proposing some social features for Firefox |Feature ux design=The most up-to-date spec can be viewed here |Feature implementation plan=See the design spec for some thoughts.
A GitHub repo containing a full working implementation of the feature, as an addon, is at [4].
A GitHub repo containing just the backend pieces, is at [5]. |Feature security review=https://bugzilla.mozilla.org/show_bug.cgi?id=733414 |Feature privacy review=` |Feature localization review=` |Feature accessibility review=` |Feature qa review=See Firefox Social Integration QA Plan |Feature operations review=` |Feature implementation notes=List of open issues [6] |Feature landing criteria=` }}
Feature details
Priority | P1 |
Rank | 999 |
Theme / Goal | This feature falls primarily in the Connect space |
Roadmap | Firefox Desktop |
Secondary roadmap | Sharing |
Feature list | Desktop |
Project | ` |
Engineering team | Desktop front-end |
{{#set:Feature priority=P1
|Feature rank=999 |Feature theme=This feature falls primarily in the Connect space |Feature roadmap=Firefox Desktop |Feature secondary roadmap=Sharing |Feature list=Desktop |Feature project=` |Feature engineering team=Desktop front-end }}
Team status notes
status | notes | |
Products | ` | ` |
Engineering | ` | ` |
Security | sec-review-needed | bug 733414 |
Privacy | ` | ` |
Localization | ` | ` |
Accessibility | ` | ` |
Quality assurance | In progress | Test Plan |
User experience | ` | ` |
Product marketing | ` | ` |
Operations | ` | ` |
{{#set:Feature products status=`
|Feature products notes=` |Feature engineering status=` |Feature engineering notes=` |Feature security status=sec-review-needed |Feature security health=` |Feature security notes=bug 733414 |Feature privacy status=` |Feature privacy notes=` |Feature localization status=` |Feature localization notes=` |Feature accessibility status=` |Feature accessibility notes=` |Feature qa status=In progress |Feature qa notes=Test Plan |Feature ux status=` |Feature ux notes=` |Feature product marketing status=` |Feature product marketing notes=` |Feature operations status=` |Feature operations notes=` }}