Discussion:
"Anonymous" survey with user matching
Ross Richardson
2007-11-23 04:14:48 UTC
Permalink
A group here is interested in conducting two surveys (initial and
followup) and, whilst they wish the respondents to remain anonymous,
they wish to be able to match respondents between the surveys.

Has anyone advice on how this might be achieved?


I'm thinking of requiring authentication, then including in the results
data some non-identifying value derived from the username - for example,
an MD5 hash of the concatenation of some secret string and the username.

In terms of practical implementation, I've only just started
experimenting with perl snippets and have run into the problem that
others have noted: the following doesn't work...

<SUBMIT>
{|
$session->setValue("user_id", "some_value");
|}
</SUBMIT>

Assistance would be greatly appreciated!

rlr
--
Ross L Richardson <URL:mailto:***@utas.edu.au>
Senior Systems Administrator Phone : +61 (0)3 6226 6233
Information Technology Resources Fax : +61 (0)3 6226 7171
University of Tasmania, AUSTRALIA
Skickat av Ross Richardson <***@utas.edu.au>
till survey-discussion
Joel Palmius
2007-11-23 09:46:23 UTC
Permalink
Session is cleared after a successful submit, so storing something there
is not useful.

Basically, you can't be sure the user answers from the same computer, so
nothing you store client side (cookies etc) can be trusted either. You'll
have to give the user a ticket to carry on manually to the next survey. If
you're strict about authentication, none of the authentication schemes
will work either.

I'd suggest autogenerating a string somehow, print it as the default value
in a text box on first page and ask the user to write it down and enter it
manually in the next survey.

<SURVEY TITLE="code">

<CUSTOM ESCAPED="no">
The number in the textbox below is your unique generated identifier. <br /><br />
<b><u>IMPORTANT!</u></b> write it down, you will need it in the followup. <br /><br />
(Note that if you forget this number, there is no way to recover it, it is simply
the time you accessed the survey plus a random number)<br /><br />
If you think this value is too tricky to remember, you can enter anything else you want in the text box, but please pick something you think no-one else will pick.
</CUSTOM>

<TEXT NAME="userkey" CAPTION="Unique key" DEFAULT="{&

$key = $session->{SESSION_ID};
($part1,$crap) = split(/\./,$key);
$part1 =~ s/\_//g;
$key = $part1;
print $key; &}" />

</SURVEY>

The suggested string here is rather long, maybe you can figure out a
better approach. It is the session id minus the IP number of the
respondent and with underscores removed.

// Joel
Post by Ross Richardson
A group here is interested in conducting two surveys (initial and
followup) and, whilst they wish the respondents to remain anonymous,
they wish to be able to match respondents between the surveys.
Has anyone advice on how this might be achieved?
I'm thinking of requiring authentication, then including in the results
data some non-identifying value derived from the username - for example,
an MD5 hash of the concatenation of some secret string and the username.
In terms of practical implementation, I've only just started
experimenting with perl snippets and have run into the problem that
others have noted: the following doesn't work...
<SUBMIT>
{|
$session->setValue("user_id", "some_value");
|}
</SUBMIT>
Assistance would be greatly appreciated!
rlr
--
Senior Systems Administrator Phone : +61 (0)3 6226 6233
Information Technology Resources Fax : +61 (0)3 6226 7171
University of Tasmania, AUSTRALIA
till survey-discussion
Skickat av Joel Palmius <***@miun.se>
till survey-discussion
Clemens Gruber
2007-11-26 10:32:03 UTC
Permalink
Hi,

we use for something like this a "human generated" string, an input
field with, let's say, the fist two letters of the respondent mother's
first name, the month's day of the respondent birth and the house
number. In the most cases this is unique and anonymous and you can match
the cases.

Best regards
Clemens
Post by Ross Richardson
A group here is interested in conducting two surveys (initial and
followup) and, whilst they wish the respondents to remain anonymous,
they wish to be able to match respondents between the surveys.
Has anyone advice on how this might be achieved?
I'm thinking of requiring authentication, then including in the results
data some non-identifying value derived from the username - for example,
an MD5 hash of the concatenation of some secret string and the username.
In terms of practical implementation, I've only just started
experimenting with perl snippets and have run into the problem that
others have noted: the following doesn't work...
<SUBMIT>
{|
$session->setValue("user_id", "some_value");
|}
</SUBMIT>
Assistance would be greatly appreciated!
rlr
Skickat av Clemens Gruber <***@uni-osnabrueck.de>
till survey-discussion

Loading...