An online judge for C, C++ and Java programming assignments