I've seen many platforms that allow companies to interview prospective developers by means of coding challenges, but those are always paid.

So I'm trying to find some tool where I can create my own exercises and test cases and tell my students to go solve the challenge and see if their code passes all tests, and then maybe get a rank list of whose code has better performance (in order to make it look like a "competition").

In the past I tried to host a contest through Hackerrank but it was too cumbersome and there was no way to hide lots of auto-generated code that would just confuse my students.


1 Answer 1


It doesn't do ranking in any manner, but CodingBat permits you to create challenges with tests for your class in either Python or Java.

While the interface begins assuming that you will have one method, you can add as many methods as you wish. However, you are limited to one class (so no inner classes), and you are forbidden Exceptions, so the projects would have to be fairly small in scope.

  • $\begingroup$ I guess I'd be very worried about the restrictions. They would seem to push one toward writing terrible code just to meet them. A program in Java with just one class is pretty much just a C program. This might be fine for the first week of class, I suppose. $\endgroup$
    – Buffy
    Feb 20, 2020 at 13:35
  • $\begingroup$ @Buffy The program itself is supposed to be a lot of basic practice at writing tiny methods. Basically, a way to build fluency for people who are having a lot of trouble. $\endgroup$
    – Ben I.
    Feb 20, 2020 at 16:05
  • 1
    $\begingroup$ I think this kind of online system where code is judged by returning the right output for certain inputs is most suited for algorithmic problem-solving. For OOP tasks where you have to write a few classes with some simple methods, having the correct output for each input to one method doesn't mean that the rest of the classes or methods are implemented correctly. At the very least, writing sufficiently good tests for OOP exercises is harder and requires a more powerful format for tests to be written in. $\endgroup$
    – kaya3
    Feb 20, 2020 at 22:02
  • $\begingroup$ @kaya3 I agree entirely. $\endgroup$
    – Ben I.
    Feb 21, 2020 at 4:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.