To Geek Or Not To Geek

April 13th, 2007

Today, I had an interesting discussion with some of my collegues about the life of a software engineer. My two cents:

1) the amount of fun one can have doing X is inversely proportional to how many people can do X, where X can be anything from watching TV to writing prototype.js.

2) the amount of money that one can demand and, more importantly, get is inversely proportional to how many people can do his/her job.

Well, the point that I was trying to make is that unless you are "Master of Your Domain" you can't have real fun or make real good money in a job.

To me, the second point is pretty obvious and the first one is an interesting way to look at things. The first one is actually a rebuttal to all those guys who think that geeks are missing out on funs in life.

This must be an exaggeration but the kind of "high" that Sam Stephenson would have got from writing prototype.js would need a lifetime supply of crack otherwise.

UNIX not my cup of tea

April 6th, 2007

I was initially trying to host this blog at Slicehost which offers bare bone Ubuntu VPS with no pre-installed software. Going by Geoffrey Grosenbach's article, I thought it might be a good time to finally learn Unix. But it was not to be...

The worst qualities of other VPS Hosting Providers mentioned in that article holds true for Slicehost too, i.e. "requires knowledge of Unix sysadmin". I guess its not much of a problem for someone used to development on UNIX, but for a guy like me who never had to work on UNIX in entire software development experience, it was a nightmare.

Things didn't go as smoothly as mentioned in their wiki. At every step, something failed and I had to provide some kind of hack to make it pass. Even the windows hack didn't help.

Without Windows Explorer, Mouse, Ctrl C, Ctrl V., I feel totally handicapped on UNIX and my productivity goes down drastically. The infinite vi, ESC+INSERT, ESC+wq! killed me. Even the basic operations like scrolling up the ssh console to see the top of error stack trace or copying a block of code from a web page to a file were beyond me.

So, I realized that I was not actually learning anything. Even if I had made it work somehow, something would have broken on future deployments. I decided that I should concentrate more on Rails coding rather than deployment.

Then I came across WebFaction Rails Hosting and their Control Panel Demo. I used their Custom Install Script for Mephisto and got this blog up & running in 10 minutes.

So what about UNIX hacking? Maybe in the next life!

I guess Java and the Dynamic Languages represent two sides of the Force - light side and the dark side. I had been with the light side (Java) for a long time till I watched these screencasts. I should have paid attention to the warning at the top. I couldn't help myself getting pulled by the dark side.

The use of prototype.js in Rails exposed me to the power of JavaScript and I became a complete fan after watching Advanced JavaScript Videos by Douglas Crockford.

Well, I still have to code in Java to earn my living. I am waiting for the day when the dark forces completely take over and bring Sexy Back to Enterprise Web Development.

Till then I guess there is going to be a light side (Java day job) and dark side (Ruby on Rails & JavaScript hacking at night) in my life too.