The folks over at http://edgecase.com put together a great project for
people interested in Ruby to really get a grasp of the standard
library as well as introduce them to the idea of unit testing.  The
project is up on Github: http://github.com/edgecase/ruby_koans

The basic idea is you run Rake which then guides you through exercises
taking you throughout almost the entire standard library.  For
example, a problem might look like the following:

def test_double_quoted_strings_are_strings
  string = "Hello, World"
  assert_equal __, string.is_a?(String)
end

The __ represents the expected the result of the second argument on
assert_equal.  Once you fill in the correct answer, run rake, and it
will guide you to the next set of koans.  They exercise almost every
method for the major data types, blocks, exceptions, etc etc.

It's a really great project.

Could something like this come from the Clojure community?  I've just
started Stuart's Clojure PragProg book and I'm finding it to be a
great resource.  But I'm also finding myself struggling a bit on a few
items that might have a single example or a brief explanation and then
I'm off searching through docs and trying to come up with some
practical examples on my own that really drill down how the given form
should be used, or how recur works, or let, do, etc etc.

Would this be something worth while, especially for those joining the
community?  I discovered the Ruby Koans with a few years of Ruby under
my belt and found them to be a really refreshing set of exercises.
And now that I'm entering a new community, it's something I think I
would benefit from greatly.

Does anyone have any input on how best to accomplish this?  Or even
some starter koans?

On a side note, it's been really refreshing working with Clojure.  I
haven't yet begun implementing anything other than what I'm finding in
example material, but I'm getting there.  Having been doing OOP for
such a long time, I'm still slowly taking in the functional approach
and I'm seeing more and more benefits as the days go by.

Thanks for being such an great community!

-Matthew Williams
@mwilliams

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to