Exhausting week... with a hopeful end
It's been (and continues to be) an exhausting week at work. I've been away from home from 6:00 AM to around 11:00 PM everyday and been buried upto my my brow in production problems, UAT releases and the "Why the hell is this written like this". Yahoo, MSN File Transfer have taken a reluctant back seat.
Between all this I got a response (two actually) to my request to my employers to sponsor my trip to Bangalore for FOSS.in if I get a chance to talk on Ayttm. I had made the request two weeks ago and finally got an encouraging response. Turns out that we have an "Open Source Group" and their Head seemed to be all for it.
Now waiting for FOSS.in/2008 to open up registrations so that we can propose a Project Day for Ayttm.
Pointers are haard...
This might sound strange but we have only recently, at my insistence started using pointers in our C++ code at work. The reason cited was that pointers are difficult for the average dev to understand. My experience in watching people struggling with them in the past few weeks led me to realize why this is so.
People look for "rules" when they are using pointers, like "if this is the case then use &" and "if that is the case then use *" instead of actually understanding how it would work.
Yahoo File Transfer
There seem to be two ways to do file transfer in Yahoo, as I found out from wireshark today. One is by POSTing the entire stuff, the Yahoo File Transfer packet as well as the file to the file transfer server (Kopete does this) and the other by first sending a file transfer packet to the server and when the receiver accepts, send the file (Pidgin does this).
We do the former in Ayttm, but botch up the sending. As a result, our file sending is broken with both messengers whereas file receiving works with Kopete.
The Untold Gandhi...
Smriti Irani (Bahu of Saas bhi kabhi bahu...) is all set to launch a TV serial depicting the untold story of Gandhi. So we will finally get to see:
- A good looking, uncannily fashionable Gandhi
- Evil British officers with devillish looking smiles
- British officers' wives with garish make-up and long bindis
- Gandhi having a car accident and losing his memory... to become Nehru for a while?
- Gandhi's Ba outliving him by several generations out of public demand
Yup, it's an untold story alright...
So much to live for...
- A career, which depends as much on whims of others as on my skills…
* A marriage, in which my wife lives far away from me and I can see her only once a month…
* A fat paycheck, which vanishes the moment the next month arrives…
* Wonderful mornings, which are either gone by the time I wake up or arrive after I’ve reached the perennial morning of my workplace
* A Wonderful city, which is burning itself to cinders over who is Marathi, Bhaiyya, Hindu, Muslim….
* A great country, which is pulling itself into the mud, under the pretext of going back to its roots….
* Children, who will grow under the influence of the malls, cartoon network and video games, for whom freedom means pocket money and going to malls alone, instead of playing in the open spaces and maidans…
So much to live for…
Cleopatra
I was having a discussion with one of my colleagues at work about Egypt and I don’t recollect how but we got into this talk about Cleopatra.
He (my colleague) got into story telling mode and he told me that Cleopatra had married her younger brother to stay in power and she also killed her sister some time later in her life time so as to usurp the kingdom from her.
History and its weird tales !!!!!
The Question of Loyalty
I joined the company I currently work for almost two years ago. When I joined I heard everyone around me talk about ‘bearing up with’ the two years and then switching jobs for a more lucrative offer. Me? No. I wanted to stay, I believed in what the company spoke of as its philosophy. I wanted to stay, be part of the family.
Almost two years now and much has changed. I’m married. I have a family. I want to give them my best as well as save for my children when they arrive. I want something for myself as well -- a job that I will always want to excel in. A challenge that I would be raring to face everyday. There’s so much I want that I wonder if I’m being too demanding. I have so much as well right?
Four hours of traveling in a day, people packed like sardines in the train; every single day. A work schedule that demands more and more all the time, while I feel myself giving less and less. I can see people cheering with me, swearing at me, loving me, hating me, resenting me. It is great contribution if you work your ass off on weekends or for twenty hours a day. But at the same time it’s blasphemy if you ask for compensation for it. You should not be drinking too much coffee, not even when you’re trying to keep yourself awake through the night so that you can meet some of those challenging (read unrealistic) deadlines.
It’s a hard question, the question of loyalty. especially hard when you’re really not sure if you’re being loyal to the company who’s values you believe in, or to those individuals who seem to work overtime to circumvent them.
cat random_ramblings_and_frustrations > randomgod
… better than polluting my tech journal with them.
Watching the kettle compile... err... boil
I've enjoyed ripping code apart and fixing things myself for the past couple of years, in my day job as well as while hacking on ayttm/antidialer. But now there's a new challenge that has been facing me at work for the past few weeks.
For the past weeks I've had to monitor and mentor programmers. Which means that I have to watch 'trained' Computer Engineers struggle with basic programming -- like refactoring code (renaming a variable, for the uninitiated) or even reading and trying to understand the code. Someone with just under 2 years of experience in my project doesn't know how the programs he/she writes is built. Ask him/her what compiler is used and they'll tell you the name of the wrapping build script. We intentionally slow down our code so that the dealers can get the satisfaction of defeating a computer in computations -- we call these speed breakers as coding standards.
We use VSS for SCM... no, that's not the worst. We don't even know how to use it. We create a new folder (a branch for us CVSers) for every new revision and then embark on an hour long 'configuration' activity which includes creating configuration files and copying our code on to another server which ultimately acts as our repository. Heh, when one checks out and checks in code, it is termed as malpractice ;)
In short, we have our own little brain-dead SCM on top of another SCM. Why? Well that's because someone told our boss that VSS corrupts itself after some 2-3 GB of data. So to keep things trim, we delete old versions of code (so much for configuration management eh) to ensure that code doesn't become corrupt. So why don't we use CVS/SVN/Git instead? Well it's because the team of computer engineers would find it difficult to use, as opposed to an hour long, error prone, and absolutely mundane configuration activity. Give me 'cvs commit' anytime.
Also, I've been wondering what would best describe the code that I have been working on for the past few years at work. Here's a try at it:
The code is not really difficult, just a lot of Hell-Oh-World-like snippets written in an illegible 'programming standard' to make it difficult to read (someone called it code security once) and then built together into completely unrelated modules so that adding another component would mean ripping ones arm off.
I think I've digressed...