Table of Contents

Programming Assignments

Updated

Programming assignments are available with institutional site licenses and for individual courses subscribed to Gradescope Complete. If you have any questions about getting access in your course, or want to experiment with the platform, please send us an email.

To create a programming assignment, go to the course’s Assignments page and click Create Assignment in the bottom right of the page. Select “Programming Assignment” from the list of assignment types.

Students can submit multiple files of any file type, including files of different types, to programming assignments on Gradescope. Students can also submit to Gradescope via GitHub and Bitbucket integration. You can then autograde the code, manually grade it with a rubric and in-line comments, or use a combination of autograding and manual grading. 

Autograding

With our autograder platform, you have full flexibility in setting up whatever language, compilers, libraries, or other dependencies you need. You provide us with a setup script and an autograder script, along with whatever supporting code you need, and we manage accepting student submissions, running your autograder at scale, and distributing the results back to students and to you.

As an instructor, you can create a new programming assignment on Gradescope and upload your autograder zip file following our specifications. Your code produces output in the format that we request. Students submit to Gradescope and have their work evaluated on demand. They can submit as many times as they want and get results back as soon as the autograder finishes running. If you update your autograder after students have submitted, you can rerun it on all submissions at once from the assignment’s Manage Submissions page.

Submission interface showing autograder test results and submitted code
If you want to learn more about setting up programming assignments, check out the Gradescope Autograder Documentation.

Manual Grading

You can also grade students’ code manually using the Gradescope grading interface. To enable manual grading, check the “Enable Manual Grading” box when creating a programming assignment. You can also enable this on the settings page for an existing assignment. Your students can then upload their code, and you can grade it from the Grade Submissions tab, using a rubric and in-line comments. Note that students won’t be able to see any scores or feedback from manual grading until you Publish Grades from the assignment’s Review Grades page. 

If manual grading is enabled for a programming assignment, you can indicate one or more manually graded questions on the assignment’s Edit Outline page. You can have both autograded and manually graded components on one programming assignment, or you can skip the Configure Autograder step and only use manual grading to grade students’ code. Rerunning the autograder on any (or all) submissions will preserve any manual grading.

Regardless of whether you’re using Autograding, Manual Grading, or a combination of the two, once submissions are in, you can download all students’ code submissions in bulk by selecting the Assignment > Review Grades (left side panel) > Export Submissions (lower right corner). 

Code Similarity

In any Programming Assignment you can also use the Code Similarity tool, which will help determine commonalities among your students’ code. This tool does not automatically detect plagiarism but rather shows you how similar programming submissions are to one another. Code similarity is available for both autograded and manually graded assignments and for most programming languages. For more information on checking for similarity among your students’ submitted Programming Assignments, check out the full guide on Code Similarity.

Submitting work for students

  1. Open your assignment. Click the left side panel to expand it (if it isn’t already) and select Manage Submissions. This will take you to a list of submissions that have been made to this assignment so far.
  2. Click the Upload Submission button at the bottom of the screen. A dialog box will appear.
  3. In the dialog box, select your Submission Method. You can choose to either drag and drop your code file(s) into Gradescope OR submit a GitHub or Bitbucket repository. If you choose to submit from GitHub or Bitbucket, you will first need to connect your account if you have not already. You will then be prompted to choose the repository and branch. You can upload as many files as you’d like, including files of different types.
  4. Next, select the student’s name from the dropdown at the bottom of the dialog box.
  5. Then, select the Upload button to submit your student’s work.

Was this article helpful?
Awesome, glad that it's helpful! 🙌 Have ideas on how we can improve? Sorry to hear that. Let us know what we can improve!
Need help?

Assignment Types

Bubble Sheet Assignments

Contact