Skip to main content

Mike Sugarbaker

I've been working on the railroad

4 min read

I’ve taken up a new language, Ruby, for my programming efforts, along with a new web-app framework called Ruby on Rails. Why should you give a flying beaver crap? Here.

See, this whole programming thing was accidental for me. I expected to do this for a living while I really invested myself in something else. I wrote little programs in grade school and had a good time with it, always wished I had the power to make something that was really in the league of the software we bought in boxes, then kind of got absorbed into graphic design for a while. That led to HTML, then for some reason to JavaScript, and suddenly the urge was back. I wanted the power to make these web-application things. And now here I am, writing code in my free time.

I talked a bit about the whole power thing back when I eulogized HyperCard. Here’s what that’s about for me: when I undertake making something, it’s often pretty important to me that I can get the results out of it that I envision in my head when I start dreaming things up. Or to get in the ballpark, anyway. It’s probably a gifted-child thing. You know, you get used to being awesome at a certain set of things, and when you find that you aren’t, you get frustrated and quit almost immediately. That leads you to tend to stick with what you’re already good at, and if you’re not careful, you can find yourself eventually putting a lot of your time and energy – that is, your free time and energy – into something that, while fun, is maybe not as fun (or otherwise rewarding) as something else.

So, why Ruby and Ruby on Rails? Look at Rails’ front page. “With joy and less code.” I don’t remember exactly how I first stumbled across Rails, but I do know that as soon as I read those five words I wanted to believe. The same kinds of claims were made about Ruby itself: more results with less typing, a language closer to the pseudocode you write in your head. And in my limited experience so far, I’ve found those claims about Ruby to be true to some degree. For once in my computing career, I’ve found something that doesn’t tantalize me with the ability to do new things, thereby leading me to invest more of my time on more projects. Instead, I’ve found something that lets me do what I do now, but faster. And less time in front of a computer is a net gain, no question about it (although for the moment, I will likely still fill the gap with web surfing).

But is the joy there? Well, I’m still having fun. Learning Ruby is the kind (and degree) of challenge that I seem to like. Rails is not as well-documented as it could be; lots of people want to give you step-by-step examples of how to build stuff, but I haven’t seen anything that really teaches you the structure of this domain, that really tells you why things are laid out the way they are. To paraphrase Alton Brown, we’ve got plenty of sets of directions, but when you want to end up at your own endpoint, what you need is a map. I don’t see any maps of Rails out there yet. So there’s some frustration still.

But I will tell you this: Fictionsuit is go-big-or-go-home for me. If all it ever does is limp along with a few users, most of whom are my buddies, then I won’t pull the plug on it, but neither will I really continue much further with Cornucopt, or with free-time web development of any kind. When it comes to this project (yes, we will be describing the project in detail soon, likely on April 1 because the perversity of that seems apropos), I am motivated by success. Call me shallow. So if Fictionsuit doesn’t take off, and to some degree if it does, expect to hear less about coding on my blog(s), and more about how audio software is too damn expensive and complicated. And if it’s a hit, then it’ll be thanks in part to joy, and less code. One way or another, there is an exit door ahead.