I wrote last May about the difficulties I was having with doing reassessments efficiently. The short story - collecting reassessment requests, printing them, and distributing them to students was not scaling well. I had shared my progress on making a web application using Python to do this and was really excited to continue working on it.
After a summer of work and putting it into action this fall, Phases 1 and 2 are pretty much complete. I'm really happy with how it has been working for me. I host it on my personal laptop in the classroom and share its IP address with students so they can access their quizzes.
You can check out a mildly sandboxed version here:
UPDATE Mar. 2016: I've taken down the application to save memory on my hosting server. Write me if you are interested in learning more.
and the code is posted at Github:
I took out a number of my questions (since students do occasionally read my blog) and made it so images can't be uploaded. I hear that might be a security risk.
- Questions (with or without images) can be added, edited, and browsed all through a web interface.
- Students can be assigned quizzes individually or through a page for the class they are in. They can also all be given different questions, which helps in my class that has students fairly close together.
- Students each have their own url that can be bookmarked for easy access later.
- The teacher view of the entire class has a link for each student that shows the quiz questions (and answers, if they are in the database) for easy grading.
What hasn't been done:
- Authentication for students and the admin side. Right now it's all open, which bothers me a little, but my access log doesn't show that this is being abused.
- A way to capture their work digitally for each retake. I still have a pile of half-size A4 papers on my desk, and have to grade them while also having the answer page open. That isn't the end of the world, but after my recent obsession with collecting as much student work as I can through a web interface, it's something I'd like to have as an option. Students tend to lose these papers, and these are the formative assessment moments I'd love for them to include in their portfolios. Digital is clearly the way to go.
- Randomization (phase 3 of my master plan), but in two different ways. I'm still manually choosing questions for students. I kind of want to keep it that way, since some students I do want to give different questions. But then I sometimes don't - I'd rather it just choose questions from specific standards and students get the luck of the draw. I need an option that lets me waffle on this.
- Question history - i.e. knowing which questions a student has been assigned, and integrating this into the program smoothly. This function is built into the database already, and won't require a lot of work to make it happen, but I haven't done it. Sorry.
There are a number of
The most powerful aspect of having this working is that I can easily assess the whole class at the whole time on different questions if I want them to be different. I've been doing this at the beginning of the class this semester, and it increases the amount of time I spend talking to each student about their work regularly. Since student initiated reassessment still isn't as widespread as I want it to be, I've started having students request which quiz they want to have in class the night before. They know it's coming, and can get help or prepare in advance, rather than using their valuable lunch or after school time. More on that later.
Let me know if you're interested in using this with your own class - it's pretty portable and can be adapted without too much of a headache to different situations.