IssueNotificationServiceSpecification

Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.

Summary

The Issue Notification Service allows Ubuntu maintainers to push "issue tests" - small bits of code that check a user's system for a given situation - out to user desktops using a web service, without doing a package release. When the issue tests detect a system that meets their internal criteria, they use notification-daemon to display a message describing the situation to the user, and linking to a web page with further information and/or recommended fixes.

Statistics on affected users are returned to the web service in an anonymous form. This specification could supersede binary-driver-education at some point in the future.

Rationale

New users don't always know "the right way to do things" when maintaining their Ubuntu system. They do not usually understand all of the consequences of configuration decisions they make on a daily basis. Ubuntu makes it easy to install packages, but does not make any attempt to help users understand just what it is they are doing, or to recover from mistakes.

The Issue Notification Service's goal is to provide a simple service that can check users' systems for common misconfigurations, hardware problems, or other issues, and then guide users to the resources they need to work the situation out. It also aims to make it easy for Ubuntu developers to push out issue descriptions and solutions between releases, and to provide the community with statistics on the occurence of common problems.

A secondary goal is to give Ubuntu developers an idea of common problems. This could assist in developing dist-upgrades that break for fewer people.

Use cases

  • Joe installs a non-free video driver.
    • an 'issue test' scriptlet pushed to Joe's system detects this
    • the user receives a notification informing them of the problems associated with non-free drivers, and offering a link to a Wiki page with more information
    • the 'installed non-free driver' stat is incremented back at the web server.
  • Beth installs hardware that is known not to work with Ubuntu
    • one of the test scripts pushed out by the web service detects the hardware
    • 'Sorry, your [HP Foomatic 19283d] is not supported by Ubuntu.'
    • provide link to a project working on support, or at least a list of similar devices that DO work.
  • An Ubuntu developer notices a big thread on the forum
    • users are breaking their systems by using bad, hackish scripts to achieve a goal - frustration reigns!
    • The developer examines the problem users are trying to solve, determines the best solution, creates a wiki page explaining it
    • Developer uses the web service to push out a test for systems broken by the hackish script
    • Affected users receive a notification with a link to the wiki page, and are able to repair the damage.
  • A user received a notification at one time, but ignored it. Now he wants it back.
    • He checks his Issue Notification Service history
    • Now he know how to fix his problem.

Scope

This would have to be implemented in two major parts, on the server and as a client application. More to come.

Design

Implementation

Code

Data preservation and migration

Unresolved issues

BoF agenda and discussion


CategorySpec

IssueNotificationServiceSpecification (last edited 2008-08-06 16:28:38 by localhost)