About me
Introduction
My name is Chandrashekar (I guess you should've figured that part out already). I'm an Independent Free Software and Open Source Technologist with a flair for teaching. I was born in Bangalore (India), and I currently reside at the outskirts of Chennai (India). I travel to various places as a part of my freelancing job. I spend time at home with either with my pets, at my small electronics lab or in front my computer - installing and playing around with various open source software, toy operating systems and programming languages.
Professional background
I started my career on computers at the age of eighteen back in 1995 as a training faculty at IIHT, Jayanagar (Bangalore) with specialization on Computer hardware and networking. I worked for 2 years as a full time training faculty at IIHT - demystifying the tangible interior blocks of the PC (back when Intel 386 and 486 based machines were a hype in India). Apart from computer hardware, I used to also teach more about the MS-DOS platform and administering computer networks that run Novell Netware (3.x/4.x) at the institute.
While working at IIHT, I managed my free time by learning system programming for the MS-DOS platform using Turbo C and Turbo Assembler (and yes, MS-DOS Debug utility at times). I was also deeply inclined towards understanding the anatomy of various programs using DOS debugging tools (Borland's Turbo Debugger and MS-DOS Debug) - today, we term that as reverse engineering of binary programs. Initially, out of curiosity, I also investigated a couple of DOS virus samples and understood how they worked (Die-Hard 2, One Half, Raindrop, Joshi - to name a few of them) - thanks to infected machines/floppy disks that made their way to my training institute/home computer. I had a glimpse of Linux (and Minix) sometime during the mid '95 while attempting to create my own Operating System with help of my collegue. At a later stage, I was deeply impressed with IBM OS/2 Warp 3 and spent quite some time trying to master it.
Geared with enough skillsets and confidence in system programming/hacking on the MS-DOS platform, I joined an antivirus company called Proland Software Private Limited where I worked for a short duration as a system programmer. I spent my time there understanding, debugging and adding features to an existing program written in assembly language for their antivirus card (a hardware add-on card plugged onto the PC to detect Boot sector viruses on PCs). I also learnt about more virus samples and wrote detection/cure engine for a few virus variants.
After spending a lot of time with different virus samples, and a painful effort trying to debug and add features to their flagship antivirus product (which comprised of 35,000+ lines of code written on Turbo C, contributed by various programmers who joined and quit the company during the event), I began to gradually hate MS-DOS and the IBM PC architecture for their shoddy design and patch-work all over. I also gathered enough knowledge (by experience) on proper software engineering principles and the art of architecting scalable software framework.
I spent my time at home playing around with GNU/Linux (Slackware 2.0), Minix and FreeBSD. I started to learn the art of thinking/designing/programming on the UNIX environment. Within a couple of months, I began to feel programs written for the MS-DOS platforms as more repulsive, while UNIX programs (written on Linux/Minix/FreeBSD) smell like fresh air. After my first glimpse on Windows system programming (device drivers and system API for Windows '95 and Windows NT 3.51/4.0), I decided that this was not where my career should be heading. I quit the antivirus company, and waved a long good-bye to MS-DOS and MS Windows to embrace GNU/Linux and the whole new world of Free Software and Open Source!
From there, I moved on to work for various startup companies as a freelance consultant with specialization on GNU/Linux till 1999. I was involved in deploying various application servers (web, email, proxy, database, NFS, Samba) for these companies, and also conducted corporate training on Novell Netware and GNU/Linux for a couple of others. During this time, I also learnt the art of marketing, building contacts, co-ordinating with teams and managing small projects.
From 1999 to mid 2003, I worked full time for an e-learning product-based company called Liqwid Krystal (India) Pvt Ltd. (a startup company at that time) as their in-house open source solutions specialist. While working at Liqwid Krystal, I learnt more about company processes and also hardened my technical skillsets. Initially I wrote programs using C and Java and authored an e-learning module titled Introduction to C Programming. At a later stage, I moved onto developing a large-scale project completely using the Perl programming language. I built the backend server architecture and programmed the same using Perl for CodeSaw. (I hope it still runs on the same codebase!). I worked extensively on various Linux security and application sandbox frameworks like SELinux (which was not very familiar and still at an incubation stage at that point of time), RSBAC, Medusa/DS9, LIDS, Immunix, Bastille Linux, GRSecurity, Usermode Linux, FreeVSD (yes, I spelt that correctly! but it seems like the project is dead now) and a commercial product called Pitbull/LX by Argus Technologies. I also developed programs that use remote access technology like VNC, Remote X, HTTP and SSH Tunneling.
My current position
In order to expand my breadth into free software and open source solutions, I moved forward to startup on my own. Currently, I function as a freelance consultant and solutions technologist with focus on various Free Software and Open Source technologies (training, development and deployment). If am not into a job/project contract, I also conduct training sessions at home for professionals and academic freshers (mostly college students) on GNU/Linux system administration, shell scripting, programming on Perl, Python, PHP, Ruby, C, C++, system programming concepts and professional programming practices.
I'm also engaged in corporate training programs for various open source technologies relevant to my skillsets. To know more about the training sessions that I conduct, please visit the training section.
I have succesfully performed deployment, development, migration, IT security management and have provided concrete solutions using Free software and Open Source technology for various small and medium sized organizations (including software companies) in order to help them keep their IT infrastructure at low maintenance cost.
Person
As a person, I've had a reputation of being absent minded, self motivated, independent and dedicated. Till the recent past, I had managed to stay in a low profile professionally (I never had any active involvement on any user-groups, mailing lists or other technical forums before 2004 - though I used to lurk often on irc.openprojects.net, irc.freenode.net and irc.oftc.net). But I've been personally training people interested on GNU/Linux and programming concepts for a long time. I am also known to be a nocturnal PC-worm at home as my room lights go off mostly at around 4:00 am every night. Hobby electronics have been my favourite pastime since my school days. I also listen to music of various genre, though I'm more inclined towards heavy-metal and progressive rock music.
I also have the reputation of being a circus clown when it comes to sporting activities, for I make my audience laugh at my inabilities. I keep myself physically fit though, by long distance walking - which also helps me concentrate well and think better. Occasionally, I also try various meditation techniques (with no fruitful results as yet!) and involve myself into spiritual thinking.
I am also known for having a wide friend circle with varied life-style and interests. I lurk on the IRC (DALnet, Undernet, Freenode) sometimes to meet both techie and non-techie people with varied interests and age-group.