If this would be added to the main branch, would you be using it, Solal?
Yes, the Helvetic Coding Contest will keep this system for the foreseeable future.
I have opened a PR. (#259)
Cheers,
Solal Pirelli
2017-04-04 1:23 GMT+02:00 Jaap Eldering jaap@jaapeldering.nl:
Hi Solal,
On 02-04-17 08:42, Solal Pirelli wrote:
Hi all,
At the Helvetic Coding Contest - as its name implies, Switzerland's largest programming contest - we patched DOMJudge to add support for hiding problem statements until another problem is solved.
For instance, if C depends on B and B depends on A, teams are forced to first solve A, then B, then C. This year we had 5 such chains, for a total of 15 problems.
This has two advantages:
- It forces beginners to solve easy problems first, ensuring they'll
solve a few problems and have fun rather than picking a hard problem whose difficulty is not apparent and getting stuck on it for hours. (This looks like a problem that should be solved by educating users, but as any software engineer knows, that is all but impossible :) )
- It allows us to have a bunch of problems on a common theme, where in a
few cases the harder one's statement is simply "like the easier one, but with much larger bounds on the input" without allowing teams to solve the hard one first and then submit that solution to the easier one. More problems, less work for problem creators.
Thus our contest is suitable for both beginners and experts (even if beginners don't have a chance of actually winning, they enjoy it).
I recently rewrote that patch on top of the master branch of the DOMJudge repo, it's quite small (about 40 modified lines).
Is this something DOMJudge users are interested in? Should I open a PR?
This sounds good. As I already mentioned in private communication, I think an important tradeoff is to how many people this would be useful compared to how easy it is to maintain. Since we ourselves are unlikely to use it, it would be likely that bugs are introduced and go unnoticed, especially if the changes have complex interaction with existing code. If this would be added to the main branch, would you be using it, Solal? This would help prevent "bit rot".
Could you indeed open a pull request? I would be interested to see the code, and possibly make some comments on improvements.
Other than that it would be good to hear from other users what they think about this feature.
Best, Jaap
DOMjudge-devel mailing list DOMjudge-devel@domjudge.org https://www.domjudge.org/mailman/listinfo/domjudge-devel