I'm sure most of us agree that RubyQuiz
is awesome. Rubyquiz is great because the problems are tiny enough to do in a day or so, but hard enough to make you think a bit. Importantly, the problems cover a wide range of topics: they aren't all math problems (like Project Euler
, which is still fun if you like math but not fun if you don't), and they aren't all boring homework-style problems ("implement quicksort"). Many of the problems are fun and relevant and give you a little practical tool when you finish. (e.g. Quiz 68: Write a program that gives you the current temperature outside, given a mailing code or city name
). Some of them are more along the lines of logic puzzles or word games.
Rubyquiz is one of the things that helped and motivated me learn Ruby, personally. It lets you see multiple people's approaches to a single problem, which is very helpful to help you learn the idioms and conventions people in the community use, and explore the nooks and crannies of the language.
These things are what the Lisp community needs, to attract new blood and to get Lispers interacting and building community and writing code. We should do a Lispquiz. It looks like there was a failed attempt
at one in 2006 that never made it off the ground, and it appears it was only for Common Lisp, which in my opinion is an unnecessary limiting factor. For Lisp there's an added bonus of friendly competition if we throw this quiz open to all Lisps (not just CL). Which Lisp can give the shortest solution? Which Lisp has the best libraries and built-in support to help you solve the problem elegantly?
I've been wanting to do something like this myself for a long time but I just don't have the time to devote to it. But now that we have a nice message board here, there's a really lazy and easy way to do this that requires next to no effort by anyone.
1. Make a Lispquiz forum where only an admin or quizmaster can make new threads.
2. Make a new thread every Friday with a new quiz.
3. If anyone posts code or spoilers before a 48 hour no-spoiler deadline, beat them down, but let discussion happen before then.
4. People post their code right in the thread after 48 hours.
5. After a week, the quizmaster edits his first post (or make a new thread, or I don't know) giving a summary of the postings, commentary of one or more of the nicer or cleverer solutions, etc.
For even more added laziness, we can steal some of Rubyquiz's past problems. Its website says that borrowing the quiz ideas is fine (there's a Haskellquiz out there already). But it would also be nice to have a place for people to suggest new quizzes that show off some of Lisp's strengths.
Good idea? Bad idea? Good idea but this MB isn't the place for it?