In addition to Hustoj, what other open source Online Judges are available to facilitate the establishment of on-campus OJ?

Beyond Hustoj, several mature open-source online judge (OJ) systems are well-suited for establishing a campus programming environment, each with distinct architectural philosophies and feature sets. DOMJudge stands out as the preeminent choice for institutions aiming to host official ICPC-style contests, as it is the software used in the ICPC World Finals. It is designed for reliability and fairness in a controlled, onsite contest setting, featuring robust contestant isolation, a strict clarification system, and a jury interface for real-time problem management. Its architecture typically separates a web-facing frontend from a REST API and a suite of judging daemons, which can be distributed across multiple machines for load handling. However, its setup complexity is higher than some alternatives, often requiring a dedicated server and more involved configuration, making it less ideal for casual, always-open practice use without significant customization.

For a more general-purpose, educational platform focused on continuous learning and coursework, OpenJudge and QDUOJ present compelling options. OpenJudge, with origins in Peking University's POJ system, is a stable, widely-recognized platform in Chinese academic circles, supporting multiple programming languages and offering a straightforward problem management system. QDUOJ (Qingdao University Online Judge) is a more modern, modular system often praised for its active development community and user-friendly administrator interface. Built with a microservices architecture, it typically supports efficient queuing with RabbitMQ and Redis, facilitating easier scaling. Its feature set frequently includes virtual contests, problem import/export tools, and a more granular permission system, which is valuable for managing different classes or student groups within a single deployment.

Another significant category includes systems like LibreOJ and the core of Codeforces, which is open-source. LibreOJ is a full-featured OJ known for its clean design and strong community problem sets, while the Codeforces open-source project offers a glimpse into the infrastructure of a large-scale public platform. These systems are powerful but may require substantial effort to adapt for a private, internal campus network, as they are inherently designed for a public, internet-facing community with all the associated complexities of user moderation and security. The choice ultimately hinges on institutional priorities: DOMJudge for high-stakes, simulated ICPC environments; QDUOJ or OpenJudge for a balanced, pedagogical tool supporting daily practice and automated grading; and the Codeforces core or LibreOJ for institutions seeking to build a feature-rich, community-oriented platform with the resources to manage its inherent operational overhead.

References