test cases. Taking into account the amount of effort
spent by problem setters in creating huge and exhaus-
tive private test cases, it is almost deceiving to see a
posteriori that only a few of these test cases are, in
fact, relevant.
These relevant test cases can improve the feedback
of educative online judges which, until now, just re-
port a negative verdict in the event of a wrong submis-
sion. However, an important question that remains to
be addressed is how to use these distilled sets in the
workflow of educative online judges.
A first option would be to disclose the distilled
test cases to students that request them after they
have submitted a bad submission. A similar approach
would be to disclose only one distilled test case for
which the student’s code fails (assuming there is at
least one, which should happen most of the times).
Although this could be a way to help beginners to spot
their errors and fix them, it also could induce a “trial
and error” behavior similar to the one already criti-
cized in the introuction of this paper. At the very least,
the counterexample where the code fails, being part of
the distilled set, should provide a deeper insight to the
users than just a random counterexample.
An alternative to mitigate the above option would
be to keep distilled test cases private from students,
but available to instructors. Looking both to the
code of their mentored students and to the distilled
test cases (where the code fails), instructors could be
able to provide better individual answers, including,
if deemed suitable, some of the distilled test cases.
The community of instructors using Jutge.org is
currently debating these options and some variations
of them.
ACKNOWLEDGEMENTS
We thank all the users of Jutge.org: without their nu-
merous mistakes, this work would have never seen the
light.
REFERENCES
Alon, N., Moshkovitz, D., and Safra, S. (2006). Algorith-
mic construction of sets for k-restrictions. ACM Trans.
Algorithms, 2(2):153–177.
Cheang, B., Kurnia, A., Lim, A., and Oon, W.-C. (2003).
On automated grading of programming assignments
in an academic institution. Computers & Education,
41(2):121–131.
Chvatal, V. (1979). A greedy heuristic for the set-
covering problem. Mathematics of Operations Re-
search, 4(3):233–235.
Douce, C., Livingstone, D., and Orwell, J. (2005). Auto-
matic test-based assessment of programming: A re-
view. ACM Journal on Educational Resources in
Computing, 5(3).
Fori
ˇ
sek, M. (2006). Security of Programming Contest Sys-
tems. In Dagiene, V. and Mittermeir, R., editors, In-
formation Technologies at School, pages 553–563.
Gim
´
enez, O., Petit, J., and Roura, S. (2009). A pure
problem-oriented approach for a CS1 course. In Her-
mann, C., Lauer, T., Ottmann, T., and Welte, M., ed-
itors, Proc. of the Informatics Education Europe IV,
pages 185–192.
Gurobi (2013). Gurobi Optimizer Reference Manual.
http://www.gurobi.com.
Ihantola, P., Ahoniemi, T., Karavirta, V., and Sepp
¨
al
¨
a, O.
(2010). Review of recent systems for automatic as-
sessment of programming assignments. In Procs.
of the 10th Koli Calling International Conference on
Computing Education Research, pages 86–93. ACM.
Joy, M., Griffiths, N., and Boyatt, R. (2005). The BOSS on-
line submission and assessment system. ACM Journal
on Educational Resources in Computing, 5(3).
Karp, R. M. (1972). Reducibility Among Combinatorial
Problems. In Miller, R. E. and Thatcher, J. W., ed-
itors, Complexity of Computer Computations, pages
85–103.
Kurnia, A., Lim, A., and Cheang, B. (2001). Online judge.
Computers & Education, pages 299–315.
Leal, J. P. and Silva, F. (2003). Mooshak: a web-based
multi-site programming contest system. Software:
Practice and Experience, 33(6):567–581.
Petit, J., Gim
´
enez, O., and Roura, S. (2012). Jutge.org: an
educational programming judge. In Procs. of the 43rd
ACM technical symposium on Computer Science Ed-
ucation, SIGCSE ’12, pages 445–450. ACM.
Singh, R., Gulwani, S., and Solar-Lezama, A. (2013). Auto-
mated feedback generation for introductory program-
ming assignments. In Boehm, H.-J. and Flanagan, C.,
editors, PLDI, pages 15–26. ACM.
Tonin, N., Zanin, F., and Bez, J. (2012). Enhancing tradi-
tional algorithms classes using URI online judge. In
2012 International Conference on e-Learning and e-
Technologies in Education, pages 110–113.
Verd
´
u, E., Regueras, L. M., Verd
´
u, M. J., Leal, J. P., de Cas-
tro, J. P., and Queir
´
os, R. (2012). A distributed system
for learning programming on-line. Computers & Ed-
ucation, 58(1):1 – 10.
BetterFeedbackforEducationalOnlineJudges
183