SlideShare a Scribd company logo
1 of 40
Combining auto-multiple-choice and
Gradescope for paperless grading
Matthew Leingang
New York University
MAA Session on Technology and Apps for Teaching
Mathematics and Statistics
San Diego, CA
January 13, 2018
About me
• I use a mixture of fixed-response (MCQ) and free-
response (FRQ) items
• I like tech, hate paper, but need paper
• I love two applications for grading and I want to
marry them
auto-multiple-choice (AMC)
• Desktop app (Unix, MacOS)
• Open source (Gtk3, Perl, SQLite)
• LaTeX driven
• Optical Mark Recognition (OMR)
• Exports annotated PDF which can be emailed or
uploaded to LMS
Gradescope (GS)
• Web application
• Free for a limited time
• PDF driven
• AI trained by Instructor
• Student views annotated PDF and comments on GS
website
gradescope
AMC problem types
Fixed-response
• options
permuted by
student
• programmable
Free-response
• marked by
instructor on
paper or
scanned PDF
• no support for
rubric
GS problem types
Fixed-response
• AI grouping of
common
responses
• no permutation,
programmability
• More features
“coming soon”
Free-response
• simple PDF
annotation tools
• develop rubric on
the fly
• add comments
The Marriage Problem
• Write exam in LaTeX for AMC
• grade MCQ in AMC
• upload cover page and FRQ to GS
• grade FRQ in GS
• Then what?
Solutions
• Three columns in LMS for each
assessment: MC in AMC, FR in
GS, and a total
• Or: Programmatically incorporate
GS scores (and comments?) into
AMC and import to LMS from
there
Progress
• Command-line script to import GS scores
file as AMC responses (“captures”)
• Re-scoring in AMC records corresponding
scores
$ AMC-Import-Gradescope --qlist FR-Sch-35-9 FR-Sc
Developing
• merging the
annotated PDFs
from GS and AMC
• plugin to the AMC
GUI
Complications
• AMC uses an Object-relational mapping (good)
which is lightly documented (bad)
• No slot for GUI plugins at the capture stage
What now?
• Might go back to the three-
column solution for spring
• Look at deeper injection
into AMC application
architecture
• Welcome collaborators
Thank you
https://slideshare.net/leingang
https://github.com/nyumathclinic/AMC-Gradescope
Credits
Naval Surface Warriors
CC-BY-SA
Helen Taylor
CC-BY-NC
Carolina Biological Supply Co.
CC-BY-NC-ND
Credits
Johnny Silvercloud
CC-BY-SA
James
CC-BY
MarineCorps New York
CC-BY
Thank you
https://slideshare.net/leingang
https://github.com/nyumathclinic/AMC-Gradescope

More Related Content

More from Matthew Leingang

More from Matthew Leingang (20)

Lesson 25: Evaluating Definite Integrals (slides)
Lesson 25: Evaluating Definite Integrals (slides)Lesson 25: Evaluating Definite Integrals (slides)
Lesson 25: Evaluating Definite Integrals (slides)
 
Lesson 25: Evaluating Definite Integrals (handout)
Lesson 25: Evaluating Definite Integrals (handout)Lesson 25: Evaluating Definite Integrals (handout)
Lesson 25: Evaluating Definite Integrals (handout)
 
Lesson 24: Areas and Distances, The Definite Integral (handout)
Lesson 24: Areas and Distances, The Definite Integral (handout)Lesson 24: Areas and Distances, The Definite Integral (handout)
Lesson 24: Areas and Distances, The Definite Integral (handout)
 
Lesson 24: Areas and Distances, The Definite Integral (slides)
Lesson 24: Areas and Distances, The Definite Integral (slides)Lesson 24: Areas and Distances, The Definite Integral (slides)
Lesson 24: Areas and Distances, The Definite Integral (slides)
 
Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)
 
Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)
 
Lesson 22: Optimization Problems (slides)
Lesson 22: Optimization Problems (slides)Lesson 22: Optimization Problems (slides)
Lesson 22: Optimization Problems (slides)
 
Lesson 22: Optimization Problems (handout)
Lesson 22: Optimization Problems (handout)Lesson 22: Optimization Problems (handout)
Lesson 22: Optimization Problems (handout)
 
Lesson 21: Curve Sketching (slides)
Lesson 21: Curve Sketching (slides)Lesson 21: Curve Sketching (slides)
Lesson 21: Curve Sketching (slides)
 
Lesson 21: Curve Sketching (handout)
Lesson 21: Curve Sketching (handout)Lesson 21: Curve Sketching (handout)
Lesson 21: Curve Sketching (handout)
 
Lesson 20: Derivatives and the Shapes of Curves (slides)
Lesson 20: Derivatives and the Shapes of Curves (slides)Lesson 20: Derivatives and the Shapes of Curves (slides)
Lesson 20: Derivatives and the Shapes of Curves (slides)
 
Lesson 20: Derivatives and the Shapes of Curves (handout)
Lesson 20: Derivatives and the Shapes of Curves (handout)Lesson 20: Derivatives and the Shapes of Curves (handout)
Lesson 20: Derivatives and the Shapes of Curves (handout)
 
Lesson 19: The Mean Value Theorem (slides)
Lesson 19: The Mean Value Theorem (slides)Lesson 19: The Mean Value Theorem (slides)
Lesson 19: The Mean Value Theorem (slides)
 
Lesson 18: Maximum and Minimum Values (slides)
Lesson 18: Maximum and Minimum Values (slides)Lesson 18: Maximum and Minimum Values (slides)
Lesson 18: Maximum and Minimum Values (slides)
 
Lesson 17: Indeterminate forms and l'Hôpital's Rule (slides)
Lesson 17: Indeterminate forms and l'Hôpital's Rule (slides)Lesson 17: Indeterminate forms and l'Hôpital's Rule (slides)
Lesson 17: Indeterminate forms and l'Hôpital's Rule (slides)
 
Lesson 18: Maximum and Minimum Values (handout)
Lesson 18: Maximum and Minimum Values (handout)Lesson 18: Maximum and Minimum Values (handout)
Lesson 18: Maximum and Minimum Values (handout)
 
Lesson 17: Indeterminate forms and l'Hôpital's Rule (handout)
Lesson 17: Indeterminate forms and l'Hôpital's Rule (handout)Lesson 17: Indeterminate forms and l'Hôpital's Rule (handout)
Lesson 17: Indeterminate forms and l'Hôpital's Rule (handout)
 
Lesson 16: Inverse Trigonometric Functions (slides)
Lesson 16: Inverse Trigonometric Functions (slides)Lesson 16: Inverse Trigonometric Functions (slides)
Lesson 16: Inverse Trigonometric Functions (slides)
 
Lesson 16: Inverse Trigonometric Functions (handout)
Lesson 16: Inverse Trigonometric Functions (handout)Lesson 16: Inverse Trigonometric Functions (handout)
Lesson 16: Inverse Trigonometric Functions (handout)
 
Lesson 15: Exponential Growth and Decay (slides)
Lesson 15: Exponential Growth and Decay (slides)Lesson 15: Exponential Growth and Decay (slides)
Lesson 15: Exponential Growth and Decay (slides)
 

Recently uploaded

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 

Recently uploaded (20)

Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-IIFood Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
Food Chain and Food Web (Ecosystem) EVS, B. Pharmacy 1st Year, Sem-II
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 

Combining auto-multiple-choice and Gradescope for paperless grading

Editor's Notes

  1. Hi, thank you to the organizers for accepting my contribution, and to the audience for making the trek all the way to the other side of the SDCC.
  2. In my career I have settled into a chalk-talk-and-worksheet class management style. I love technology but I tend to keep it out of the classroom. I like quizzes and exams with a combination of fixed-response (MC) and free-response questions. But I think paper is the best way to administer those. Outside of class, though, I hate paper. I don’t want to lug it around, mark it up, and chase students down to return it to them. In the past few years I’ve fallen in love with two applications for grading paper electronically. So much that I want to marry them. But to each other. This talk is about my efforts to do that.
  3. The first of these apps is auto-multiple-choice or AMC. It runs on your machine. You create questions in a LaTeX file. Students mark up the PDF, you scan it, and the AMC software reads the PDFs, looking for marked responses. You match exams to students by letting them encode their ID numbers, just like on standardized bubble tests. The last bit, about uploading annotated PDFs to LMS, was the subject I gave at the WebSIGMAA invited address two years ago.
  4. First five users at any university are free forever, everybody else gets two terms for free, then you’re hooked and have to pay. $3/student/term for individual, $5/student/term for team. I’m pushing our uni to pay for a site license. PDF driven means you upload a template file, and outline the questions on that PDF. You have to do this “manually”.
  5. I want to contrast these two applications’ features on fixed-response vs free-response questions programmable means parameters can be randomized. Lua is an option. With FRQ, the flow is to write the problem, draw a box for their work, and a bubble form is generated for the score. So the instructor is the one that does the bubbling. You can comment either on the paper, or on the scanned PDF. But there’s no support for a rubric. You have to keep track of that yourself.
  6. the code at the top identifies the sheet and page number
  7. the code at the top identifies the sheet and page number
  8. the code at the top identifies the sheet and page number
  9. the code at the top identifies the sheet and page number
  10. the code at the top identifies the sheet and page number
  11. the code at the top identifies the sheet and page number
  12. By contrast, let me describe the feature of Gradescope. Gradescope allows you to flag problems for mistakes. You can make a comment on that mistake. You can assign a deduction to that flag, and if you change your mind, you change the deduction and it updates automatically. With MCQ, the AI can group similar responses, so you can assign a score to all the students who marked “C” on the problem. But then C needs to be the right answer on every problem, so you lose the random permutation of options. They’re working on a solution to this, but not there yet.
  13. So how can I get the best of both worlds here? What I want to do is:
  14. Here are some ways to work around this. The “primitive” way would be just keep them separate. The advantage of the first method is it’s simple to implement. But my LMS can’t automatically add columns, so if I change one column I have to change another manually (or upload). The interesting/complicated way:
  15. image: console with command line The command line options describe the parameters. I need to tell the program which GS problems get mapped to AMC problems, and I need to tell it how to match student records from one database to the other. Then I import the scores file. The program maps the scores back to boxes to be checked, finds the student’s paper, then the student’s problem, then marks that box as checked (different from assigning the score, it’s mimicking my checking of a box). So if I say in Gradescope that this problem gets 4/5, the script will make sure that the box for 4 points is ticked for that problem. Then you restore in AMC and the proper scores are recorded.
  16. So now the PDF generated by AMC includes those checked boxes, so the student knows their score, but they still need to go to GS to get the comments. I’d like to incorporate those (and maybe even the extra comments and in-GS annotations). The other things I would like to do is not run this on the command line. Ideally I could do this within the AMC GUI.
  17. image: error ORM makes “undoing” complicated. Data layer is transactional, but buggy I attempted a plugin at the “reporting” stage, but not enough of the application is exposed there
  18. To be honest, my commitment to this path hindered my ability to give timely feedback. This defeats the whole purpose
  19. Thank you very much! If you want these slides, you can find them on slideshare, and if you want to browse my code or contribute, you can find it on github.
  20. Thumbnail, creator, license,