A significant part of my life has thus far been revolving around computers. It all began when I was shown a computer at school. It had a floppy drive and they showed 'digger' game. To the 10 year old's heart, that was so attractive. The instructor was running his own 'training' company that wanted to introduce computer education to schools. Our school had big inhibitions because the instructor insisted on an “Air conditioner” for the PC room. They never made it. I asked the instructor who was demonstrating these if there are many other games. He said “You can create your own games by programming”. That was enough to get me hooked to computers.
Soon afterwards, the 9th standard mathematics book had a little bit of BASIC programming stuff. Having understood the very simple (albeit inaccurate) explanation of cousin on how to change gears on his Hindustan Contessa, I used to write meaningless programs that can drive cars. You know, have a variable called $SPEED, have three 'GOTO' routines to increment or decrement the gear, apply break and accelerate. I think that was where my real love for computers began. Probably because I was the only kid at home, I had all the time to write programs.
There's always a day in every kid's life when the kid gets taken to it's dad's workplace and that day stay's in memory for a long long time. To me, it was my life changing day. I was surprised to find, not one, but 7 computers in a narrow office in Mambalam. The computer room had an “A/C” and some well dressed people were speaking lots of jargons, some of which I could even recognize. “Program”, “Routine” and so on. The sad part of it was that the computers were always busy. But even a 1 hour availability of the computer was worth the day dreaming. Someone explained some term called Novell Netware and for a long time I never bothered to understand what that was. The disappointing thing that turned out of the conversation with that person was I found out there is no “BASIC” on any of the servers. Since then, whenever I managed to find a computer free, I kept futzing around Wordstar 7. The ability to do some creative ASCII painting using WS7 was the fun part. I wrote some quizzes where instructions would say “press down arrow 5 times to see answers”. I kept learning whatever I could - most things seeming only magical. I was already introduced to “laptops” and “multimedia”. I was a chief consultant, so to speak, for silly frame-by-frame animation and stuff on Powerpoint.
My transition from 10th to 11th was especially a big one. On the day of joining, it is vital to establish the pecking order clearly. Native Alpha males tend to mark their territories while outsiders focus on displaying their skills from a safe distance to woo the females. Really, its two different strategies. I knew I could get to the top of the pecking order, but I had to boost my credibility to begin with. So I said “I have a PC at home”, in response to a Native Alpha male named Mani Sridhar's claim that he has a PC. Of course, my dad had to have a Car too, even though he had only a Rajdoot 175. To begin with, my spoken english was pathetic. I grew up in a school where everything was taught in Tamil. To pass the audition, lies filled the voids.
Talks of programming, however, seemed pure fun with very negligible affects from the mating instincts. We used to quiz each other of ways to do now-seemingly simple things: like printing a pyramid or generating Fibonacci series and such. I distinctly remember the Q-BASIC program that Manivannan and I hacked up - “CHAT.BAS”. It allowed two people logged onto a novell netware fileshare to do “Instant Messaging” through a shared file. It was fun and a prized trophy to woo the females with display of programming skills. However, since Manisridhar had the habit of getting undeserved brownie points from the girls by claiming intellectual credit for the work that only Manivannan and I did, we tried ways to 'encrypt' the source code - ENCRYPT.BAS and DECRYPT.BAS. Nothing too complex, just a rot13 based algorithm, Just that we didn't know it was called rot13, though. DECRYPT.BAS was hidden using away using chattr.
From the time I remember, Manisridhar was always fascinated by networks. Somehow, it took Manivannan and myself a lot more 'growing up' to be fascinated by networks. We were still busy discussing programming. I also happened to discuss about 'fractals' and 'ray tracing' with some people in my JEE coaching classes. Infact, JEE coaching was a great excuse for me to bunk the classes and sit in my school's computer lab.
Around the same time, I was getting to hear about “Internet” both from the people at my dad's office as well as from Manisridhar. I faintly remember the name of the first Browsing center chains in Chennai but I clearly remember pooling up money with Manisridhar to go there and do something on the Internet. Mani sridhar already had his own email address by then! After that visit with Mani, I got one email address too. Though, I kept feeling disappointed that nobody seems to be emailing me. Whenever I found the opportunity to go online from my dad's office, I'd email Mani sridhar since he is the only person I knew to be on the Internet. Its a different thing that we kept meeting at school everyday :)
All along, knowing my craze for computers, dad never got me one though they always had enough computers at office of which he could have gotten me an old one anytime.
After I joined college, dad allowed me to bring an old computer from his office. There were several old broken computers and I had to pick 'one'. Since they were all broken, something or the other was faulty and I had to pick something on my own. My cousin allowed me to gather parts from other computers but I didn't know how. I saw the motherboard for the first time. We scrambled up a Pentium 60MHz PC (66MHz with “turbo”) and found a total of 8 MB of RAM and 540 MB hard drive. Was good enough to run Windows though most of the time I was happy with QBasic. I used to develop ASCII based windowing toolkits in QBasic and I tried sharing it with a community on the web.
By this time, my hormones were secreting healthily and I was also mad about Aishwarya Rai. I bought “HTML for dummies” and put up an “Airshwarya Rai Pictures Gallery” on Prohosting (since I later reused the Prohosting account for some demo use, the gallery was deleted when the hormones wore out). The fun part was in trying to manage the web pages for the gallery and not having to write new HTML files everytime I added a new aishwarya rai picture. So my solution was a floppy drive, QBASIC.EXE and MKGAL.BAS - a basic program that will generate HTMLS for each jpg placed in a specific folder.
I joined college and I bought Pointers in C by Yashwant P Kanetkar. A fun book overall, though some of the examples are buggy. Aravind from C.Sc. dept and I used to solve cross words and write some silly programs. But nothing serious turned out. Soon I heard about this OS called “Linux” whose source code is available. Panneer from college had a “CHIP” magazine Linux CD and I got introduced to Panneer. With panneer I kept doing things on my PC, starting with booting from Panneer's hard drive.
“Linux” took me in a different direction: My love for computers and software and having seen it's growing presence in the world I was already an “Open Source” advocate in my third year of college. I was further fascinated by rms' speech at MIT Chromepet and even wrote a huge http://osdir.com/ml/user-groups.linux.ilugc/2002-03/msg00207.html transcript of rms' speech at MIT Chromepet. I made Free Software awareness posters, helped found a group for taking Free Software to schools through the Demo@Schools project.
Reality dictated that it was time to earn a living and since then I've been using the skills I acquired while exploring the wonderful world of computers to now carve out a living. For over 7 years now, I've had quite a lot of fun getting paid for generally futzing with my favourite and longest held toy of all times - the computer.
Though I could probably be writing software for a Good Cause, I probably grew more cynical as I learnt further about humans, humanity and the world we live in. Right now from where I stand, I find it all insignificant. Computers allow us to efficiently make use of the surplus resources of the planet and satisfy human desires.
By systems theory, if I stopped contributing to this system, this system will die. But I see a natural death of computers coming up as our current industrial civilization see it's peak and reacts to manage with the inevitable decline of oil.
All said, as of today, my living is by writing software that manages dozens of software on thousands of Yahoo! servers. My favourite programming language is perl. Though I wish to change this to moving to a model of living where I satisfy my needs than wants.
I use a company provided macbookpro. GNU Screen, [http://www.gnu.org/software/emacs|GNU Emacs]], http://www.gnu.org/software/bash/|GNU Bash]], Firefox and perl are stuff I can't compute without. The OS doesn't really matter, though I'd never mind taking Quicksilver (software)'s help.