I came to software later in life than most. I wasn't writing Visual Basic when I was a teenager and I though I had a Dell and was hanging out on IRC during high school I didn't have a computer that I gave a damn about (a Macintosh) until my 20s. Though I dabbled in HTML it also wasn't until my mid 20s, 26 to be exact, that I decided to take it seriously.

When I finally did decide that I wanted to craft code it was inspired by the web and iOS/Android. Like most people I had a million ideas for apps/websites and was sick of telling people about them but not much more. I was doing design for Wordpress installs and started doing some lightweight html/css. Soon I picked up a little scripting with jQuery.

Around this time I was hanging out in the #whatwg and #html5 chatrooms on Freenode and I became so interested in HTML5 that I decided to join the W3C HTML working group (that's a story for another time).

In the spring of 2010 I went to work for a company called Zazengo based out of Santa Cruz, CA. It was a local startup working on ways to leverage the social graph for social good. For a first job out of college it was a pretty sweet set up. Small team in an office overlooking the beach working with cool technology.

Zazengo was a rails house and that is where I got my first exposure to the framework. Having not done much server side work I mostly coded on the client side during my time at Zazengo. This was rails 2.3 so we were already using bundler and haml/sass. At the time I thought rails was cool but I'll admit that I was just too new to development to see the full potential.

After leaving Zazengo I went to Trulia which is a PHP shop with a homebrew MVC. I didn't really touch ruby/rails for about a year and a half except for a minor personal project. However at Trulia I went from being a client side developer to a full stack engineer which gave me much more server side experience.

I realize that the haterz will come out in spades regarding rails but that's alright. While at Trulia I realized that you can amplify your output by working with a framework. With a thriving framework there are conferences, and blog posts, and mailing lists. There are other people out there dealing with your problems and you can leverage their knowledge and experience to accelerate your pace.

When you roll your own for every feature you build an insular culture with skills that don't easily transfer to another job. For example I learned a lot about MVC while working at Trulia but I can't take any of the 'Trulia MVC' domain specific knowledge and transfer it to a non Trulia project. I can only at a high level abstract away any ideas regarding MVCs which might be generic enough to transfer away.

So I'm gonna be working with a server side language--might as well be ruby--a language which I adore. And I'm gonna be working with a server side framework--might as well be rails--a framework which I highly respect.

So here it is, 2013. And I'm new to rails, again.

Thanks for reading! Follow me on Twitter and/or G+ for more.

See something wrong or got something to add/change? Fork this git repo and send me a pull request

If you particularly enjoy my work, I appreciate donations given with Gitcoin.co


22 January 2013