Getting started with CodeGrade Standalone

Introduction

CodeGrade is a blended learning application designed especially for programming education. It makes grading and handing in programming exercises more insightful and effective for students and grading more efficient and intuitive for teachers. This is achieved by providing an online environment carefully designed to suit the needs of modern programming education.

CodeGrade offers the solution for the complete grading workflow, by increasing efficiency for teachers and enhancing feedback for students. Programming education made intuitive.

What can CodeGrade do?

CodeGrade improves programming education by providing numerous tools to enhance grading and reviewing code. The most important tools are:

  • A comprehensive Code Viewer with:

    • Inline feedback, making it possible to write feedback on specific parts or lines of code.

    • Rubrics, easy to use and fully integrated in the Code Viewer. Rubrics aid consistency between teachers and help students understand their grade.

    • Automatic linter feedback, feedback of linters is automatically parsed and displayed within the Code Viewer.

  • One click code plagiarism detection using JPlag.

  • CodeGrade Filesystem, enabling teachers to access and assess all submissions locally and do all grading from within your favourite editor without any overhead.

  • Customizability, making it easy to tailor CodeGrade to your course and way of teaching.

  • State of the art automatic grading “CodeGrade AutoTest”, easily create and run autograding scripts within CodeGrade that seamlessly work together with inline feedback and rubrics.

Standalone

All functionalities are bundled in one complete environment for programming education. You will have received a standalone CodeGrade domain with a signup link from CodeGrade. Either an institution domain, such as institution.codegra.de or the essential domain: app.codegra.de.

Create a standalone CodeGrade assignment

Note

You should have been added to the correct course by the CodeGrade Support Team, if not, please contact your Partner Success Manager.

Follow the steps below to create a new CodeGrade assignment on your standalone course:

  1. Go to your course and press the “+” button in the bottom left.

  2. Enter a name for the assignment and confirm.

  3. Now the Assignment Management Page for the new assignment will open.

  4. Set a deadline and all your management options accordingly.

  5. When ready to open up the assignment to student, set the state to “Open” with the toggle in the top right.

Setting up your course

You also have certain management options in your course. To manage the course options press “Courses” () in the left sidebar, select your course and press the icon. Below is a brief overview of the tabs in course management.

Members

Here you will see all the members in a course and change roles. You can also add sign up links to your course, to allow students and other members to register for an account.

Permissions

On this page, you can change the permissions of the roles in the course. For example, you could give your TAs more permissions. Every permission is explained by the icon.

Warning

The default permissions will probably suit your course.

Groups

If you want to use groups, you can create group sets here. A group set can be used by multiple assignments in the same course. Depending on permissions you can allow students to join a group themselves or only allow Teachers or TAs to add students to a group. If you want to change these permissions, you can do so on the permissions page explained above. Click here to learn more about setting up your groups.

Setting up your assignment

By clicking the icon on an assignment you enter the assignment management page. This page allows you to set up groups, start plagiarism runs, and add or edit the rubric, and set up automatic testing.

General

On the “General” page you can edit several general options. You can also select a group set to use, if you decide to make an assignment a group assignment. Furthermore you can set bonus points.

Graders

To divide submissions between your teachers and/or TAs, graders can be assigned to individual submissions. This can be done either manually, using the dropdown menus on the submission list page, or randomly using the “Divide Submissions” tool on the “Graders” page on the assignment management page.

Submission divisions can be shared between different assignments of the same course. Connect the submission division with another assignment to use the previously created division. Click here to learn more about dividing submissions

Note

Connecting divisions can be very helpful if you want the same TAs to grade the same students for each assignment.

Plagiarism

On the “Plagiarism” page it is possible to start plagiarism runs to detect fraud. Click here to find out more about starting plagiarism runs

Rubric

Rubrics are a scoring guide used by graders, they make grading more consistent and efficient for teachers, and help students understand their grade. Rubrics can be created within CodeGrade and consist of multiple categories. Each category has multiple levels, with a corresponding amount of points. Examples of categories are functionality, code style, documentation, code structure and version control. Examples of levels are unacceptable (0), needs improvement (1), good (2) and excellent (3). CodeGrade will automatically calculate the grade after filling in the rubric, by taking the sum of the points and dividing this by the maximum amount of points. This grade can be overridden. Click here to learn more about setting up rubrics

Note

Rubrics can also be imported from previous assignments.

The Code Viewer

The heart of CodeGrade is the Code Viewer. This enables you to grade and review submissions from within our website and allows students to intuitively see their feedback displayed in their code.

Submissions handed in as archives are automatically extracted and displayed in the file-tree next to the Code Viewer. Of course, multiple individual files can also be uploaded in CodeGrade. The Code Viewer supports over 175 programming languages, Jupyter Notebooks, PDF-files and images.

Inline feedback

The most intuitive way to give feedback on programming assignments is to be able to write comments on specific lines or blocks of code. This is made possible by the inline feedback in the Code Viewer.

Press on any line and start typing your feedback, click the button to save the feedback or press the button to delete.

Note

Pro tip: press Ctrl+Enter to save feedback efficiently.

Snippets

Experience tells us that the same lines of feedback are oftentimes given multiple times to multiple students. We introduced snippets to make grading with inline feedback more efficient. Click the icon when entering line feedback to save the comment as a snippet. This snippet can now be re-used in the future by typing its short name and pressing Tab to autocomplete.

Full management of snippets can be done in the “Profile Page” (), snippets are personal and can be used over multiple assignments and courses.

Note

Course wide snippets are available in CodeGrade too, these can be set up by the teacher of the course on the Course Management page and can be used by all graders of the course.

Rubrics

If an assignment has a rubric (click here to learn more about setting up rubrics), the rubric can be used and filled in from within the Code Viewer. Press the button to display the rubric and select the levels for the submission to generate a grade using the rubric.

Warning

Do not forget to save the filled in rubric after grading! Rubric grades can be manually overwritten.

General feedback

In addition to the new ways of giving feedback in CodeGrade, conventional general feedback can be given too. Press the button to give and save general feedback.

Code Viewer settings

Like your favourite editor, the Code Viewer provides numerous settings to fit your preferences. Click to change:

  • Whitespace visibility

  • Syntax highlighting

  • Code font size

  • Dark/light theme

  • Amount of context lines

Feedback overview

In the “Feedback overview” tab you can find an overview of the general feedback and all the inline feedback given on a submission. The feedback overview is shown automatically when an assignment’s state is set to “Done”. The amount of lines displayed before and after each inline comment can be changed with the “Amount of context” option in the Code Viewer settings. This is especially useful for students to identify the types of mistakes they make most often.

Diff overview

The “Diff overview” tab gives an overview of the differences between the submitted work and a teacher’s revision. The amount of lines displayed before and after each part that is different can be changed with the “Amount of context” option in the Code Viewer settings.

Student Experience

Students hand in an assignment on the CodeGrade website or optionally via Git. After handing in, students can browse through their code to check if it is correctly handed in. Before handing in they can click on the “rubric” () button to show the rubric for this assignment. This means students know what is expected of them.

After an assignment is set to “Done” (), students can view their feedback and grade in CodeGrade.

After uploading, a student will find an overview of their Code (where they can browse through their handed in files), an overview of their Feedback and optionally an overview of the AutoTest results which can be filled in preliminarily with Continuous Feedback.

Contact us and support

If you have any questions, don’t hesitate to contact us. You can email us at support@codegrade.com. In addition to questions and bug reports, we always love to get feedback and suggestions on how we can improve CodeGrade to better fit your education.