PHPSurveyor modification

We are interesting in hiring someone modify and write PHP code in

the open source project phpsurveyor

([url removed, login to view]). The goal is to add

functionality to the online survey package. Ideally, the

programmer would have knowledge of this package and some

familiarity with online behavioral/social survey research methods.

We expect the modifications will take no more than 14 days to

complete and we are willing to pay up to $500 for this work. Bids,

including duration and cost are welcome.

We have high expectations and will demand a high quality product.

However, if we are impressed with the quality and timeliness of the

work, we will hire you for other programming jobs. We work at a

large research institution and are constantly on the lookout for

skilled programmers.

There are three general areas of functionality in phpsurveyor we are

interested in expanding. They are:

1. New types of questions

2. Control over the order of group


3. Better participant tracking


1) New types of questions There are two new types of questions we

want to add. The first is called an Aspect Lister/Coder. The

second new type of question is called a Titrator. Each will be

explained below.

An Aspect Lister/Coder has two parts: the Lister and the Coder.

These parts appear on different web pages. The first part, the

Lister, allows a research subject to list thoughts or phrases one at

a time. A Lister would have an intro body, and then one open text

box where a subject can type a short answer, usually about 10-20

words. The subject then presses enter, and can type in another

thought if they like, or they can press a button to indicate they

are done entering thoughts. Subjects can enter as many separate

thoughts as they like, but rarely does anyone enter more than 10.

After a subject enters a thought, the thought appears in a numbered

list allowing the subject to see what they previously typed. The

program should also track how long (to the 1/10 of a second) it

takes between when the page first loads until a subject presses

enter to submit a thought (e.g. The first thought took 13.2 seconds

from page load, the second thought took 23.2 seconds from page

load, etc.) The database should record overall date/time stamp,

subjectID, survey ID, questionID, each listed thought, the order it

was entered, and how long it took to enter.

The Aspect coder then takes each one of these entered thoughts and

presents them back to the subject one at a time, asking them

particular questions about what they entered. These questions about

their thoughts are always presented as predefined multiple choice

questions. So, for example, a subject would see

Before you typed in: Thought 1... Was this thought about: ( )

Yourself ( ) Someone else close to you ( ) A person you don't know


Before you typed in: Thought 1... Was this thought: ( ) Easy to

generate ( ) Moderately difficult to generate

In order to define an Aspect Lister/Coder question, a researcher

would have to have the introduction body and question (which would

provide the topic about which subjects type their thoughts). And

the research would have to know the questions they want to ask

subjects about each one of their thoughts. If a researcher had 3

coder questions, and a subject entered 1 thought, they would answer

the coder questions for that one thought. If a subject entered 4

thoughts, they would answer the 3 coder questions for each of the 4

thoughts they entered.

The second new type of question we want to develop in phpsurveyor is

called a Titrator. A Titrator presents a subject with a table of

binary options where they have to pick one or the other. For

example, we could ask a subject if they would prefer $100 now or $x

in 3 months. So we would present them with a titration table:

Blah, Blah, blah... Some intro text that precedes the table.

OPTION A OPTION B ( ) $100 now or

( ) $100 in 3 months ( ) $100 now or ( ) $105 in 3

months ( ) $100 now or ( ) $110 in 3 months ( ) $100

now or ( ) $115 in 3 months ( ) $100 now or

( ) $120 in 3 months ( ) $100 now or ( ) $125 in 3

months ( ) $100 now or ( ) $130 in 3 months ( ) $100

now or ( ) $135 in 3 months ( ) $100 now or

( ) $140 in 3 months ( ) $100 now or ( ) $155 in 3

months ( ) $100 now or ( ) $160 in 3 months ( ) $100

now or ( ) $165 in 3 months ( ) $100 now or

( ) $170 in 3 months ( ) $100 now or ( ) $175 in 3


Each ( ) is a radio button by a row, and a subject has to pick

Option A or Option B in each row.

To see examples of these types of questions in practice, follow this

link: [url removed, login to view] These

examples are coded in PHP but not integrated into the phpsurveyor

package. If you win the bid and would like copies of these PHP

scripts, please let us know.


2.) Control over the order of group presentation

Another area of the phpsurveyor package we want developed, is the

control over the order of group presentation. Let me explain: The

most basic thing is a question. There are various types of

questions in the phpsurveyor package. Different questions can be

organized into a group. A group needs at least one question (an

empty group is not allowed). Every question must belong to a group

and no question can belong to more than one group. A collection of

groups makes up an experiment. An experiment could have only one

group, but typically will have more. As an experiment unfolds,

groups of questions are presented in the web browser, one group at a

time. So if an experiment had 3 groups, it would have 3 separate


Currently, phpsurveyor presents the groups to research participants

in alphabetical order. We want to make it more flexible. We want

to be able to define different orders of groups that different

participants might see. Let me present an example of what we have

in mind:

Let's say I define groups A, B, C, and D. Each of these groups has

multiple questions. I want to define two Paths. A Path is an

ordering of groups that a subject would be exposed to in an

experiment. So, I would define Path 1 as A B D; and then define

Path 2 as A C D. Subjects who arrive at the website to participant

in an experiment would be randomly assigned to Path 1 or 2. The

probability of assignment to paths is uniform across paths.

Clearly this is a simple example and in practice, the number and

length of paths would be more complex. However, the idea is the

same. What we want is an administrator level control were Paths

could be defined. There is already an array ordering question in

phpsurveyor that could serve as a template for how this might work.

On one side of the interface all the Groups would be available. The

Administrator would chose which groups and in what order made up a

particular path.


3a. Better survey tracking

We want to improve security for survey tracking. Instead of the

current survey tracking variable $sid which simply counts up

existing surveys (survey 1, 2, 3 ...) a unique identifier which can

not be guessed should be added. Example code of how this could be

done is added below (it also checks for existing $sid):


//generate token for identifying a survey

$sid= md5(uniqid(rand())); while(session_exists($token)) { $sid =

md5(uniqid(rand())); }


3b. User database queries

Our user data are stored in a separate database. This database

mainly includes demographic information. We need an upload and

download opportunity that keeps also track of participant's

participation in a survey. For the upload part: participants fill in

a form requesting mainly demographic questions from them - this form

should also generate a unique token for each new entry. The download

part should contain the possibility to filter participants in terms

of age, nationality, language, origin and participation time in

former surveys (we want to ensure that participants have certain

intervals of contact). The filtered data will be downloaded into a

CVS file (including e-mail address, first name and token) which then

can be used within phpSurvey to generate a token list for


The other way round phpSurveyor provides a list of participants who

have finished a survey and those who have not. We need to export

this list and have a possibility to update the user database

foremost with token XY has finished/has not finished experiment and

a timestamp.

Additionally for the existing user database (approx. 30000 entries)

tokens have to be assigned to each user.

Skills: PHP

See more: x on demand, write scripts online, work online programming jobs, who was the website developed by, where can i hire data entry person, where are they hiring, where a research topic need research or now, where are programmers, what was the first programming language, what should we hire you, what makes you unique, what makes me unique, what jobs hire at 14, what jobs are hiring, what jobs are available, what is the most used programming language, what is data entry jobs online, what is a variable in programming, what is a probability, what is an interface in programming

About the Employer:
( 20 reviews ) New York, United States

Project ID: #28607

36 freelancers are bidding on average $679 for this job


Please check PM

$500 USD in 14 days
(163 Reviews)

Please check your PM.

$600 USD in 20 days
(115 Reviews)

Plz check PMB

$480 USD in 30 days
(92 Reviews)

Hello Sir, I read your project specs and would like to assure you that we can do this job in the earnest. We are CZONE Technologies, a growing web development company from New Delhi, [login to view URL] have made flash presentati More

$550 USD in 30 days
(49 Reviews)

Dear sir, We are interested,pls contact us via pmb,thanx

$500 USD in 25 days
(35 Reviews)

Hi it can be done with excellent quality + [login to view URL] check PMB for more [login to view URL],dcoder

$900 USD in 25 days
(55 Reviews)

plz check PMB

$700 USD in 30 days
(10 Reviews)

Our bid is for really very high quality work for your PHPSurveyor modification that will be made to be upgradable in case you need some upgrades in future. We will always be available for upgrades. Our bid includes six More

$1000 USD in 25 days
(66 Reviews)

We offer an outstanding technological value, while at the same time providing a high degree of quality with industry-specific design services at very competitive prices. We assure 100% satisfaction by quality work and More

$666 USD in 15 days
(28 Reviews)

Dear Sir! We are an efficient and dedicated team of professionals. We offer our large experience and professionalism to make all qualitatively. We provide post-developing support until all Your requirements are complet More

$600 USD in 25 days
(2 Reviews)

InfogateSoftware is the only ISO 9001 certified company listed here. We are in the field since 1998. We have a large and highly experienced team of Programmers, designers, technical writers and others to do your work i More

$1000 USD in 30 days
(10 Reviews)

Please review PMB.

$600 USD in 20 days
(1 Review)

Please contact me so we can further discuss your project. I look forward to hearing from you and , hopefully working with you too.

$500 USD in 14 days
(1 Review)

it can be done

$500 USD in 10 days
(2 Reviews)

Hi, We have made many major portals and MMORPG games in php. We can do this too. This is easy for us. Please contact us for more informaiton and details of our company. Waiting for your positiver response... Thanks More

$1000 USD in 35 days
(3 Reviews)

Dear sir I am PHP programmer and have 2+ years experience . I would be very happy to provide my services to meet your requirement. Thanking you.

$500 USD in 14 days
(1 Review)

We are EU company with many proffesionals

$700 USD in 7 days
(0 Reviews)

we can do it fast and nice

$450 USD in 7 days
(0 Reviews)

Providers of consulting,outsourcing , IT and BPO services. SOlution provider for ERP,Intranet and Internet, System Analysis, Database Designs, Development & Maintenance of Portals, WebSite Designing & Hosting, Multimed More

$425 USD in 15 days
(0 Reviews)

Choosing a provider for a service or choosing the most suitable product/solution for you could be a tough situation. Out there are tousend of companies which wants you as a client. How can you have the guarantee of More

$900 USD in 14 days
(0 Reviews)