Tue

Oct 31
2006

Tim O'Reilly

Tim O'Reilly

O'Reilly Labs Code Quiz

In the spirt of Google Image Labeler, Ryan Grimm has added a code quiz to the O'Reilly Labs site. The quiz selects a code example from any one of the books in our complete Xquery database of all our content, and offers you a choice of four books that the code might be from, only one of which uses the language in question. For bonus points, you explicitly identify the language. Like the Google Image Labeler, this game does actually gather useful metadata for us, but Ryan's real interest is in finding a game that helps "teach us what we don't know." He writes:

After a game is finished I generate a few tag clouds similar to the ones in the content statistics based off of how a user answered the questions. The hope is that these clouds can represent what a person knows, what they thought they knew, and what they knew they didn't know. If we can turn this hope into a reality it might help show users areas they can improve on.

I found the game curiously addictive. It seems obvious, but after a few tries, you realize what an engaging way it is to explore code snippets doing interesting things. (Also see the Content Stats and Code Search tools on Labs.)

We're interested in opening up our content database to other developers who might have cool ideas about what applications they could build with access to all our content. If you have ideas, let me know, and we'll see what we can do about giving you the keys to the family car. We don't yet have a formal application process, but will develop one out of our back-and-forth with the early birds.


tags:   | comments: 5   | Sphere It
submit:

 
Previous  |  Next

0 TrackBacks

TrackBack URL for this entry: http://blogs.oreilly.com/cgi-bin/mt/mt-t.cgi/5015

Comments: 5

  Keith [10.31.06 10:21 AM]

How about a choice of # of questions? 50 seems like a lot for just messing around at work.

  Ryan Grimm [10.31.06 12:20 PM]

Keith -- I considered adding the ability to select the length of a quiz but that raises a few questions about how these games should be treated in the "Top Scores" section of the site. Feel free to add this idea to the Labs Wiki and we can discuss a solution.



In the mean time, if 50 questions is too many for one sitting you can answer a few questions and resume playing the same game at a later date.

  Chris R [11.01.06 03:47 AM]

I started it, but also found 50 questions too much.

Some nitpicks: I had one Java sample come up and 3 Java books suggested out of 4. Have Java and J2EE been considered different languages?

Also, I had PL/SQL come up a few times. I'm good at recognising this (I was a reviewer for an O'Reilly PL/SQL book!) but PL/SQL doesn't appear in the droplist. Was I supposed to choose SQL?

  Tim O'Reilly [11.01.06 07:29 AM]

Chris R -- Sorry, but I mis-spoke. It really isn't just limited to language. If the domain of the book is clearly distinct and recognizable, there may well be more than one book of the same language. But you might be expected to recognize a perl TK application (thanks Nick!) vs. a straight bit of perl, or a Struts application vs. just a block of Java.

As to PL/SQL, don't know the answer.

  Danny Dawson [11.01.06 11:00 AM]

This is an absolutely genious way of engaging the user in an effort to collect metadata. I am especially impressed and inspired by the way that metadata collection is only requested from those users who have already demonstrated knowledge of the topic at hand.

In my niche industry, I have to deal with maintaining a database of tens of thousands of products, and one of our many challenges has always been finding a way to obtain accurate, usable metadata about our products. We've tried soliciting metadata directly from the users, but we've always ended up with low-quality results. We've tried hiring experts in our field, but the cost and time required becomes prohibitive. This is an excellent way to quickly identify the topic-knowledgeable and encourage them to submit accurate data.

Nod.

Post A Comment:

 (please be patient, comments may take awhile to post)






Type the characters you see in the picture above.