Let students pass their own command line arguments

Let students pass their own command line arguments

by Frieder Loch -
Number of replies: 2

Hello everyone,

we have introduced the CodeRunner plugin for our introductory course on IT at TU Munich. So far we are very satiesfied. We have one question that would allow our students to debug their code more easily.

Is there a function that allows the students to pass stdins that are independent from the testcases? This would support them in debugging their functions and understanding errors.

Thank you and kind regards,

Frieder

In reply to Frieder Loch

Re: Let students pass their own command line arguments

by Richard Lobb -

There is no such capability at present, but I'm interested in the question.

When developing CodeRunner I assumed students would have a normal IDE at their disposal. They would develop and test their code and then, when satisfied, they would submit it to CodeRunner for grading. If it failed, they would be allowed to resubmit, but would pay a small penalty for doing so. One of the themes that emerged was the idea of "authentic assessment" - students would have normal development tools at their disposal and the product they produced would then be assessed via CodeRunner.

It sounds like you expect students to develop and debug their code within CodeRunner. Could you explain why you do not let them have access to normal programming development tools please? Or perhaps to a web IDE like https://repl.it ?

Putting that question to one side and accepting that for simple problems students might wish to enter code directly into CodeRunner, can you clarify for me how you would expect students to test their code? You say their stdins would be independent from the testcases. What about the test code within the testcases? Would that be ignored too? And what about all the code in the template, that wraps the student code to make a full executable, and which often includes extra checks on style as well?

Thanks for raising the question. I've mulled over the idea of incorporating more development capabilities into CodeRunner before, but I'm not sure it's a good idea. Certainly providing a full web IDE within a Moodle question sounds wrong. A totally separate Moodle web IDE plugin that linked into CodeRunner might in principle be possible but then again why should it be part of Moodle rather than independent, like repl.it?

Richard

In reply to Richard Lobb

Re: Let students pass their own command line arguments

by Frieder Loch -

Dear Richard,

thanks for your answer. The aspect was raised by students since in some aspects the compiler of CodeRunner behaves differently from the compiler in our IDE (Code::Blocks). Our CodeRunner configuration treats some warning as errors, while this is not the case in Code::Blocks. Our course contains practical exams that are solved entirely in CodeRunner/Moodle and therefore such a capability would ease the familiarization with the compiler of CodeRunner. However, I assume that this is only an issue for beginners in programming.

We envisioned this idea only for very simple programs (e.g., mathematical functions) without complex testcases/templates. Thereby, students could observe the behavior of their programs with different inputs. I agree that this solution would not scale very well to more complex cases.

However, I think we have found a solution for this issue without changing CodeRunner by decreasing the size of the code that students have to enter during the practical examinations (i.e. single statements instead of complete programs).

Thanks for the pointer to repl.it, we will definitely have a look into this.

Kind regards,
Frieder