Internet Research Methods in Psychology |
Updates will be posted here throughout the semester.Readings
Date | Topic | Files or links |
Jan 20 | Introduction: What can be done over the Internet. Creating a web server account. | Lecture notes 1 - Internet Possibilites [PowerPoint] Lecture notes 2 - Setting up a web server via Netfirms [PowerPoint] Some useful links for EditPlus and Netfirms EditPlus Great text editor for windows Netfirms web hosting |
Jan 27/Feb 3 | How to make a basic HTML web page |
Useful links to HTML sources HTML colors and referencesLecture notes 3 - Creating HTML web pages [PowerPoint] Details on homework assignment [create a web page] |
Feb 10 | HTML forms: Collecting research data from participants |
From this point forward, PowerPoint lecture files won't be of much good to us. Today we will discuss the use of HTML forms. We will focus on the code for the following form, http://www.web-research-design.net/P593/form1.htm. To view the HTML code, right-click on it and choose the view source option. We will also begin a rudimentary discussion of CGI. The code for the form1.pl script we will use can be copied and pasted from here, http://www.web-research-design.net/P593/form1pl.txt. Details on homework assignment [create a web page questionnaire with Perl script] |
Feb 17 | An introduction to CGI scripting: Using Perl to save automatically response data to a file AND Providing customized feedback to research participants |
Some new concepts we'll introduce: processing data, foreach loops, writing data to a text tile, reading (and using) data stored in a text file, if/else conditions Here are some files we'll be using today: form3.htm form3.pl [text file version] notes form4.htm form4.pl [text file version] Details on homework assignment [create a Perl script that processes data] Note: Just do 1-3 given what we covered today. |
Feb 24 | Using Perl to deliver HTML, connecting multiple web pages, hidden tags, for-next loops and more about arrays |
Administer questionnaire items via perl form5.pl form5.pl [text file version] Script that processes form5.pl's data form6.pl [text file version] Do it all (administer items and process data) with 1 script form7.pl form7.pl [text file version] Present items on separate pages - hidden tags form8.pl form8.pl [text file version] The basics of a for loop form9.pl form9.pl [text file version] Using the for loop to access elements of an array form10.pl form10.pl [text file version] Using the for loop with arrays to present questionnaire items form11.pl form11.pl [text file version] |
March 3 | More on multiple pages and Subroutines |
Hidden tags and multi-page layouts mult1.pl mult1.pl [text file version] Basic subtroutine sub1.pl sub1.pl [text file version] Basic subtroutine with parameters sub2.pl sub2.pl [text file version] Subtroutine: parameters, indexing, returning values sub3.pl sub3.pl [text file version] Subtroutine: Additional examples sub4.pl sub4.pl [text file version] Homework Create a set of subroutines that will automate some processes that are commonly used in Internet based research applications. Also, illustrate the use of these subrounines in a perl script application. 1. A routine that automatically creates the radio buttons for items that require 1 to 7 rating scales. 2. A routine of your own chosing--something that does something useful given your research interests. |
Mar 10 | Random assignment to conditions and randomizing the order of stimuli |
A discussion or foreach foreach1.pl foreach1.pl [text file version] foreach2.pl foreach2.pl [text file version] Randomize a list rand1.pl rand1.pl [text file version] Randomly select 1 item from a list rand2.pl rand2.pl [text file version] Toss a coin: Heads or tails? rand3.pl rand3.pl [text file version] Random assignment to conditions rand4.pl rand4.pl [text file version] Random assignment to conditions - 2 x 2 design rand5.pl rand5.pl [text file version] Randomize order in which questions or stimuli appear rand6.pl rand6.pl [text file version] Randomize question order while presenting questions across multiple pages rand7.pl rand7.pl [text file version] Randomize both the order of questionnaires/blocks and items/stimuli within a questionnaire/block rand8.pl rand8.pl [text file version] Homework Create a script that uses randomization in a way that isn't redunant with some of the examples we discussed today. Feel free to be silly if you wish, or to be ultra-utilitarian if you prefer. Whatever you do, be sure to make it clear that you have mastered how to randomize things effectively in Perl. Your homework needs to include a link to the live webpage as well as the text for the Perl script(s). |
Mar 17 | Project Workshop |
Assignment A fast food chain has hired you to create a preference survey for some products that they are considering placing on the market. You goal is to create a web-based survey that their customers can choose to complete in exchange for coupon codes. The survey needs to present five products in a random order for each customer. For each of the five products, the customer needs to rate how much they would enjoy eating the product on a 1 to 7 scale with anchors of your choosing. The customer also needs to indicate how likely (0 to 100 percent) he or she would be to buy the product at various prices (0.50, 1.00, 1.50, 2.00, 2.50 dollars). These five prices need to be randomly set for each product. In addition, you need to collect some basic demographic information on each customer (i.e., sex, age, state of residence, ethnicity). Finally, at the completion of the survey, you need to assign the participant a 10-character (alphanumeric) coupon code that he or she can use to redeem at a local store in exchange for a free drink. The code needs to be unique for each participant and the same code cannot be used more than once. The data, of course, will need to be saved to a text file. Additional details: - The five products are as follows: Tofu & beef burrito, Fish tacos, the Fourth Meal Burrito, the Burr-it-to-go, and Smokey cheddar face melt. Bo- nus points for images. Also, please use your creative imagination to elaborate upon the product descriptions (e.g., Burr-it-to-go might be a burrito blended in Burr blender, in a cup with a straw) so that customers have a better sense of what they are evaluating. -- Each product should be presented on a separate page instead of having all five presented on a common page. |
March 31 | Graphical displays of data using HTML/CGI tricks and jquery/flot |
Individual files for copying and pasting: Interface for demonstrating bargraphs |
April 7 | Tracking participants over multiple sessions: Usernames, passwords, and menus |
Before we get started, go to your Netfirms account and create a new folder within your www directory called 'data'. The scripts for this week are listed as separate text files, but they all function together. To see them in action, visit this link: Login page example. Individual files for copying and pasting: login.htm [right click on page to view source] Homework For this assignment I would like for you to create a simple Perl script that does the following: 1. Requires people to create an account and then login to the site. 2. Once logged in, a simple (serious or fun) study is presented. This doesn't need to be anything fancy. It is just filler so the other parts of the project don't feel empty. 3. Has a menu page that reports how many times and when the person has participated in the past. This part will require you to innovate a bit. Please post your perl code on your homework page as a text file. |
April 14 | Assessing Response Times |
Simple example of measuring response times rtdemo1.pl rtdemo1.pl [text file] Simple example of measuring response times with data analysis rtdemo2.pl rtdemo2.pl [text file] Example of measuring response times with random trial orders rtdemo3.pl rtdemo3.pl [text file] |
April 21 | Final Project Workshop |
Final project workshop. Come to class with ideas, flowcharts, scripts, and questions. |
April 28 | Final Project Workshop |
Final project workshop. Come to class with ideas, flowcharts, scripts, and questions. |
May 6 | Final Project |
Final project due. |