Archive for the 'Anu' Category

The Lonely Me

Currently I am reading the graphics novel of Watchmen and I cannot help adulate Jon, or better known as Dr. Manhattan. An aspiring watchmaker, he was forced into nuclear physics by his father. He received his degree from Princeton and his life was great, until an unfortunate accident turned his life upside down.

It so happens that he get caught in an experiment wherein his whole body is disintegrated. But the brilliant young researcher is able to re-assemble his body particles. The whole process has given him the power to control particles. He can teleport anybody he wishes to, can explode or move objects without touching them. He has infact become the super man of his time, so much that his girl friend once remarks – They say you can do any thing Jon. They say you are like God now.

But Jon feels more and more detached with the world. He does not share the same emotional bond with people any more. He views them as objects and subjects of study. To him, the whole world has become an experiment, a question. His mind is always pre-occupied. The only person that makes him wish to remain at Earth is his new girl friend. And the day she leaves him, he leaves the Earth for Mars.

There is yet another character – Veidt. He is the most intelligent man on the Earth. And this makes him sad. He is not happy because he knows that nothing is right with the world. The burden weighs on him and makes him weary.

I suppose everyone must have felt this way some time or the other in his life. The more I introspect, the more I feel myself to be detached from this world. I do not care for most of the people. I only care about the best of my friends. I am always thinking about something, nothing useful mostly, but none the less, my mind is always preoccupied. I do not connect with people the same way as others do. I sometimes observe the social behavior of others to learn from them. I am sometimes like Dexter Morgan when it comes to society. The sense of justice and righteousness, the consequences of my actions, all weighing on my mind.

All this tires me. I too want to leave everything behind and perhaps go away to Mars. And yet sometimes there’s a voice in my head which say – I’m not a God, and certainly not the most intelligent man, but I’ll do what I can to set things right in this world. And as I have already mentioned before, it scares the hell out of me.

I am alone with my thoughts. I have no guidance for my actions. I have designated no person as the judge to my deeds. And I have confided in none with my deepest secrets. Perhaps I am afraid, just as Voldemorte was, of company, of association.

I do not know what I am writing anymore. Its yet another impulsive jotting down of thoughts. I shall end it here.

Why Ani .. why ?

Star wars is one of my favourite series of movies. I have watched the whole series a number of times. Yesterday, I was once again watching the 3rd movie, and the duel between Anakin and Obi Wan always gets my emotions running high. I love both the guys, and its painful to see them locked in an intense light saber duel.

I still remember my feelings when I watched the movie first time. After the 2nd movie, I fell in love with Anakin. I could see myself in him. His arrogance and the confidence, his hatred towards all the beings who have wronged him, his desire to be the best, to rise above any other and his focus towards his goal. These are the qualities I admired in him, and I wanted to be that guy. I could see my role model in Anakin Skywalker.

And then to watch the same man being tempted by power to do wrong deeds just broke my heart. And it did more than just that. It made me question myself – I wanted to be the same guy, would I have reacted in the same way? Could I have transformed from a charming Anakin to the most dreaded Vader? And after introspection, the realisation baffled me.

I realised that all the heroes I idolised are like him. I rate Tom Marvolo Riddle highly, and look at what became of him. In Dumbledore’s words – Tom was a charming head boy, and when he returned a few years later as Lord Voldemorte no one could recognise him as the same guy.

Part of my life has been a constant struggle to prevent myself from turning into one of these. I still aspire to be a Anakin Skywalker, or a Tom Marvolo Riddle, but I shall never transform into their latter selves.

And this is why everytime I watch the movie I feel the same pain again and again. I cannot get over it. Why Anakin … why did it have to be only Anakin to turn bad? Why could it not have been anyone else?

The So Called Coders

This could be a sensitive topic for a lot of people. Pardon my arrogance, and be advised before you read any further. What is written below is my opinion, and in a few matters, I never deviate from them. You might try to prove me wrong, you might produce great examples to contradict me, while I do not even try to defend myself, but nothing can make me change these opinions of mine.

So here I am. A fresh graduate student out of the hyped IIT’s starting a career at FICO. I look around myself, I look at the people I’ll be working with and I am disturbed. The realization of truth that I am surrounded by non-CS people, people who probably started coding only after graduating out of their universities, makes me miss my alma mater. But why ?

Well, IIT’s are definitely over hyped when it comes to imparting knowledge to students. However, the aspect of my campus life that I relished the most was the belonging to a geeky society of skilled coders. These are the people who wouldn’t care for the so called good programming practises, but none the less, would implement almost all of them, knowingly or un-knowingly. They would do so because of logical reasons, and not because someone instructed them to. They would hunt the internet to find interesting informations regarding the scripting languages. And these are the kind of things I do not expect from people not of coding background.

Coming back to the disturbing world of reality, I was shocked to know that people don’t even understand the significance of 80 characters per line thingy. They just do not understand the difference between tabs and spaces. Give them an Eclipse pre-configured and they’ll be happy coding their entire life using it, without ever caring how the code would look like if  a guy on a linux machine using vi and having 800×600 resolution chanced to look at the code.

My friend Naresh told me about the Shebang notation and the story thrilled me. It was an awesome idea not to add extension suffix when using scripting languages. The Shebang line contained  the information for any coder interested in reading the code. And now, when I tell my friends, the ones not involved in coding before getting into a job which requires coding, and all I get back is a bored stare suggesting dude-which-part-of-it-was-interesting !

I do not expect these people to feel the same excitement as I. For them, coding shall always be a way to earn money. For me, it is the satisfaction of producing a beautifully written code which gets me up every morning. For these people, writing a code is merely following fixed guidelines and structuring the code around them. I hate it if someone comes to me and says use addall() function instead of the add() because addall() is faster. No ! I do not want statistics. Come to me and tell me why addall() should be quicker. Lets discuss the internal implementation of addall() which causes it to become faster than the other. And by internal implementation, I mean I am prepared to get as deep as compiler or OS level implementations.

In IIT Kharagpur, the place I come from, we have this competition called the Bitwise. It amazed me to learn in my third year that if you use a general purpose function like strcmp() your code will almost certainly fail the time test. Upon discussions, I found out why. And now I do advise people to make custom pointer based copy and compare functions instead of using the all purpose ones. But will these people understand it ? Will they appreciate the complexity at such a simple level.

I never expect them to. To me, they shall always remain aliens in the wonderful world of coding. I shall try my best to make them interested in the non-programming aspects of coding, but will I succeed ? I doubt that.

I conclude with another example of a friend who was using Eclipse for the first time. She copied a piece of code from some site. Then she found out the refactoring bliss of eclipse and got her code reformatted. But instead of being happy, she was disappointed at the result. What was bothering her was that a function had been broken into 3 lines, that the complete for() statement was written across 2 lines and that the comments were also put in multiple lines, despite the fact that 1/4th of her screen on the extreme right was empty. She sat down and brought everything to single lines. The ugly code spanning screens pleased her. She was happy in scrolling righ to left and then back again, but would not consent to the 80 characters guideline.

These people will never understand why the confirmation to programming practises is required. They will never appreciate the simplicity of the logic behind each of the rules that they are told to follow when writing a program.

My friends refuse to use putty or an equivalent ssh shell. They would rather go through the pains of installing cygwin and some IDE within it. vi disgusts them !

My friends, if you are one of the others, you can never be one of us. You can never become a coder. The love for code comes from within a person. It cannot be produced, not at all by making someone code for 10 hours a day.

So tomorrow if you walk upto me and insist that everyone involved in software product development is a coder, then please, you could not be more wrong. The distinguishing quality is that a coder cares not for how a particular thing is done, but why is it done the way it is.

I miss IIT Kharagpur.

Experience Of A Rookie Chef

I have never claimed to like or be good at cooking. I have always shyed away from the kitchen. It is the one room which scares me the most. And so it should. I have always liked things which can be described definitely. When you devise an algorithm, you insist that a particular event occurs after a certain event in this particular order.

But when it comes to cooking, you get instructions like – cook the rice for 5-7 minutes. Hang on! Which is right? Do I wait for 5 or 7 minutes, or do I average it out and turn off the burner after 6 minutes? And even the 6 minutes is subjective. You do not have to look at the watch to keep track of the time. Apparently, you sort of develop and intuition for cooking. Oh! these things always confuse me. And I always end up stuck in no-mans-land trying to figure out the best rescue strategy.

The other day I wanted to prepare dal. Now the receipe said that I had to leave the pressure cooker on full flame till it whistled and then sim down for roughly some 5 minutes. Fine! I waited for the first whistle, and then simmed down the flame. But the whistling did not stop and the receipe does not say anything about more whistling! Confused and not knowing what to do, I turned off the flame and opened the pressure only to find uncooked dal. Huh, so much for panicking. So I put the pressure back again on full flame waiting for the first whistle. I assumed that the whole procedure needed to started from start, which as I learnt later was wrong. At the end when I opened the cooker, I found my dal to be as dry as rice.

Ab main chala dal chokne. I do not know what it is called in english, so I’ll write the thing in hindi. Mom ne kaha tha ki pehle kalchul ko gas par rakhte hain, taaki paani sooch jaaye. Once again, no definite time defined. I waited a few seconds. Fir ghee daalo aur thoda der gas par garam hone do, was the next instruction to be followed. I did only to find oil sprinkle here and there. Reason: I hadn’t waited long enough for all the water to boil away.

Ab ghee karam hona tha thodi der tak. Once again no time period defined. I waited a minute and carried out the next instruction which was – ghee mein jeera daalo. And the minute I do so, the whole thing catches fire. Now I had seen my mom do this but it never caught fire ! Help Help!! I turned off the burner and then started to blow off the fire. After some efforts it subsided. I called up my mom to find that I shouldn’t have waited so long.

Ok! So I do the whole procedure again and was successful. It was now time to immerse the kalchul into dal. And the minute I do that, the whole thing sprinkled out with a hissing noise. Curse it! The kitchen was in a mess. But I neither had the patience nor the tools to clean it. So I just ignored the situation.

Yesterday, I asked the receipe of making kheer. Accordingly I bought sugar and milk from a shop nearby. Happy that I was about to eat kheer in half an hour, I set about cooking it. I took the packet of milk and started to cut it open, while also singing a I-Must-Not-Spill-The-Milk song. You must have heard the story of a man who was cutting the branch of tree he was sitting on? Well the same thing happened with me. The moment my scissor cut open the packet, I realised that I was holing the upper part which I was cutting off, and the bottom part which had the milk was unsupported hanging in the air.

Splash! I spent the next 20 minutes mopping the kitchen.

Why? Why does everything happen only to me? What the hell ever happened to beginners luck? I must read The Alchemist again.

By the way, if you are a person who likes the kitchen clean and tidy, beware before entering my kitchen.

The Difficult Choices

Things were so simple in the past when my father used to make all my decisions. Well, most of the time I disagreed with him, but still, atleast I wasn’t burdened with distinguishing one choice over the other. Back then, I was just a robot doing what my father wanted of me.

I remember, we were studying NP problems. Our professor introduced a function – choose(), which would choose a solution, and all we next had to do was to verify if the chosen solution is correct or not in polynomial time. Life would have so much easier if we had such a choose() method. Alas !

The joy of growing up and becoming independent comes with the pain of having to choose yourself. The responsibility of weighing one choice over the other now rests on you yourself. And my years of experience, however less might it be, has taught me that more motivated and clear your goal is, easier the task of choosing becomes.

Normally I am quite motivated. I know my goals. I have a very-long-term expectations and the path is vaguely defined. I am proud to say that usually my brain makes all the decisions, curbing whatever desires I might have had. I try to suppress my feelings and always think twice before making a decision. I try my best not to get carried away by the petty emotional attachments that I might have.

Yet, I am but a human. And just like any one else, I too am biased. At times it becomes too difficult to think clearly. The choice of path does not seem as intuitive. My actions tend to maximise local happiness, rather than the global happiness. Suddenly the control of my mind seems to waver a little, giving in to the temptations.

At these times I can actually hear my brain speaking out to myself. The brain tries to remind me how useless the temptation is, and how important the other goals are. But at these times it becomes a challenge to make the right call. What do I want ?

I have tried convincing myself that I have worked hard to be who I am today, and therefore, do deserve to enjoy the moment. And yet, this very thought reminds me that the work is not yet done. Its a long life out there, and a lot yet to be achieved. I remind myself that I am not the person I aspire to be, atleast not yet. The temptations, the fleeting happiness, the greedy solutions always tend to throw me off the track.

But come what may, I always manage to find my way back. And I think this is more significant. Though distracted, I fight hard to get back into the battle.

A similar dilemma greets me now. I have a good job with a decent salary in the city of Bangalore. An awesome team, some great new friends and a few of my best friends from college – I have everything I wanted from my first job. There is indeed a tendency for me to get carried away, to become complacent, to lose my focus.

Which is why I have written this post. This shall serve as a reminder to me that the life has just begun, that there are a lot of things to achieve. Now shall be the true test of my character, of my mental strength. I need to curb my complacency tendencies and set myself challenging targets. Yes, I shall talk to Navin and make sure that the half-yearly goals we set for me are tough to achieve.

Despite what I have written, I am confident that my mind shall win over heart, that I shall continue to be as focussed as I was just before the JEE. And whenever I shall feel my faith waiver, I shall read this post to remind myself who I truly am and what my goals are.

Two Awesome Weeks At Bangalore

Things just keep getting better by day. Living alone by oneself is not easy, but the thought of your friends joining you in another 10 days keeps you going. Apart from that, life’s good at B’lore.

My first job at Fair Isaac has almost everything I ever desired. I have my own desk, with reasonable amount of privacy. I have an awesome 4gb laptop. I am part of a great group of people, who like to party and travel places together. And the team is led by a manager who himself doesn’t care much about formalities and is completely friendly with us.

Our group of campus recruits has lots of good people. I have made some nice friends. And though shortly we shall be moving away to our respective teams, I hope to keep in touch with them and spend more time together. Luckily, a few of them are on the ground floor, the same as me.

As I mentioned earlier, my friends from Kharagpur shall be joining me pretty soon. Once they are here, it will be party time and lots of fun. Also Chuski will be coming for enrollment into the management course at IIMB. Yay .. a treat’s due :D .

The best thing however is that I have not yet managed to get the gas conneciton transferred. :D … So I am having to dine out everytime. Lucky me. Cooking alone would just be devastating. I have done enough cooking in Switzerland last summer to last a lifetime.

The only downside to the whole life at work is that using windows is mandatory. :( . I am already missing ubuntu. I am missing amarok. A new version of it has been released and I cannot test it.

Also, it was boring transitioning to Java. I am still in love with the complexity of C. Moving on is turning out to be difficult.

Sadly, now I have to go and get started on my Java project. Enough procastinating already.

Yet Another Transition

After 4 happy years of coding in compiled languages of C and C++, the time has come to make a transition to the interpreted language of Java. The change is more of an imposed one than desired. And I am not getting drawn into the subject of compilers vs. interpretors, mainly because of my lack of experience with the latter category.

Starting the next week, I shall join the FICO, Bangalore. I am quite excited about the oppurtunity as I have received excellant inputs from my seniors and their friends regarding the kind of work that people do over there. Also I need a change from an university-like environment.

Now at Fair Isaac, apparently, people prefer Java over C++. Navin sir said that there are a group of people using C++, but the bulk of libraries and code is in Java. So it will be easier if I switch over to Java than C++, though it shouldn’t be a lot tougher sticking with it. And after giving it a thought, I have decided to learn Java. Learning a new programming language is all about going through its libraries and adapting them. It should be an easy enough task. Also since I have a basic understanding of objects, classes, inheritance and theior abstract nature, it should be easy enough.

The only thing I shall miss are the pointers. Sadly Java does not allow pointer access to programmers like the C does. I do not know the reason behind this restriction, but it sure makes me sad. Of late, most of my variables were being referenced by address and I was really getting into the habbit of using pointers. They make complicated things so easy to manage.

And then another thing is the usage of WIndows. I would really prefer Ubuntu for coding. I do not thing there should be any problem with using ubuntu. I just do not want to START to TURN OFF windows :P .

My Plans/Wishlist After Moving To Bangalore

Well, everybody has plans regarding what they would want to do with their first salary. I have mine too. Here I list them in no particular order. And most probably, I sill do most of the things. So here’s my wishlist -

  • I crave for a Dell XPS. And the machine needs to be powerful enough to render all of the eye-candy effects of compiz. It goes without saying that I shall be using ubuntu as the operating system. No windows for me. I think a 4 Gb RAM should do. It would help if I could get a graphics card. Hmm .. lets see.
  • I want a domain of my own. Not like this one. Here I am required to show ads from the people whose server I use. I want a reliable ad-free domain and hosting. Also this one’s a bit slow and always has some sort of problems. The latest being a problem with WP Super Cache plugin.
  • I want to become a subscriber of last.fm. And this is something I will definitely do as it is the cheapest thing. A subscription costs only some Rs. 500. The positive of becoming a subscriber are lots. Mostly you can make many playlists. Also you can listen to your loved songs. And as it is, I am starting to like the last.fm radio. I dont care for 500. In light of recent events, this has become a necessity rather than luxury.
  • I want an Ipod touch. Nothing else will do. Just imagine … Sony Ericcson Xperia X1 + Ipod Touch … awesome :D :) .

Can’t think of more now. Shall keep adding here :) .

Lull After The Storm

Yabba Dabba doo !!! My Grand Viva is finally over. And I cannot express my happiness over it in any definite words. This is the one time professors get to mock at their students, though I must add a few are very helpful, and try their best to point the students to the right answers. Although I did not do as well as I was hoping to, but no regrets over there. As it is, I have never cared for my CG. Marks are for the lesser mortals :D .

So now with the grand viva out of the way, it is time to resume working on my BTP. But not without a well deserved break for the weekend. Yeah, a well deserved one, really. Only the BTP presentation is between me and my graduation :D .

The last 40 days at Kharagpur ! I am glad to be leaving this place. Not because I got bored of it, but because I want to start a new chapter of my life – a different story, a different person, a different place. I am eager to move into Bangalore, and start afresh. There was a lot I could have done at Kharagpur itself, but my introversion prevented that. It shall not any more. I am determined to present a new picture of myself, a changed self. I am deviating from the topic.

Well, to sum up, now with the grand viva over, things have really calmed down. There is not much to do, except BTP and chilling out with friends. Its time to make the last few days at Kharagpur memorable. There shall come a day when I’ll feel nostalgic, and wish these days – the best of my life – never went away, but it is not that day yet. Today is the time for party.

To Bug Is Human, To Debug Divine

Debugging is a pretty tiring job. More so if you do not exactly know where you have erred. I spent half the day today debugging my code. Hopefully, it does not have any more bugs.

A day earlier I thought I was done with my BTP coding. I tested the code for small inputs, and the results were as expected. Happy with my work, I wrote a script to let it run a few times on inputs generated following the poisson distribution. When I woke up the next day I was shocked to see the results. They were nothing like what I had imagined. The results had deviated highly from what was expected by theory. Damn! A day’s hard work gone waste.

I sat down to remove any bugs. To elp in the debugging process, I had generated 4 log files – log.xml, run.data, plot.data, miss.data. Poring over these log files and simultaneously running the gdb was a strenous work. I had no idea where the errors were being reported. The aberration becomes observable only after my code has executed for some 10,000 times. It was simply impossible to dry run the code for so long and zero-in on the bug.

I tried a smaller random input, hoping to catch the bug. Luckily enough, this data set produced the error. The deviation was not too obvious, but a hard look at the log files, and I could narrow down the error to a few functions in my code. However, to find the bug, I had to eventually dry run the code for this smaller data set. This took another hour.

All’s well that ends well. I have rectified the error. Basically, I was forgetting to reinitialize an important parameter on the occurance of a particular event. With that done I am hoping to get good results when I wake up tomorrow morning. A good night’s rest is what I deserve. *A pat on my back*. :)




Theme Tweaker by Unreal