16 June 2010

A reminder regarding cheating and the PL/SQL Challenge

We are coming up on the end of the first quarter of playing the PL/SQL Challenge. In early July, we will hold the first championship playoff, with a first prize of 1000 USD. We feel, therefore, that it is a good time to remind all players about the rules regarding cheating.

To read all the PL/SQL Challenge rules, click here.

The PL/SQL Challenge offers cash prizes and will become a means by which programmers can establish or improve their reputations as PL/SQL developers. It is serious stuff, in other words. And that means that it is possible that  someone will try to cheat or "game the system" to improve their chances of winning a prize and elevated status. We have given lots of thought to the ways that people could cheat. We have taken several measures to minimize the chance of successful cheating. And we have decided on the following consequences.

If you violate any of the rules of the PL/SQL Challenge or cheat in the process of submitting your answer, then you will lose all your points for the current month (any previously submitted and any others submitted for the rest of the month). If this occurs a second time, your account will be closed and all accumulated points lost.

Here are what we consider to be examples of cheating (this list is by no means exhaustive; if you find another way to cheat and it is not on this list, you will still be penalized when you are discovered):
  • Creating multiple accounts: you may only create one account for yourself in the Challenge.
  • You take the quiz in one account, taking your time to look up the answer, study the code, etc. Once you are sure of the answer, you log into your "real" account and submit your answer quickly, to game the timing algorithm.
  • You receive the quiz from someone else, study and determine the correct answer, and submit your answer quickly, to game the timing algorithm.
  • You initiate or participate in any sort of discussion forum/thread/SMS on the quiz during the day in which the quiz is active. Feel free to discuss the question and answers after once that quiz is "history." While people can still answer it, however, please refrain from publishing information or discussion about it.
  • You use any kind of a "bot" to submit your answer or answers.
  • You start the quiz, study and research until you are ready to answer the question, then you refresh the webpage in hopes of restarting the clock. It won't help you, but it's still cheating.


  1. Yes, but please, remove the timing as it still has no value in online quiz. I am additionally influenced by this - my kid can come to me and interrupt answering the quiz; my internet connection can slow down; I can be occupied with thousand of urgent tasks while answering. Also - the correctness is influenced by many factors - ex. if I have Oracle 11G up and running and connected I would be able to answer any "what will happen when the following block is executed". That is why I feel that "#1 rank" like prize is pointless.

  2. Adderek,

    I am confused about what you are proposing. We should not include the time it takes to answer the question into the scoring and ranking? I acknowledge that there are issues with this; you point out some and then there is the issue of familiarity with English.

    I suggest, however, that over the span of a quarter (about 90 quizzes), many of these issues would "even out" - unless you are on a dial-up connection always. I guess that would be a built-in disadvantage.

    But if we do not include time in the ranking, how then do you propose that we identify winners? Everyone can get a perfect answer every time simply by looking up the answers or reproducing the code and running it.

    Regards, SF