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

Lesson 25: Evaluating Definite Integrals (slides)
Lesson 25: Evaluating Definite Integrals (slides)Lesson 25: Evaluating Definite Integrals (slides)
Lesson 25: Evaluating Definite Integrals (slides)Matthew Leingang
 
Lesson 25: Evaluating Definite Integrals (handout)
Lesson 25: Evaluating Definite Integrals (handout)Lesson 25: Evaluating Definite Integrals (handout)
Lesson 25: Evaluating Definite Integrals (handout)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)Matthew Leingang
 
Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)Lesson 23: Antiderivatives (slides)
Lesson 23: Antiderivatives (slides)Matthew Leingang
 
Lesson 22: Optimization Problems (slides)
Lesson 22: Optimization Problems (slides)Lesson 22: Optimization Problems (slides)
Lesson 22: Optimization Problems (slides)Matthew Leingang
 
Lesson 22: Optimization Problems (handout)
Lesson 22: Optimization Problems (handout)Lesson 22: Optimization Problems (handout)
Lesson 22: Optimization Problems (handout)Matthew Leingang
 
Lesson 21: Curve Sketching (slides)
Lesson 21: Curve Sketching (slides)Lesson 21: Curve Sketching (slides)
Lesson 21: Curve Sketching (slides)Matthew Leingang
 
Lesson 21: Curve Sketching (handout)
Lesson 21: Curve Sketching (handout)Lesson 21: Curve Sketching (handout)
Lesson 21: Curve Sketching (handout)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
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)Matthew Leingang
 
Lesson 16: Inverse Trigonometric Functions (slides)
Lesson 16: Inverse Trigonometric Functions (slides)Lesson 16: Inverse Trigonometric Functions (slides)
Lesson 16: Inverse Trigonometric Functions (slides)Matthew Leingang
 
Lesson 16: Inverse Trigonometric Functions (handout)
Lesson 16: Inverse Trigonometric Functions (handout)Lesson 16: Inverse Trigonometric Functions (handout)
Lesson 16: Inverse Trigonometric Functions (handout)Matthew Leingang
 
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)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

psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docxPoojaSen20
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
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.pdfQucHHunhnh
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
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.MaryamAhmad92
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
 
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.pdfPoh-Sun Goh
 
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-701bronxfugly43
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 

Recently uploaded (20)

psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
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
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
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.
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).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
 
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 & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 

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,