vignettes/A_introduction.Rmd
A_introduction.Rmd
This document provides a quick introduction and overview of the quizgrader package, which is a package for managing and administering auto-graded online quizzes.
Very briefly, here is how it works:
If this sounds potentially useful, read on.
I regularly teach online. In the past, I have used our university’s learning management system (LMS), but I dislike it because it is not user-friendly and elements, such as quizzes and student submissions are locked up inside the LMS and one can only extract very rudimentary statistics. Because of this, I have over the last years slowly moved away from our LMS and tried to replace as much as possible with resources that are as open as possible.
One feature I liked about the LMS is that it could administer auto-graded quizzes, so once the quiz was written, I didn’t have much to do anymore, students just submitted and got graded automatically each week. I tend to give lots of small quizzes (generally 1-2 per week), so I needed this process automated.
I decided to write some R code to get the functionality I needed. It
turned out well enough that I figured it could be worth turning it into
a full R
package and making it available to others.
THE PACKAGE IS NOT YET ON CRAN, USE GITHUB INSTALL OPTION
After having installed and opened R/Rstudio, you can install the package from CRAN by typing the following into the R console (the bottom left window if you are using RStudio):
install.packages('quizgrader')
Alternatively, you can install the latest development version (with
usually both more features and more bugs) from github, using the
remotes
package. The following commands, typed into the
R
console, will get you up and running:
install.packages('remotes') #if not already installed
remotes::install_github('andreashandel/quizgrader')
The package depends on other packages, which will also be installed
as needed. Package installation is a one-time process, unless you update
or re-install R itself, or want to install a newer version of
quizgrader
.
You can make, deploy and analyze student quiz submissions entirely interactively through Shiny apps. Alternatively, you can do all quiz management processes without using the Shiny apps. The tutorials explain both approaches. Here are the steps in overview format.
Quiz Preparation
As a teacher, you will start by going through these steps:
Quiz submission
Once the quizzes are deployed to a Shiny server, you tell students the submission website. Before each quiz deadline, students go to the website, upload their filled quiz sheet. The quiz is auto-graded, the grade is recorded and students are being given immediate feedback.
Quiz management
You can download the student submissions while the course is running, analyze the results to investigate individual students or individual questions. You can also make adjustments to the student roster and the quizzes (e.g. modify upcoming quizzes). At the end of the course, you can make final manual adjustments and compute the overall grade.
To learn more and see how to get started creating a course and a set of quizzes, see the Creating Quizzes tutorial.
You might want to consider privacy and security as it applies to various laws (e.g. FERPA) when using this app. You will be placing a list with student names, IDs (e.g. emails) and their quiz submissions/grades into the cloud. There is no default public access to any of this information, you (or TAs who have login privileges) are the only one who can access those documents. It thus seems ok to me. But if the server where you host the submission app gets compromised, this might compromise student information. I consider this a low and small risk, but it’s something you might want to think about.
I know the potential problems that can occur when using Excel. I originally started this project with CSV (actually, TSV) files. I ended up deciding to go with Excel because instructors, and most importantly students, are familiar with it. This means you need to be careful about Excels over-eager auto-processing, especially of dates. Specific warnings are provided throughout the tutorials to alert you to potential issues. In my experience, if you were careful creating the documents, it shouldn’t cause problems on the student side.