Comment 14 for bug 399319

Revision history for this message
Abel Deuring (adeuring) wrote : Re: [Bug 399319] Re: Remove the HAL dependency from Launchpad HWDB and checkbox

On 23.08.2009 23:16, Marc Tardif wrote:
> Very good points, and I would like to add another motivation for using
> raw files instead of structuring the data. If the Launchpad hardware
> database only relies on specific raw data, we could make sure that
> apport gathers that same data when reporting bugs. So, the hardware
> database could even start polling for bug reports instead of being
> limited to Checkbox submissions. This could potentially make the
> hardware database even greater!

Well, apport could also simply invoke checkbox, if we think this makes
sense ;) As I understand it, checkbox uploads a bunch of attachments to
bugs report. And walking through all bug report to find some hardware
data is quite inefficient.

>
> The only problem I see is with the target element in questions. If
> devices are expressed as raw data, it is no longer possible to uniquely
> identify the related device based on a numeric reference.

I already changed the RelaxNG specification for the "target" attribute
to allow string values. We can simply use the sysfs path. See the new
schema variant and the sample file I uploaded earlier.

> However, since
> questions should eventually disappear from the hardware database,
> perhaps this is not an issue. If we could adopt the schema you proposed
> in this bug shortly, could we consider removing the concept of questions
> at the same time?

Well, you can simply decide not to ask questions at all, and not to send
related data, even if the schema allows questions ;)

I think we need to discuss again what questions to ask and why. Most of
the currently asked questions are IMHO quite pointless:

"Testing your connection to the Internet:"

If a machine does not have an internet connection, you can't send any
data to Launchpad. So, the only thing we can deduce from answers to this
question is how careful the user answered it -- submissions having the
answer "No" should simply not exist.

"Is your keyboard working properly?"

If the keyboard does not work at all, people can't submit the data: you
need the keyboard to type an email address before submitting the report.
So , in the best case we would see reports where people can say that for
example additional buttons for things like changing the sound volume
don't work, or that the keyborad layout is wrong.

If we ask questions about the keyboard at all, they should be more specific.

"Moving the mouse should move the cursor on the screen."

Sure. But how many people will find checkbox without clicking around in
the menus, ie.e, without using a mouse? (More generally, how many people
are able to use a computer without a pointing device?)

A slightly more interesting variant for laptops might be this: "Checkbox
found these pointing devices: A trackpoint, a touchpad and a USB mouse.
Is this list correct? If not, is some device missing, or is a device
listed that does not exist? Does the trackpoint work? Does the touchpad
work? Does the USB mouse work?"

"Detecting your network controller(s)"

That's a somewhat better question, but if the list is incorrect, it
would be good if a follow-up qiuestion would allow people to say that
some device is not listed or that a listed device does not really exist.

The more interesting question is anyway if a given network device works
or not. We can automatically deduce an answer for the device used to
connect to the Internet.

"Do you hear a sound?"

That's more useful. (But it would be good to know _which_ device was
tested ;)

"This display is using 2960 x 1050 resolution."

This is a useful question, I think.

"Do you see color bars and static?"

What is the point of this test? We can assume that the video display
works, at least basically. Otherwise, most users aren't able to run
checkbox -- how many people know about things like "ssh -X"?

I think we should first discuss _why_ we want to pester users with
questions about their hardware and then decide what to ask and how.

One of the original use cases was to get an idea how well devices are
supported by Ubuntu. Here, we could ask questions like

"Does your (printer|scanner|sound device|...) work?"

"Did you need to do any manual configuration/upload firmware files/..."?

"Checkbox detected the following devices. Please tell us if they work:

  device works without works with does not work
      tweaking tweaking

  HP 1234 (printer) ( ) ( ) ( )

  Mustek 235 (scanner) ( ) ( ) ( )

  Logitek 345 (soundcard) ( ) ( ) ( )

What manual configuration steps were necessary for device X?"

But this bug report is probably not the best place for such a discussion.