The PL/SQL Challenge (www.plsqlchallenge.com) offers a daily quiz on the PL/SQL language, through which thousands of Oracle technologists demonstrate and deepen their knowledge of PL/SQL. This blog contains posts by the PL/SQL Challenge founder, Steven Feuerstein, as well as comments from players.

04 May 2011

Show minimum version before you see the quiz?

I just received this request from a player:

Would it be possible to show the "Minimum Oracle Version" for the before taking today's quiz?

As you probably know, I tend to be conservative about providing any information "in advance" that could give away crucial clues about the quiz.

Having said that, however, I am inclined to support the above idea. Basically, the idea here would be that many developers are not yet working with the latest versions of Oracle (in this case, 11g). Which puts you at a tremendous disadvantage when the clock starts ticking and then you are confronted with a version with which you do not have much, if any, familiarity.

And offering as an advance "clue" that we'll be working with 11g is a rather broad hint that doesn't really give away too much information.

17 comments:

But not doing the quiz is not good either. And when you enter the quiz and the clock is ticking, you can always decide to don't enter the answer. If I'm correct that makes no difference for the end result. Not doing the quiz or not answering the quiz.If that is the case, it makes no difference where you would enter the information.

It helps players who test the code to connect to an instance with a certain version or open documentation even before the question is asked.

I think all this belongs to the process of answering a question.

A few months ago, I still worked with a 9i database. Altough I worked with a 9i then, I knew features of 10g and 11g. Plenty of opportunities to learn them: presentations(Steven's for example, on http://www.toadworld.com/Knowledge/DatabaseKnowledge/StevenFeuersteinsPLSQLObsession/tabid/153/Default.aspx) or download a database and install it on a VirtualBox and start playing.

What benefits may this innovation give to those developers who are not yet working with the latest versions of Oracle? A chance to skip some quiz and to get a zero points instead of attempting to use a logic, to write a code, to read a documentation, to learn something new?

Are they have no instance of latest version to check an example or a thought? There is the public instance - apex.oracle.com. The SQL Commands interface is not so comfortable as Oracle SQL Developer or TOAD for Oracle, but Ctrl+C and Ctrl+V still work.

I don't see a purpose clearly to change the way a minimal version is showed by. May be, I need better glasses. :)

I agree that it is a very broad hint. But how do we expect this hint to be used? If it is 11g, then we can decide to not participate? Is that helping over playing and being wrong? Sure, I can get lower avg correct or have an error when I have a perfect record.

But is this how most people play? If I saw a version I knew nothing about, I'd react with "hmm, this will be interesting" and click play. It would clearly be a chance to learn something new.

The idea is simply to give developers with fewer experience in either 10g or 11g and who therefore require a bit more help from documentation or a DB to figure things out to already prepare ahead, like open relevant version of docu or connect to relevant DB version in order not to loose too much time while the quiz clock is ticking. PL/SQL Challenge is after all an open docu, open DB quiz after all.

PL/SQL Challenge is the challenge first of all and not the learning courses, isn't it? It is the competition of minds, of experience, of knowledge, of mastery. A player can use a documentation, he can test a code while answering a quiz, that is permitted by rules. But he pays for it, because time is points.

And you want to remove or at least decrease that "cost" of knowledge, do I understand you right and clear?

Except for opting not to participate in quizzes because of the minimum database version, I don’t see how knowing the target version in advance of the quiz will significantly affect the time penalty associated with responding to unfamiliar topics. One is certainly not going to become an 11g expert in one day. Because of the "wildcard" and "as correct as" policies for selecting qualifying participants for the quarterly championships, clues about quiz content might prompt some players to skip some quizzes in order to avoid penalties for wrong answers; however, I doubt that providing such information prior to selecting to take the quiz would have a significant effect on which players qualify for the quarterly championship.

My preference is not to have the version information available prior to taking the quiz.

hello suPPLer, it will just be a minor decrease in this "cost" of knowledge. Of course someone inexperienced with a questions topics due to inexperience with a certain DB version will never beat an experienced user, even with a DB and Docu ready for checking before the quiz starts. Its basically similar with exams in school where books are allowed and you kinda have a very limited knowledge about the subject range covered in the exam - usually something from the recent subjects covered in class. You will prepare your books accordingly, but never be able to be quicker as someone who knows the subject by heart without any need to look it up anywhere.

Berny, but to prepare for any quiz all you need is to:- open Oracle Database Online Documentation home pages in your browser. Three pages: 10gR2, 11gR1, 11gR2.- create a connection to an instance of Oracle DB 11gR2 - it has practically all the features of the previuos version, hasn't it?

Now you are prepared for battle. :) And if you need to reread an information about the quiz minimal DB version you had just to scroll up the page.

One potential benefit is that someone may have the chance to play at lunchtime at work (but where they only have access to an 10 instance) or at home where they may have the new 11g XE beta.Or perhaps they have an 11g instance at work but the 10g XE at home.

I don't see this 'distorting' the results in any way. However I think you are right to be cautious about what quiz information is presented prior to the start. If version, they why not Edition (which might not really be relevant for PL/SQL, but could come into play for SQL quizzes), then privileges...

If they can play then they have an access to Internet. So they can get the access to apex.oracle.com with the instance of Oracle Database 11g Enterprise Edition Release 11.2.0.2.0. Yes, some features that may be used in the quizes are not available to this service user. And some quizes are hard to check because of stateless sessions. But if you really want to check some already answered quiz - a bit of patience should help while your going to an instance of the appropriate version of DB.

As for me, even if the minimal version will be showed before quiz then it must still be showed on the quiz page.

Hello All,This thread just brings me back to that DBMS_XA quiz last month ...

Personally I don't have anything against publishing the Oracle version, though, as Gary correctly put it, then why not the Edition ...and then ... why not the topic itself ...

Looks like we tend to consider ourselves as perfectly mastering the complete knowledge of a previous version, be it 10g or even an older one, so that all that might influence our results is the database version only ...It's true that the DBMS_XA quiz was definitely meant for Oracle11g, but the real problem there was one of the "knowledge width or scope" rather than one of version dependency.I am not sure that, even if already "deeply" using 11gR2, one gets immediately familiar with those fascinating but less used and less popularized features.I dare say that if I only had known about that feature at the theoretical level, I could have been 100% correct, even if never having touched an 11g database.

So, regarding this discussion, I really cannot decide whether displaying a priori the database version is desirable or not,helpful or not, helpful maybe only for part of the players and not for others.

Has anyone thought about NOT displaying the version at all while taking the quiz, but only afterwards (the same as it was proposed on another blog regarding the quiz author's name) ?

Would be interesting to get some statistics about the distribution of Oracle versions used in quizzes. In http://www.plsqlchallenge.com/pls/apex/f?p=10000:51:371311693171854::NO::: however I couldn't find where this data would be stored. Any ideas on that? Currently I'd say at least 90% have "Minimum Oracle Version" = "Oracle Database 10g Release 2" anyway, so for those no extra information would be given right now hinting this info ahead of taking the quiz.

My feeling right now is to leave things as they are, not to show the version on the "Play Now" page. Those who have taken the time or have the experience to know 11g features should see the benefit of that in the reduced time.