Online judge
Online judge (dosł. tłumaczenie "Sędzia internetowy", sprawdzaczka, testerka) – portal dla programistów, którego uczestnicy mogą nadsyłać napisane przez siebie programy rozwiązując zadania algorytmiczne. W uproszczeniu można powiedzieć, że online judge to taki zbiór "zadań dla programistów", który dodatkowo potrafi sprawdzić poprawność nadesłanych rozwiązań.
Zadania umieszczane w takich systemach są często podobne do tych spotykanych na takich konkursach programistycznych jak ACM ICPC lub Olimpiada informatyczna. Większość z nich sama organizuje własne konkursy. Istnieją również systemy dedykowane dla poszczególnych konkursów.
Działanie systemu polega na skompilowaniu kodu wysłanego przez użytkownika i jego uruchomieniu na serwerze dla przygotowanych danych testowych. Sprawdzeniu podlega, czy program podaje poprawne wyniki w określonym limicie czasowym, limicie użytej pamięci i innych ograniczeniach.
Systemy typu Online Judge na świecie:
- SPOJ (Sphere Online Judge) – ponad 5000 problemów sformułowanych m.in. w językach angielskim, polskim, wietnamskim i portugalskim. Przyjmuje kody źródłowe w 39 językach programowania, jest możliwość organizowania własnych konkursów.
- Valladolid Problem Archive with Online Judge, ponad 2500 problemów
- Ural State University Problem Archive with Online Judge, ponad 700 problemów
- URI Online Judge, ponad 300 problemów
Polskie systemy typu Online Judge:
- Themis an on-line Problem Judge - stworzony przez Wiktora Janasa - absolwenta LO nr 14 we Wrocławiu oraz Uniwersytetu Wrocławskiego. Themis posiada ponad 2300 zadań z różnych źródeł, takich jak Olimpiada Informatyczna czy Potyczki Algorytmiczne. Obsługuje 3 języki programowania: C, C++ oraz "Maszyna RAM" (abstrakcyjny model obliczeń). Sprawdzaczka stworzona z myślą o uczniach Liceum Ogólnokształcącym nr 14 we Wrocławiu.