Review: Ruby Wizardry: An Introduction to Programming for Kids
By EricMesa
- 2 minutes read - 363 wordsRuby Wizardry: An Introduction to Programming for Kids by Eric Weinstein
My rating: 5 of 5 stars
This year one of my goals was to learn a new programming language. Ruby is supposed to be pretty easy for beginners so I figured it’d probably end up being a snap for someone like me who’s been programming for a while. The only book I happened to already own was this kids’ book that I had bought for my kids. They haven’t yet wanted to use it (although they’ve gotten into Scratch)k but it worked fine for me. Indeed it was, and I couldn’t help making comparisons between Ruby and Python the whole time. The two languages are incredibly similar. Ruby clearly seems to be inspired by Perl, but is still a lot more readable as almost plain English. (Although some of the shortcut refactorings can be pretty hard to get if you’re not a Ruby person)
So what about the book? I’ve come away convinced that for nearly any kids’ programming book, a story format is a wonderful way to teach programming. It’s doesn’t feel like a textbook and it gives the student some useful (if fanciful) problems that can be solved by the code. Frankly, I wouldn’t mind an adult programming book with a story as a framing device. I wonder if there’s a way to do it without being tongue-in-cheek, though. The only other type of programming book that I really love for a first-timer is a project-based book. That shows you real code. It’s the difference between the new “conversational” approaches to learning human languages vs the phrase-book learning from when I was a kid (eg “¿Donde esta la biblioteca?” Great for all those times you go to another country to go to the library….)
If you have anyone young (or young at heart) in your life who is old enough to read and type on the computer, I think this is a GREAT first programming book. And, since my entire career has been programming and managing programmers, let me assure you that if you learn programming principles in any language - it’s transferable to any other.