28 July 2010

Clarification regarding assumptions for quizzes

Each day, before you take a quiz, we show you the general assumptions for the quizzes. This includes that we are assuming all quizzes execute on a 10.2 instance. An assumption means that unless we mention anything otherwise, you assume that configuration. If, in the quiz question, we explicitly state something that differs from an assumption (like "On Oracle 11g") then the question takes precedence over the assumption. In other words, just because we state that you should assume 10.2 (unless otherwise mentioned), we do not exclude the possiblity of a question on 11g appearing in the daily quiz.

In our next release (1.5), we will add text to this page making this point more explicit.


  1. One thing is nasty about it. This is a competition and you are asking about very vide area of knowledge. At the same time you are shifting that area frequently. This makes the contest very difficult for beginners - which might not know Oracle 11.2G or Oracle 1.0 (I meant "wide variety of versions").
    At the same time I feel that there are multiple areas (I would add "non-standard packaged") are present more often than other, in particular UTL_FILE. I have the feeling that triggers are used quite often in the questions... and as far as I remember Tom Kythe has a negative point of view at triggers (he mentioned something about using them in the past but not recommending them currently... please comment if I am wrong or provide link to the asktom site if you know it).

  2. I’ll start by addressing the query regarding Tom Kyte’s opinion on triggers:

    "If a well informed person who understands how to use them and understands concurrency, multiple users doing things, uses them, triggers are awesome. But the vast amount of people using triggers are not that well informed they don’t understand the side effects and they definitely don’t think in terms of multiple users.

    When that developer uses a trigger they’re using a very dangerous thing because they don’t realise what they’ve done and how many ways that they can break. I have three features that are so misused that I think the world would be a better if we did not have them and triggers is one of them." (http://www.simple-talk.com/opinion/geek-of-the-week/tom-kyte-geek-of-the-week/, retrieved July 28, 2010.)

    I largely share Tom’s opinion.

    I’ve actually found the questions about packages such as UTL_FILE to be quite interesting and useful. At one time I knew a lot about UTL_FILE, but I haven’t directly used the package for several years. Although many of the applications I support read and write files, they do so using an abstraction layer I wrote that also supports other data storage such as BLOBs. This allows applications to interface to the concept instead of the implementation. If a new data storage mechanism is needed only the package implementing the abstraction needs to be modified.