Poll: Ruby Problems for Beginners and Prizes

by Satish Talim on September 13, 2009

Poll: Ruby Problems for Beginners and Prizes

Many RubyLearning participants wrote in asking RubyLearning to start a weekly post containing a problem to be solved using Ruby. A problem will be posted here every week / fortnight and anyone is free to offer their solution (the solution should be clear-cut, follow Ruby conventions and still be easy to understand) as a comment to the blog post. A small panel will evaluate the solutions received and decide the best amongst them all. The person with the best solution will be awarded a token prize which could be a Peepcode or a Pragmatic screencast or something equivalent. Maybe some sponsors could chip in with some prizes!


RubyLearning is open to this idea and will start the same provided there is a good response to this. There’s a single question poll below which please answer and what’s more important is to post your thoughts, suggestions etc. as comments to this blog post.

We do have the Ruby Quiz, a weekly programming challenge for Ruby programmers. What’s also needed is something for programmers starting off with Ruby. Maybe RubyLearning could provide this.

We look forward to your response(s) and thoughts, suggestions (thoughts on the nature of the Ruby problem to be asked, evaluation criteria etc.) as comments below.

Should we start a weekly Ruby programming challenge for beginners?

  • Yes (96%, 339 Votes)
  • No (4%, 14 Votes)

Total Voters: 353

Loading ... Loading ...

Update: Thank you for the over-whelming response to the poll. The poll is now closed. As the poll results suggest, RubyLearning is going ahead and starting off the “Ruby Programming Challenge For Newbies (RPCFN)” from Friday, 25th Sept. 2009. We are also getting a very positive response from many Ruby Gurus and Sponsors. Work on the RPCFN FAQ is underway. In the meantime, we still look forward to your response(s) and thoughts, suggestions (thoughts on the nature of the Ruby problem to be asked, evaluation criteria etc.) as comments below.

Technorati Tags: , , , , ,

Posted by Satish Talim

{ 28 comments… read them below or add one }

ashbb September 13, 2009 at 10:12 am

A simple question is who are “beginners”? ;-)


Satish Talim September 13, 2009 at 10:17 am

LOL. I still consider myself a Ruby beginner – one keeps learning a new facet of Ruby everyday!!


Michael Kohl September 13, 2009 at 3:39 pm

I’m quite undecided on this one. Wouldn’t it just be essentially the same as Ruby Quiz plus prizes?

http://rubyquiz.com/ (#1 – #156)
http://rubyquiz.strd6.com/ (#157 – current)


takaaki September 13, 2009 at 6:34 pm

I really wanna see easier one than the RubyQuiz Michael Kohl mentioned above. We need some kind of bridge between hardcore users and newbies.


Olle Jonsson September 13, 2009 at 6:49 pm

Thinking about this quiz/on-going competition made me think of testing, and maintenance. “How would you insert testing into this?”, or “How’d you make this testable?”

I assume it’s all meant to teach things, not be a programming golf course.


Olle Jonsson September 13, 2009 at 6:52 pm

@takaaki: A special aspect about RubyQuiz is its open-endedness. Solutions will sometimes be quite varied. This is a feature I’d want to keep, while still keeping it easy to submit an entry. Balancing these goals is difficult, of course.


jake_the_great September 13, 2009 at 10:08 pm

It would definitely be cool to have some ruby quizzes for beginners with prizes, but it would be difficult to qualify who is a beginner and who is not.


Ryan Carl September 14, 2009 at 3:10 am

I think this is interesting. I think the problem would have to be complex enough to allow a variety of answers so that one may be picked as best. A complex problem will also encourage beginners to read up on possible solutions and dig through the documentation promoting further learning. Also, if there is a tie between answers, then the one who posted first should be the winner. Also, users should only be able to post once, to make sure there answers are well thought out and tested. Furthermore, all answers posted should be hidden to allow users to come up with their own solutions, then reveal them after a winner is chosen. I hope this helps!


SoftMind Technology September 14, 2009 at 10:13 am

Lets make it clear…

Ruby is easy to learn and tough to Master it. I totally agree with @SatishTalim, where he consider himself a Ruby beginner. I still feel the same for myself.

Ruby has a never ending learning process.


Madhakumar September 14, 2009 at 11:09 am

Yes, I am happy to hear about this from the RubyLearing group. We definitely have to make this. “Lets learn and make others also learn.”


Michael Uplawski September 14, 2009 at 12:39 pm

Who is the jury? Hopefully this has not yet been decided on. PSE create a jury of three. As beginner-quizzes shall not produce solutions, that need broad discussion (others must be disqualified), such discussion should be suppressed completely. Two people’s opinion must be sufficient to determine a winner.

Now what about the others? Any contributor shall receive a somewhat comprehensive evaluation of the *winning* solution, not a critique of her/his own work.
My quick thoughts.


Satish Talim September 14, 2009 at 7:52 pm

I am happy to say that we are getting an excellent response from Ruby Gurus and sponsors. We are going for it. What we now need are more inputs on how to go about organizing this challenge.


Pagae Rajaram L. September 14, 2009 at 1:36 pm

Let’s learn and make others also learn.


Gautam Rege September 14, 2009 at 2:35 pm

I like the idea of posting a problem every week.

It could also be some Ruby code snippet which requires some answer or ‘identify the problem in the code’. Dr. Dobbs Journal also posts something like this in every journal for a C/C++ problem statement.

Very nice way of learning Ruby!


Chris Sederqvist September 14, 2009 at 4:21 pm

This is a brilliant idea. Not only will it nourish the crave for learning, but it will also serve as a intro to “real-life” problem solving, that more often than not contains “out of the blue” coding tasks, that needs to be fixed / solved, and requires activity from both the left and right sides of the brain, and stimulating the center of pleasure, as one gets more confident in Ruby (hopefully) when the quiz/task is solved.
Thumbs up!


Jaime Iniesta September 14, 2009 at 5:06 pm

I think it’s a cool idea and everyone of us should consider ourselves beginners. You can always learn different ways of doing the same things. :)


Ruprict September 14, 2009 at 5:42 pm

Great idea. Please do it.


Mary September 14, 2009 at 6:35 pm

I think it is a wonderful idea, and would help stimulate the learning process for all of us.


Anthony September 14, 2009 at 7:47 pm

I think a quiz for beginners is a fantastic idea! RubyQuiz tends to be a bit advanced for newbies to programming and Ruby. Solving programming problems, as proved by RubyQuiz is a fun and productive way to learn a language. I hope y’all put together a RubyLearning quiz.


Stephen September 14, 2009 at 9:30 pm

it’s a great idea.

When it comes to ensuring that expert Rubyists don’t cheat, you could simply ensure that the prize something that would only be of use to a beginner, for instance, one of the beginner level peepcode episodes or a pdf that’s aimed purely at beginners…. can’t imagine too many hard core Rubyists spending much of their time trying to win something that is of no use to them….

If you do find that the hard-core, expert-level Rubyists are entering and winning, then that would a clear sign that you need to have another difficulty level for the competition that caters for the better programmers…. so it’s all good really. Faith in people is the key.

Good luck, if you don’t do this idea, then I will! :)


Bill Froelich September 14, 2009 at 9:32 pm

I am looking forward to this as well. As for the prizes, perhaps rather than having to judge a “best” solution since that often depends on a lot of factors (sometime subjective), why not have a drawing from all working solutions for the prize for the week. If you win a week you then can’t win again for 30, 60, 90 days but can still participate in the learning. Kind of like the radio stations do.

Keeps the carrot out there as an incentive to submit (and learn) and also keeps it more fair by not having an expert win every week. Plus you don’t need to worry about categorizing anyone as a beginner versus a guru.


Satish Talim September 15, 2009 at 5:53 am

Bill, I definitely like this idea.


Jure Sršen September 18, 2009 at 8:18 pm

@Bill: I agree with you completely!

@Satish: Maybe it would be nice to have 3 levels if difficulty like:


Scott Werner September 15, 2009 at 2:50 am

I love this idea! I recently started learning Ruby and while I found Ruby quiz pretty early on, it was a little too extreme for me just starting out (though being able to read through solutions has been awesome.)

I have been using a spoj.pl for exercises to write in Ruby, but their interpreter is old and a lot of their very easy problems aren’t possible to solve in Ruby because they take too long.

What kind of problems would we be likely to see?


Willian Molinari September 17, 2009 at 6:56 am


Great! I really like this idea! :D
A ruby challenge every week will be fun! This will make us study a bit more, and other participants solutions will bring different experiences and knowledge.


Willian Molinari


lishali September 19, 2009 at 2:51 pm

I’m just a real beginner. I’m trying to find if someone can provide some Ruby puzzles which can surprise me, make me interested in programming for a long time. When I heard about this on Twitter, I just wanted to say: “YES! It’s really what I want!”
Thanks RubyLearning!


kalyan k k September 22, 2009 at 11:53 am

Quite interesting!. 1 question here, are the solutions visible to everyone after the respective challenge is closed?


Satish Talim September 22, 2009 at 5:15 pm

Yes. All the solutions will be visible after the respective challenge is closed. You can also comment on the individual solutions.


Leave a Comment

{ 15 trackbacks }

Previous post:

Next post: