- Using Ruby as a scripting language: In other words using it to automate repetitive tasks or help with testing. I’m intending to use Brian Marick‘s Everyday Scripting with Ruby to give me a leg up here.
- Learn how to use Watir (pronounced ‘Water’). Web application functional testing is definitely a weak spot in my armory and this looks like possibly filling that gap. Scott Hanselman raves about it, so there must be something there. I am tempted by Selenium too, but I have to focus somewhere…
- Use some Rails. I’d like to get some experience of what makes Rails advocates say it is da’bomb for web site development. For me, that means learning Ruby and getting my hands dirty, rather than just reading what the rails guys blog about it. Dave Verwer gave a great presentation at a previous DDD, but I want to experience it.
- Use Gardens Point Ruby.Net. I want to see where it is, and how far it has to go. The CLR is a multi-language platform after all.
I’ll let you know my progress as I go, but already some of the understanding I am getting from Ruby’s use of iterators and blocks is helping me comprehend what is possible with iterators and lamda expressions in C# 3.0. In that sense Andy and Dave are right that learning another language is helping me with the language I use everyday.
Out of interest, I looked at Boo as a choice as well. Boo looks really interesting, but I was drawn to Ruby by the support out there. having Andy and Dave write a book on your language sure helps. But I certainly have Boo tagged as a language to watch. Interestingly Boo is statically typed but has duck typing around interfaces (if it walks like a duck and talks like a duck…).
I also considered IronPython but it didn’t give me access to the projects out there in Ruby so it lost the fight.
Finally, for those of you who want to know what the Pragmatic Programmers are pitching now, it seems that Erlang is the subject of one of their latest works. Just shows the growth of interest in parallel programming. But that’s another post.