Why and How I’m Learning Ruby
By Annie Hedgpeth · June 25, 2016
Why and How I’m Learning Ruby

I’ve had my head in the books lately, and guess what I learned? I learned that I cannot learn Ruby and the fundamentals of programming in a week. I had high hopes of learning enough to be able to write a custom resource for InSpec, but, as you probably know, that was silly.

Last summer we had to drain our pool and refill it, and if you’ve ever done that, you’ll know that it takes much longer than you’d think. The scary thing, however, is that Texas soil is known for popping empty pools straight out of the ground. But if you just keep the hose in there (yes, a hose, we’re old school), then it eventually fills up. So that’s kind of my approach to learning Ruby:

  1. Create a crisis.
  2. Just keep plugging away.

The key to all of my learning is to create a crisis with a deadline (i.e. don’t want the pool to pop out). If I didn’t have a little bit of managed stress and pressure, then I would struggle with motivation (i.e. maybe wouldn’t want to use all that water).

I then find myself telling you and Mr. Hartmann that I’m going to write a blog post about writing a custom InSpec resource in Ruby, and there I have it—the proper amount of stress and motivation to learn Ruby.

I haven’t coded anything since high school computer science class where we had to print out our PASCAL code onto continuous feed paper (I can still hear that awful printer in my mind) and turn it in to be graded. Something tells me they don’t do it that way anymore. Needless to say, a lot has changed since then.

So going from nothing to Ruby is a little daunting, so I just started plugging away. I started with Learn Ruby The Hard Way, but quickly realized that I had to zoom out a bunch because I couldn’t see the big picture. So I dug into Computer Science Programming Basics in Ruby. Once I had the big picture and the vocabulary in my head, then I could go back to the exercises in LRTHW.

Unpacking

As I’ve told you, I’m preparing to rejoin the workforce soon since I’m about to be a pre-school empty nester (read: my youngest is going into kindergarten), and I want to have as many tools and skills at my disposal as possible. I’m seeing sort of a fuzzy picture of a career in security automation, perhaps on the development side of things. Honestly, I don’t know, but that’s sort of the direction that seems correct right now.

What I do know is that I’m very excited about learning Ruby and the opportunities that it affords me. My existence has to include creating things and solving problems—has to. It’s what makes me come alive and engages me more than anything. And it’s both a great surprise and joy to me that I can experience the same sort of satisfaction in coding that I can in creating a piece of furniture or art.