Today is my daughter’s birthday. Which means it’s been thirteen years since I posted her birth announcement to the ruby-talk mailing list:
Ruby 2 (a.k.a Ruby Secunda Kathrine Pine) was released January 22, 2005 at 1:51:42 pm (PST) after a few hours of intense, last-minute debugging and deployment. We've been working on this project for just over 9 months and are quite pleased with the results! (Well, my wife really did most of the work, though I *did* play a seminal role in the initial project conception phase.)
(Yes, I thought I was terribly clever.)
It was a bit of a joke at the time, because the community had been talking about Ruby 2 for years already and knew it was still a couple of years out. (As it ended up, my dear daughter turned 8 before Ruby 2.0 arrived.)
We named her after this lovely, not-so-well-known language. Rails would come out before she turned one, after which point everyone would know about Ruby. But prior to 2005, it was not uncommon to have to explain what Ruby even was.
At that time, you couldn’t get a Ruby job, because there were no Ruby jobs. We’d hear rumors on occasion, but I never actually saw one posted. A Ruby job was a mythical beast: dreamt of, sought after… but never obtained. (Says the person now managing a team of Ruby programmers, the person who literally writes Ruby job postings and hires Rubyists for a living.)
Back then, there were no Ruby jobs. But that was fine, because we weren’t there for money.
We did it for love.
And it was love at first sight. I remember the January 2001 edition of Dr. Dobb’s magazine where Dave and Andy introduced so many of us to Ruby. I read that article probably 30 times. As a young programmer who knew only C and a bit of Java, I didn’t even know such things were possible. Ruby absolutely blew my mind.
Previously, programming languages were just a means to make a program. The act of programming was incidental to the goal of a finished program. But Ruby changed all of that for me. Programming could be a craft and a joy, and a language could be a new way of thinking.
My life-long love affair with programming languages started that day.
Ruby hasn’t been my only love, I must confess. But Ruby was my first. And Ruby is still the first language I reach for. Just last night, I was working on a program that emits SVG that I upload to my laser cutter. (I’m trying to create a wooden mesh that flexes like fabric.) Of course I wrote it in Ruby.
What do the next 25 years hold for Ruby? I have no idea. Predicting the future is a Hard Problem. Will we finally have floating cars and moon colonies? Who knows?
But I have no doubt that if need to create some 4D-SVG to upload to my holodeck, I’ll be writing it in Ruby.
Author of “Learn to Program” and engineering manager of the Ruby Agent team at New Relic.