jump to navigation

IT is not happening… June 12, 2012

Posted by Akash in Life as it goes.
add a comment

Yes, you read it correctly. IT is not happening and by “IT” I mean Information Technology. But perhaps I need to explain what I mean by “happening”. Well, I mean it’s not working or it’s not functioning as it should work or function. Still confused? Ok ‘lemme’ elaborate.

In the last 30 years, technological advancement has been tremendous. In fact, ‘tremendous’ is an understatement. And when it comes to Information technology, reality has probably exceeded science fiction. I mean who else thought back in 1980s that machine learning algorithm will be driving a real car in the streets in the next 30 years? And a handheld mobile device under 400g will receive and transmit lossless radio signals at 900Mhz and capture photos at 12 Mega Pixels (yes, MP stands for mega pixels in case you don’t know) and capture and record 1080 pixel high definition video at 30 frames per sec with continuous auto focus mode and sync them in cloud and share them in social networks? I suppose the most hyper-imaginative-science-fiction-writer-on-LSD-overdose wouldn’t have imagined that back in 1980s when transistors were still being created in centimeter long tin containers.

But the truth is – we did this. We did not do this to remind the skeptics that truth is stranger than fiction is stranger than science fiction. But we did this because we were destined to do this. And there are many other things that we did. Isaac Asimov would have dubbed them “holy shit”. But as it goes, now I get an SMS next second I pay a restaurant bill using my credit card and book my train tickets to travel from Jalpaiguri, a small town in India to Kolkata while sitting in my Singapore office and I play poker with a Brazilian resident while resting in Japamala sea resorts amidst South China Sea.

All these are possible because of advancement in Information Technology. But I still say, “IT” is not happening.

Let’s look back to good old days of my college years when I, like many others, was fascinated with computers. At that time, all we knew were some magnificent stories about computers. Stories as simple as, “computers can do anything”, as fascinating as “Computer can send mails electronically across the globe” and as challenging as “computers can do calculations that human can’t” (Off course I am exaggerating but that’s not too wrong if you consider complex integrals that can only be solved numerically). All these stories painted a God like picture of computer in my mind and I wondered about the brilliance of people who were otherwise known as “computer engineers”. And then came the enlightened moment of my life when I got the chance to sit in front of such a machine.

Now from this point on, different people have different stories to share. For some of us, it’s a story of shattered dreams as we found out that computers can’t do anything of its own and the hard reality is – it’s we, human, who tell computers what to do in exact painstaking way. For obvious reasons, it was embarrassing for some of us to find out that computers are actually the stupidest thing in the world and you need to perform some hugely complicated, painful and grueling tasks (formally known as “programming”) in order to make them work for you.

Fortunately for me, things were much easier to accept. This is because even before my hand touched such a real computer, I was introduced to computer programming – off course theoretically – using only paper and pen. I wrote my first “If Then Else” in paper days before I got the opportunity to type it in the keyboard. And I debugged my first “for loop” in mind than through a debugger. I still remember moving my head in clockwise fashion and incrementing the loop counter in my memory while reading through the written lines of programming code.

While I never loved computer for its “intelligence”, I never hated it for its “stupidity” – for it allowed me to program it in my terms. The more I realized the power of programming, the more fascinated I became with it. I was playing “god” then. I learnt C programming language and tried and solved all the problems that were known to me at that time – starting from permutation of letters in a word to creating graphical computer games. Off course all these things were done in much sub-optimal nasty ways as I was yet to get introduced to the subjects such as algorithm design, data structures etc. But I was completely onto it.

And then “Internet” happened to me!

I don’t know how many of you still remember the screeching annoying sound of a 56kbps modem when it tried to connect to the exchange via telephone line. After about 4/5 minutes of wait it used to show a terminal asking you to logon. And that terminal changed my life – as I discovered my first buffer overflow attack through that terminal. In fact, it was never really an attack, as I was never able to compromise the system (I didn’t even know what a stack buffer meant at that time); however, I did crash the system many times by creating my own fuzzers (again, without realizing that those are called fuzzers). I will come to this point later but for the time being let’s continue our discussion on Internet.

Internet did 2 things to me. It deprived me from night’s sleep and introduced me to some bizarre and wacky subjects that I never knew before. Sex with horse, Internet Relay Chats (for those who don’t know, IRC is not same as Yahoo’s chat room), 2600 etc. are some of the craziest things that I came to know only because of Internet. Admittedly Internet was costly in those earlier days. And coming from a middle-class family, it was not easy for me to stay connected as long as I wanted. I remember it used to cost Rs. 26 to surf Internet for an hour then. Since I wanted to stay connected at least during the entire day, I did a simple math – I needed to find a job that will allow me to spend 26 X 12 X 30 = Rs. 9360 on telephone bill every month!

Anyway, once in Internet, I soon discovered that my little computer is not the only place for me to program. It’s just a doorway to uncountable number of other computers out there for me to reach up to. I started learning things automatically – HTML, DHTML, CGI (I know some people are chuckling at this point, good old days :)), setting up IIS server (remember it was there in Windows 98? You had to install using Add-Remove Windows Component?) and then I started learning C++. In the beginning C++ appeared to me as boring odd stuffs. I just could not understand why someone would want to do simple things in such complex ways.

About the same time, I was trying to create a first-person-shooter (FPS) type computer game using C. But despite of my ardent, sincere effort, I was failing miserably. I had already written around 10k lines of code and my program was not doing much at that point. I realized I would have to write another 15k/20k lines to make it perform even the minimal things that I wanted my game to do and when I would finish adding another 10K lines, my code would be simply impossible to scroll-through or debug. The code was simply getting unmanageable and I was getting impatient.

At that time, what I was doing was, writing separate event handlers for all the visual renderings. So for example, I had separate set of codes to render a bullet patch in left wall and right wall. And it was soon becoming impossible to codify all the events (e.g. firing of a bullet) and object (e.g. walls, roof or a flower vase inside the room) association in C. And I asked myself, “How do they (game writers) do it”? And “God” answered, “They use object-oriented-programming language, you fool!”

And all the boring C++ stuffs that I read before started to make sense to me. Inheritance, over-loading, polymorphism – “Oh my my! I am feeling high”! The object-event association issue that generated 10K lines of C code earlier could have now been done by simply creating a generic “objects” class and creating all the real life objects e.g. walls and roofs inherited from the generic class. And then I can attach methods like “changeColorOnGunFire()” in the base class and voila! You are back in business well under 1K lines of code. Not to mention, I was heavily dependent on call-back mechanism, but that’s not an OOP concept anyway. (Now I know some experts there are raising their eyebrows for solving this problem based on inheritance but at that time I was not aware of anything better and concepts such as classes with virtual methods for subtyping were completely unknown to me)

I don’t think you learn OOP programming. You are just forced to do it. And then you discover it, and finally it happens to you. And if it did not happen to you and you were asked to learn OOP (to pass some exam), I feel pity for you.

Advertisements

Steve Jobs – inspiration of my life October 6, 2011

Posted by Akash in Life as it goes.
Tags: , ,
add a comment

I was otherwise living busy days with my busy mind fully engrossed with my future plans, websites and my day to day job- when this morning while coming to office in a taxi cab – I heard the news of Steve Jobs death over the taxi radio.
Like always, this time also Steve caught us unprepared with the news of his death. I think, like many other people in this planet, I was not ready to accept the fact that he is dead. I have never meet or seen him in person, nevertheless, there is no denying of the fact that he is the reason why many of us got into this industry and even care for technology.

To me he is the most innovative and iconic figure I can ever imagine in the field of technology, who not only broke all the status quo of our time but actually reinvented the very way we use technology in the day to day life.

Recently when I actually lost all my interests in technology, it was again due to Steve Jobs and iPhone – I started seeing a new dimension in the human side of technology and regained my interest on how technology can be used for the betterment of lives.

The more I see him, watch his lectures in WWDC keynotes and use the products designed by him, the more I am inspired on to do the technical stuffs that I do. Steve Jobs was a visionary, an entrepreneur and a person who can only be compared to Leonardo De Vinci at best.

I am saddened by his demise and honestly think that it is quite impossible for anyone of our generations to fill this gap.

Don’t survive, Live August 3, 2011

Posted by Akash in Life as it goes.
add a comment

Khudi ko kar buland itna, ke har taqdir se pahele
Khuda khud bandey se pooche – bata teri raza kya hay……

Make yourself worthy to such an extend that God himself asks for your permission before writing your destiny.

– an other way of refuting the existence of God

On finding fulfillment – A message from a father August 2, 2011

Posted by Akash in Life as it goes.
Tags: ,
add a comment

Paul, a teacher, who died of cancer at the age of 45 in November 2009, passionately believed his children, Thomas and Lucy, should have more than just fading photographs to remember him by. For the children were only five and one-and-half years old at the time of his passing. “There was nothing more important to Paul than being the best father he could be,” says Mandy, Paul’s wife.

So among other things, he wrote a list of 27 instructions that he believed would help his kids to live a fullfilling life.

“I’ve been thinking about the matters in life that are important, and the values and aspirations that make people happy and successful. In my view, and you may well have your own ideas by now, the formula is pretty simple. The three most important virtues are: Loyalty, integrity and moral courage. If you aspire, friends will respect you, employers will retain you, and your father will be immensely proud of you. I am therefore giving you several pieces of advice. These are the principles on which I have tried to build my life and they are exactly those that I would have encouraged you to embrace, had I been able to.” “I love you very much. Never forget that.”

A FATHER’S RULES FOR FINDING FULFILLMENT

  1. Be courteous, be punctual, always say please and thank you, and be sure to hold your knife and fork properly. Others take their cue on how to treat you from your manners.
  2. Be kind, considerate and compassionate when others are in trouble, even if you have problems of your own. Others will admire your selflessness and will help you in due course.
  3. Show moral courage. Do what is right, even if that makes you unpopular. I always thought it important to be able to look at myself in the shaving mirror every morning and not feel guilt or remorse. I depart this world with a pretty clear conscience.
  4. Show humility. Stand your ground but pause to reflect on what the other side are saying, and back off when you know you are wrong. Never worry about losing face. That only happens when you are pig-headed.
    Learn from your mistakes. You will make plenty so use them as a learning tool. If you keep making the same mistake or run into a problem, you’re doing something wrong.
  5. Avoid disparaging someone to a third party; it is only you who will look bad. If you have a problem with someone, tell them face to face.
  6. Hold fire! If someone crosses you, don’t react immediately. Once you say something it can never be taken back, and most people deserve a second chance.
  7. Have fun. If this involves taking risks, so be it. If you get caught, hold your hands up.
  8. Give to charity and help those who are less fortunate than yourselves: it’s easy and so rewarding.
  9. Always look on the upside! The glass is half full, never half empty. Every adversity has a silver lining if you seek it out.
  10. Make it your instinct always to say ‘yes’. Look for reasons to do something, not reasons to say no. Your friends will cherish you for that.
  11. Be canny: you will get more of what you want if you can give someone more of what they desire. Compromise can be king.
  12. Always accept a party invitation. You may not want to go, but they want you there. Show them courtesy and respect.
  13. Never ever let a friend down. I would bury bodies for my friends, if they asked me to . . . which is why I have chosen them carefully.
  14. Always tip for good service. It shows respect. But never reward poor service. Poor service is insulting.
  15. Always treat those you meet as your social equal, whether they are above or below your station in life. For those above you, show due deference, but don’t be a sycophant.
  16. Always respect age, as age equals wisdom.
  17. Be prepared to put the interests of your sibling first.
  18. Be proud of who you are and where you come from, but open your mind to other cultures and languages. When you begin to travel (as I hope you will), you’ll learn that your place in the world is both vital and insignificant. Don’t get too big for your breeches.
  19. Be ambitious, but not nakedly so. Be prepared to back your assertions with craftsmanship and hard work.
  20. Live every day to its full: do something that makes you smile or laugh, and avoid procrastination.
  21. Give of your best at school. Some teachers forget that pupils need incentives. So if your teacher doesn’t give you one, devise your own.
  22. Always pay the most you can afford. Never skimp on hotels, clothing, shoes, make-up or jewellery. But always look for a deal. You get what you pay for.
  23. Never give up! My two little soldiers have no dad, but you are brave, big-hearted, fit and strong. You are also loved by an immensely kind and supportive team of family and friends. You make your own good fortune, my children, so battle on.
  24. Never feel sorry for yourself, or at least don’t do it for long. Crying doesn’t make things better.
  25. Look after your body and it will look after you.
  26. Learn a language, or at least try. Never engage a person abroad in conversation without first greeting them in their own language; by all means ask if they speak English!
  27. And finally, cherish your mother, and take very good care of her.

I love you both with all my heart.
Daddy x

Life never ceases to surprise me July 29, 2011

Posted by Akash in Life as it goes.
Tags: , ,
add a comment

Last June and July were difficult months. I used to work for a company specializing on Telecom softwares. I left the job and joined in Investment Banking last May. On May 28th, my baby was 2 months old and my wife was still on her maternity leave. We were hoping to spend some good time together before she joins back office again. We had a bit of financial problem at that time but it was manageable.

In the early months of June, my wife called me in office to inform that she got a call from her doctor’s office asking her to report as soon as possible and it was about her pap-smear result. We both were taken aback with this call. Although she tried to take it lightly and postpone the meeting with the doctor, I convinced her to book an early appointment following week. Now, we all know that the Pap test is done for early detection of cervical cancer and it is a routine test that everybody does. But we didn’t expect that there can be something wrong in the results of our Pap test. So naturally our reaction was that of disbelieve and shock and denial. But we had to find it out in detail anyway from the doctor.

Even before visiting doctor, I started checking on it in the Internet and guess what, I was freaked out! There were all sorts of freaking story out there on cervical cancer which frightened me enough for the upcoming doctor’s appointment.

Anyway following week we met the doctor and doctor told us that her Pap test report is not normal and was detected with something called AGUS – Atypical grandular cell of undermined significance – which is quite abnormal (a more normal one is called ASUS) and spreads faster than ASUS. And we need to go for some further tests for which my wife needs to go through some surgical procedures wherein doctors would collect several sample of tissues from the inner and outer parts of the cervical canal (curettage) and send them for biopsy. Treatment will start after they get the biopsy report. In short, doctor was saying something that I do not understand and do not know what does that mean. The only question that I was able to ask to the doctor is – “doctor, is such cases common?” – and doctor said – “it’s not very common”.

So I again went back to Internet and tried to figure out what the doctor is talking about. Is he saying that she has cervical cancer? I read it in the Internet that life expectancy of cervical cancer is around 5~7 years.  Although I made myself quite familiar with the meaning of the words that doctor uttered that day, the more I read about it, the scarier it appeared to me.

And the first time in Life, I realized that I might lose her one day and I can’t explain how it felt.  We took a time of 1 month from the doctor before we do the surgery and doctor gave her an appointment on 6th July for the hospital admission.

Now we had 1 month in our hand. We did not know what lies ahead at the end of the 1 month. But I knew that our life could change completely after that month. And most importantly we might end up in a situation where I can not do anything but to wait to lose her.  I was terrified but it brought back a lot of old memories of her. I remembered the great times of our college days together, when we used to meet over the bridge of river Karala and the arch-bridge of river Tarthari, when we were like two birds freely roaming around the beautiful tea gardens / rivers / fountains around the foothills of Himalayan mountains.  The sun kissed valley was our play ground, remote river bank was our resting area, and following the unknown alleys of the paddy fields was our amusement.

I suddenly realized, to be happy you need to remember your past. Future is uncertain, there is hope in the future but there is no assurance. And the present is what you are going through and go through anyway without realizing much of what you are doing.   

Cervical cancer. Since I live inSingaporeI had to brought-in others of my family here to support us during the time of her hospital admission. I called-in my parents. But we never informed anything to her parents lest they get over tensed. On 6th July she went in for the surgery. I was asked to pay a hospitalization and surgery bill which thrashed me to ground. The bill was at least 4 times more than what I anticipated and it flushed-off my bank account and best portion of my credit card. Sitting outside the operation theatre, I thought to myself – what should I do now – like others I could not even pray to God as I don’t believe in the existence of God. So what should I do now?

The surgery went on fine and doctor gave a date of 19th July for the biopsy report to come out. We waited a breathless week and reached to doctor on 19th. When I was entering the doctor’s chamber I knew that in next 5 minutes my life can change for good.

Doctor gave us a copy of the biopsy report and told us that her Pap results were false positive. She is absolutely ok and normal.

Life is a merry-go-round which never ceases to surprise me!