I’ve always been curious about Ruby, but never got around to learning it. I was inspired to actually dive in and start learning it recently, after listening to a Hanselminutes podcast where Scott Hanselman interviewed the creator of Ruby, Yukihiro Matsumoto, aka “Matz”. After messing around with SharePoint recently, I was in the mood to work on something as different as possible from that. Something where I could just install a nice little interpreter, and start working, without having to worry about spending a whole day setting up a VM first. Ruby sounded pretty good, on that front. The community seems to be pretty friendly, and there’s lot’s of good training material out there.
After looking around for a good place to start, I settled on The Book of Ruby. The publisher had a Pi Day sale this weekend, so I got the book/ebook combo for a good price. For a development environment, I’m using Komodo IDE. which I bought some time ago, for PHP work. It works OK for Ruby too, though I think there are probably better options. (But it’s good enough for now.) For Ruby itself, I installed it on my ThinkPad using the Ruby Installer for Windows, which was simple and straightforward. I also have Ruby installed on my Mac, apparently by default, since I don’t remember ever installing it myself. But I’ve decided to use the ThinkPad for my Ruby work for now, for a few reasons (bigger screen and keyboard, mostly).
I’m finding that The Book of Ruby is pretty well-written and organized, with good sample programs, at least so far, where the material is pretty basic. (I’m about 20% of the way through the book.) One slight annoyance though is that the sample code, as downloaded from the web site, is not formatted according to the usual Ruby standards. There are actual tab characters in the files rather than spaces, and the indentation isn’t always consistent. That might not seem like a big thing, but it bothers me a bit. So that set me off on a search to find a good code formatter for Ruby. Komodo doesn’t have one built in, but their web page on how to set up a new formatter links to a specific tool that looked like it work work well. Unfortunately, I found that it would always delete the last line of any code file I fed through it. This is probably due to some specific weirdness with the sample code from this book, and not a general problem, but regardless, I can’t really use that formatter. So that set me off on a search that led me to Rubocop, which is a static code analyzer that happens to also include a code formatter. That works great, though I haven’t tried to integrate it with Komodo yet.