Re: Re: Re: Timed Notebooks for Student Take-home examinations

*To*: mathgroup at smc.vnet.net*Subject*: [mg60440] Re: [mg60392] Re: [mg60368] Re: [mg60289] Timed Notebooks for Student Take-home examinations*From*: Murray Eisenberg <murray at math.umass.edu>*Date*: Fri, 16 Sep 2005 03:50:10 -0400 (EDT)*Organization*: Mathematics & Statistics, Univ. of Mass./Amherst*References*: <200509101046.GAA01781@smc.vnet.net> <200509140727.DAA26642@smc.vnet.net> <200509150916.FAA15805@smc.vnet.net>*Reply-to*: murray at math.umass.edu*Sender*: owner-wri-mathgroup at wolfram.com

You might like to look at the approach I used for so-called "validators" that I developed (building upon earlier work of mine and my colleagues for other programming languages). The web site http://www.math.umass.edu/~murray/My_Web_sites/Hill_ciphers/hill_ciphers.html shows how this was set up for the case of an assignment in which, among other things,students had to write a Mathematica function to encipher a plaintext using a Hill cipher. The idea of a validator is that once the student writes the function and has tested it himeself, he calls the validator. The validator automatically runs the student's function with various test inputs, rans the instructor's (presumably correct) version of the function with the same test inputs, and reports whether and how the student function's results are correct. The materials there, put into a form for presentation at ICTCM12 (1999), include three key component files: (1) a notebook describing the project; (2) an "About" notebook guiding the student through the validation process; (3) the package that validates the function. While this design puts no limits on how long a student can work at developing his definition, it issues a time stamp at the time of validation. But I saw, and see, no obvious way, without using additional database capabilities, of controlling the total time available for the student to develop the definition. It seems to me that the suitable framework for what you want must be a learning management system. There are any number of such systems (WebCT and OWL, e.g.) W. Craig Carter wrote: > Thanks everyone, for all the advice, but I should clarify. > > What I wish to have is a notebook template that the student would > take less than 3 hours to complete. The student would be told, "you > should read the sections in the Help Browser on, (say), Thread and > Nest prior to the exam." > > The assignment would require the student to write simple Mathematica > routines and functions, and would be judged on cleverness and the > "elegance" of the solution. For example, a question that might take > an hour would be, "Suppose that the interaction between two atoms in > a solid is V[r] = a/r^6 + b/r^12, calculate the equilibrium > separation of atoms, calculate their vibration frequency, using > Boltzman statistics produce a graphic that represents the density of > states as a function of temperature." > > Thus the forms of the solutions are not fixed, but must be created > by the student. The exams would be graded comparatively. > > And so, I am thinking along these lines. > > 1. A package, say TakeHomeExam, would be created which could be > encoded and with hidden variables. > > 2. The package would have an--also encoded---init.m which would > produce a string as the first line of the notebook via something > like: > Encode[ToString[Date[]],"foo.m", "instructors_key"]; > Print[Get["foo.m","instructors_key"]] > > 3. Unfortunately, I don't see anything like "exit.m" so I would > require the student to finish the exam with a function from the > package, say FinishExam, which would do something like: > > FinishExam := > Module[{},Encode[{?Global`*,SessionTime[],Date[]}//ToString,"foo.m","instructors_key"],Print[Get,"foo.m","instructors_key"] > > Thus I might be able to decode and test the exam for "fairness" with > my own private "instructors_key" > > It's unfortunate that I must use file i/o, but I don't see a simple > way around that. > > I do see that students would be able to seek expert help, or copy, > but I am willing to live with that. > > > I haven't tried to implement this---I am sure there will be some > problems. I was thinking that somebody else might have tried > something similar (or someone at Wolfram might see the benefit > of such a package and create one...) > > > > Thanks again, Craig > > On Wed, 14 Sep 2005, Igor Antonio wrote: > > > >>I'm probably misunderstanding something, so correct me if I'm wrong: >> >>the package would reside on the student's computer and it would generate >>a notebook for the student to complete. At the time the student >>"requests" the notebook from your package, you write an encoded string >>to the notebook itself that basically assigns it a timestamp. Then the >>student would upload/send you that notebook and you would decode that >>string? (encoded string + time of upload = time spent) Is that the idea? > > > -- Murray Eisenberg murray at math.umass.edu Mathematics & Statistics Dept. Lederle Graduate Research Tower phone 413 549-1020 (H) University of Massachusetts 413 545-2859 (W) 710 North Pleasant Street fax 413 545-1801 Amherst, MA 01003-9305

**References**:**Timed Notebooks for Student Take-home examinations***From:*"W. Craig Carter" <ccarter@mit.edu>

**Re: Timed Notebooks for Student Take-home examinations***From:*Igor Antonio <igora@wolf-ram.com>

**Re: Re: Timed Notebooks for Student Take-home examinations***From:*"W. Craig Carter" <ccarter@mit.edu>

**Re: solve for a squared variable**

**Re: Nesting NMaximize**

**Re: Re: Timed Notebooks for Student Take-home examinations**

**Re: Timed Notebooks for Student Take-home examinations**