This is a very interesting question, to which there are many answers.
The system was originally created, because we wanted to apply an online judge in the teaching of students. Several universities in Poland, including Warsaw University, Wroclaw University, and Poznan University of Technology have already been doing likewise for the last two or three years. Quite naturally, we tried to make our system more functional
. The elements we have been attempting to add are those that potential users wanted to see in other, older online judges (including acm.uva.es), but couldn't have.
At present, the system is created for 1) students and lecturers of universities and 2) members of a wider programming community, interested in algorithmics and programming contests. The site admins belong to both groups at the same time, and our bond with group 2) is probably as strong or even stronger, since it comes from interest/passion/(call it what you like), and not just geographical location.
The system is aimed at different users, and it is our hope that they may use it to a purpose that suits them best, e.g.:
- young people & beginner programmers are encouraged to take a shine to algorithmics;
- our students are given a chance to do their homework, honestly, thoroughly, and without cheating
;
- ACM contest pros can solve tasks without being cramped by the restraints of too few programming languages, or an inconvenient user interface;
- enthusiasts of functional or object oriented programming can solve contest problems in their favourite language;
- any persons willing to share an interesting task with the rest of the SPOJ community can do so nearly automatically (one mail to the admins requesting problemsetter's priviliges is eneough),
- last, but not least, (starting from October onwards) any person, wishing to organise a programming contest, with nearly any rules they may decide upon, may do so at any time they choose, without the help of system admins.
In the years (or months) to come, the system may potentially be adapted to allow for programming leagues, competing and fighting programs, etc., thus remarkably extending its functionality
I hope this answers your question at least to some extent. I wouldn't like to go into detail over existential issues like "why should I want to solve tasks without a prize?" or "why should you create free software without even inserting a PayPal link?", since there is no way a point of view, once fixed in these matters, can be changed.