A grammar nerd learns to program

A week ago, I started a computer class to learn Ruby on Rails to build web applications. I’m not currently planning any kind of startup, or even to become a programmer. I did think it would be really helpful to learn programming from the ground up, to learn the theory as well as the practice.

When I was 11 or 12, we got a personal computer at home. This was in the early 1980s. I taught myself BASIC with some book that came with the computer. I don’t even remember what I built with it, but I remember I spent a whole lot of time learning it, and I’ve never used it since.

In the mid-1990s, I got the chance to learn HTML and then later, CSS. And at the time, that was enough to make me really geeky to most of my friends. In the past 10 years or so, I’ve hacked around in PHP, Perl and Java, taking existing websites and making them do what I needed them to do. I’ve had different people to guide me, but I’ve never had any sort of real training. Lots and lots of trial and error. I couldn’t write a one of those languages from scratch, but I can usually figure out how to bend them to my will.

Ruby and the Rails framework are known for their use in web 2.0 applications. And here, “web 2.0” means “trendy” and “slick-looking.” That’s the brand promise you’re buying with RoR. And while that’s nice, what I really loved was learning the secret code. Because that’s what programming is — it’s like a spy game you played when you were kids. This means that. I want you to do something, so I tell you something else that we agreed on ahead of time. It’s such a secret and so much fun. Honestly, anytime you can throw a metaphor or a representation at me, I’m a happy girl. Programming is all about metaphor and structure.

Well, instead of writing this blog post, I really ought to be working on my homework. But if you ever get the chance, I can already recommend Jeff Casimir and Jumpstart Lab. Jeff’s a great teacher and easy to work with. I can’t wait for my next class!