Learning Ruby, the first milestone!
Well, I got through the book part of the Pickaxe book (I haven’t gone through the reference part). Yay for me! Overall, I must say that I’m impressed with the language and excited to start doing some work with it (although, that will have to wait until I get through my Rails book - the work I want to do is all web based). I also admit that I completely skipped the chapters on TK and Windows, I can not envision a world in which I would be concerned with either of those things. It’s comforting to know that if I should find myself working in either of those environments the book will be waiting.
Since my last checkpoint, I’ve come a long way. One thing I remember is the chapter on Unit Testing - I appreciate that this is so fundamental to the language and warrants a chapter in it’s key book.
Another thing that is strange to me is Gems. On the one hand I like that each Gem is nice and self-contained in it’s own directory. But like the differences between Sun’s package manager and RPM - this makes it slightly awkward to use. To some degree it pushes complexity onto the user from the application - the user is now responsible for making sure that all path information is correct and usable. In the RPM world files install in the places where they are globally looked for and there is a database to keep track of all those files, so the application is more involved installing an application is dead simple for the user.
As a long time CPAN user I find it awkward that I need to keep track of how things are installed - whether as a Gem or simply as a module. And that I’ll need to include these things in my own programs differently depending on this information. I’m more than sure that this is a terribly minor deal, but it still seems odd to me.
I think the really great part of this book is Chapter 22 where the book goes into great detail on the fundamental parts of the language. It’s incredibly valuable and useful in it’s brevity as a convenient lookup - a perfect language reference. It really does a great job of getting into very usefully low level detail and explaining it with simple but good examples. I wish more language books were like this.
Chapters 23 and 24 on Duck Typing and Classes were the next best parts of the book. Going into great detail on these aspects of the language. Very impressive.
Getting on my perl horse, I felt like it was on occasion a bit cavalier in talking down about the language’s perl roots. Periodically a quip about moving past this perlism or that, nothing big but it seemed like it was trying to hard too distance itself. In it’s tons of remaining perlisms the authors make no mention of how these ones are still ok and advocated (nor should it - it should just live with it’s perl roots and evolve however it needs to w/out needing to validate itself in the eyes of a perl fearing world). It goes all the way to the naming of the book if you ask me, taking a cue from Programming Perl and dividing the book into an overview and a reference section. No big deal and not even close to the worst, but annoying to me anyway.
I think the book did a good job on showing the languages, it fell short, I think in sometimes putting examples in using syntax/methods that they haven’t explained yet. Sometimes they would tell you this, but sometimes they wouldn’t. I could have used a chapter on performance aspects or at least a little more attention to this throughout the book. But these are all pretty minor complaints. The book is excellent and the language seems quite promising!







