![]() | Fun with Probability!The Probable Pen in the Cereal BoxTechnical Abstract |
This document summarizes the technical aspects of the Fun with Probability! project. It is presented in two parts. Part I describes the final makeup of technologies and how the site was managed on a daily basis. Part II describes the steps necessary to update the web site every night. Part III discusses some of the other technologies which were used during the development of the project.
The following technology tools were used on this project:
Apple Macintosh Web Server (WebStar)- Provided by the College of Education at the University of Illinois, this server acted as host for all project activity. This is where participants came to get teaching materials, submit results, an see the project results. The site was updated every weekday during the 3 week run of the project.
Netscape Navigator Gold - This web browser is also an HTML file editor. It allowed the project coordinator to preview documents prior to posting to the web site. Documents were stored locally on a portable computer, and transferred via the FTP protocol to the web server. Netscape Navigator Gold supports the FTP transfer protocol natively.
Programmer's File Editor - One limitation of Netscape Navigator Gold is that it does not allow the editing of HTML tables and forms. Therefore, the Programmer's File Editor was used as a text editor to make detailed changes to the web documents. It was also useful for cutting and pasting participant comments because they were usually too large for Microsoft Excel to handle.
Microsoft Excel for Windows 95, Version 7.0 - In order to manipulate and graph the large number of values received from the participants (more than 25,000 data elements were received over the course of the project), a spreadsheet was required. Microsoft Excel was the ideal vehicle, because it provided two major functions. The first was iterative functions. This provided a way to calculate histogram values for graphing purposes. For example, of the 20,000 result data values, how many equaled six? seven? etc... The data sheet looked something like this:
| Teacher | Stud 1 | Stud 2 | Stud 3 | Stud 4 | Stud 5 | Stud 6 |
| Smith | 6 | 10 | 14 | 12 | 11 | 7 |
| Jones | 8 | 11 | 11 | 10 | ||
| Harris | 9 | 9 |
Note that each teacher could have a different number of students. The challenge was to count the number of occurrences of each value, regardless of its location in the data table. The resulting table looked like:
| # Rolls | 6 Rolls | 7 Rolls | 8 Rolls | 9 Rolls | 10 Rolls | 11 Rolls | 12 Rolls | 13 Rolls | 14 Rolls |
| # Students | 1 | 1 | 1 | 2 | 2 | 3 | 1 | 0 | 1 |
This had to be accomplished without knowing: a) Number of teachers b) Number of students per teacher, and c) Maximum number of rolls (it ended up being 95)
Microsoft Excel supports this capability by using an iterative formula that evaluates a function over a range of cells. Combined with the IF() function, this provided the required histogram.
The second function which Microsoft Excel performed admirably was generating 3-dimensional graphs. This provided a colorful way of presenting the data which was both communicative and interesting to look at. The students ended up loving the graphs.
Finally, Excel has a function called pivot tables which allowed for cross-tabulation type graphs to be created. This was used to show the registration distribution as a cross-section of grade level and region.
An example of the spreadsheet, in PKZip format can be downloaded. All names and e-mail addresses of participants have been altered. If you have a Macintosh, you may want to get a copy of ZipIt. It is a Macintosh application which can unzip PKZip files.
Paint Shop Pro - This paint program supports a variety of graphic formats, including the Internet-standard interlaced GIF format (89A). As graphs were generated in Excel, they were copied to the Windows clipboard and pasted into Paint Shop Pro as a new graphic.
AppleScript - In order to receive results on the web server, a program had to be written that ran on the server. When a participant submitted their results, the web server started this program for processing. This program is called a CGI (Common Gateway Interface) program. The programming environment supported on the Education web server is AppleScript. AppleScript is a procedural language with extensions to support the world wide web form submissions. For this project, a simple CGI program wrote all of the submitted data out to a text file.
This text file had one line in it for each set of results. Each line looked like this:
name<tab>Mike Cornell<tab>School<tab>U of I<tab>Student 1<tab>12 etc...
Each line was about 300-500 characters long, depending on the amount of data submitted. Each data value was separated by a <tab> character. The first data value was the name of the first field entered by the teacher, the second data value was what the teacher actually typed in. This repeated until each value was represented. The form which this teacher created might have looked like this:
| Field | Value |
| Name: | Mike Cornell |
| School: | U of I |
| Student 1: | 12 |
| Student 2: | 10 |
To update the web site each weeknight, the project coordinator performed the following steps:
In addition, from 2-10 e-mails arrived daily with questions, results and problems. Updating the web site and responding to e-mails required approximately 45-90 minutes per day during the project lifetime.
Lotus Notes and InterNotes - When the project was in the early creation stage, Lotus Notes was used as a data repository for all results. Lotus Notes is a groupware product which has Internet web connectivity via another Lotus product, InterNotes. While the technology worked fine, many early participants had problems connecting to the server which was running Notes and InterNotes. Ironically, these participants were all located on the west coast.
After numerous attempts to solve the connectivity problems, the project coordinator decided to move the data repository off of Notes and back onto the Education web server which was hosting the rest of the data. The logical assumption was that by consolidating all network activity on a single server (rather than bouncing to another server, in this case the Notes server) the connectivity problems would decrease. Indeed, this seemed to do the trick.
Microsoft FrontPage - This is another HTML editor which is, in fact, superior to Netscape Gold. Unfortunately, a copy was obtained too late to manage the site with it. It was however, used to create the final report.