NexWerk Blog

Thoughts from the craft

Sunday at the Workshop

This Sunday I was honored to welcome an apprentice to our Workshop.

A couple of days ago I approached Marek as I knew that he is a very good photographer. I wanted him to snap a couple of pictures of the workshop so that we can tell our story in pictures (instead of just talking about it). But one other reason I approached Marek was because during the last months of seeing the approach he has to coding I wanted to sit together with him in a friendly and safe environment where we could try out a few ideas.

Marek’s background is very much in Java and J2EE; strong typed, compiled (objects must know your whole family to trust you ;) ). So I asked him if he wanted to pair with me after the photo session and learn a bit of Ruby in order to see another approach to development and have a sniff into another language.

For the exercise we used Edgecase’s ruby-koans. The way the ruby-koans build up is a very nice way of getting the grasp of a language for people not used to it.

This is how we got along with it:

First I cloned the ruby-coans sources form GitHub:

git clone git://github.com/edgecase/ruby_koans.git

After doing this we proceeded to create a branch where we would start working on the code:

git branch marek
git checkout marek

Once this was set up we started our little session (pomodoro on and off we go!). The nice thing about ruby-koans is that it’ll tell you what is going on and where to look at:


nexwerk-mini:ruby-koans ecomba$ rake
Thinking AboutAsserts
test_assert_truth has damaged your karma.

You have not yet reached enlightenment ...
is not true.

Please meditate on the following code:
./about_basics.rb:10:in `test_assert_truth'
path_to_enlightenment.rb:27

mountains are merely mountains


Opening up the about_basics.rb file we started Marek’s journey into Ruby.
The beauty of using the koans was that I had the chance of explaining step by step to him what the code means, why Ruby does things in this way, which are the quirks of the Arrays, Hashes, etc.

We spend about 3 hours learning in that way, having many discussions about advantages, disadvantages, object orientation in general. Exhausted after this session Marek and I departed with the promise of trying to keep on doing this apprenticeship program where he will learn first the basics and then more advanced stuff (in the form of a project).

This is our first learning Sunday at NexWerk with someone form the outside which has been real fun. I really thank Marek for having the time to approach me with a white belt and with his enthusiasm make this possible.

Share and Enjoy:
  • Print
  • Digg
  • del.icio.us
  • LinkedIn
  • MySpace
  • Tumblr
  • Twitter
Next post »

Leave a Reply

Get Adobe Flash playerPlugin by wpburn.com wordpress themes