This past weekend I attended the We Are Microsoft Give Camp in Dallas with some friends. We live 6 hours away, but did it last year and decided to again this year. When we stopped for lunch Jay Smith brought up Ruby Koans, a project designed to teach Ruby by using TDD. (What is a Koan?) There was some good discussion on the topic which piqued my interest.

Since I do app / web development as well as SQL, I decided when I got home to download it and give it a shot. So far, I think it does a good job of teaching Ruby, with tests first. I think sometimes the answers are a little too apparent, but it essentially acts as a truly interactive tutorial.

All was not simple though. I did have some trouble with the initial. First, I chose to download Ruby 1.9.1 as there is nothing on the Koans site to say I should use the 1.8 series, several breaking changes were in the 1.9 series. Also, the test-unit gem is not included by default in the 1.9.x builds so I had to manually install it, not very difficult. I ran into another problem after I made it through several sections and resolved it by just commenting out that test; one of the breaking changes made it invalid.

Overall, I like the idea of learning the TDL. In our lunch discussion mentioned earlier, we had talked about migrating this concept to other languages. We're particular to C# and I wonder if I could do this for SQL as well.