views:

206

answers:

11

Hi,

When gmail activated Mail Goggles (if you try to send an email by night, it'll ask you simple math questions to be answered in 60", to determine whether you're too tired or drunk to think of what you are writing), I gave it a try, just for fun. Well, it doesn't work, not for me, at least: as far as I can read the screen, I can do easy math, and answer Goggles's questions in less than 13 seconds.

So I wonder: is there a heuristic that a program can use to tell, with some degree of precision, if a user is lucid or not, by average hit-rate, or some other questions, or a graphical captcha, moving interface controls to an unexpecting position or whatever?

More generically: is it possible to determine how much attention the user is paying in a given moment?

+1  A: 

No because being drunk / tired / whatever will affect people differently.

Clearly I'm not paying attention, and didn't read the question because I'm tired.

I don't think there is a reliable method for this.

PostMan
A: 

Reaction time (normally approx. 0.3 seconds) is an objective measure. One problem is that it can vary from person to person. The stimulis time (e.g. something on the screen going from red to green) should not be predictable (e.g. the time interval between the tests should be random in the range [1 sec; 10 secs]).

Peter Mortensen
You can't rely on reaction time; a perfectly sober handicapped person might have a poor reaction time.
Jay Riggs
+4  A: 

In the future, your webcam will be used to measure blink rate and figure out whether your eyes follow movement on the screen.

pavium
Maybe, but I don't think browsers would allow your site to take statistics of whatever user is doing like that. Where's the privacy?
Havenard
I didn't say anything about browsers. I'm beginning to think 'privacy' and 'internet' are incompatible concepts.
pavium
+1  A: 

You might have good luck using a sort of bayesian analysis on some of the sorts of things you mentioned. Typing speed, accuracy, source ip address, browser, time of day, mouse precision, etc. Pump it all through some statistics and spit out a "xx% average" performance number and do with it what you will.

I don't think it will be easy, but it might be fun. The easy and effective solution is probably to just ask them =p

easel
A: 

Show the user a logic puzzle. if he answers correctly, then he are paying attention.

;)

A: 

The amount of data you need to determine that one data set (say mouse click rate, keyboard typeing speed, misspelling rate) is different from another data set can be very large, or you have to accept a high chance of saying a users previous behavior (paying attention) is different from the current when in fact it isn't. Plus there is the problem of using what is easily measurable (typing speed, answers to math questions) to try to measure something that is hard to measure (attentiveness)

MatthewMartin
+1  A: 

I guess that any approach to be successful will need a period of training and adjustment to a user.

Logic questions, typing speed, mouse precision, they could all be used (in combination even) if the criteria for a pass/fail is defined by a training period. This training should get samples from both ham and spam (ie, with the same user in both lucid and drunk states).

Vinko Vrsalovic
+2  A: 


What?

John Lockwood
That's exactly what I'm thinking.
Sergey
+1  A: 

Build a breathalyzer that hooks up to the USB port and then make it a mandatory requirement for your software.

Cyril Gupta
A: 

Get the user involved with more interaction. ...Try using a wizard instead of a form.

Josh
+2  A: 

Facebook doesn't refresh the news feed unless they detect mouse movement on the page. This dramatically lifts the burden on the server by only querying it when the user is "there."

From a simple perspective, this may be a stepping stone to what you're trying to accomplish.

iddqd