Monday, June 15, 2015

THE BIRTHDAY CARD.............






Image Credits: Google Images under Creative Commons License



Last Week, I read a truly wonderful article on Vincent Van Gogh who was a legendary painting genius of his times. What made a deep impression on my mind was his opinion on Love, “Love is an intense emotion that can propel a man to carry out extraordinary tasks and overcome huge challenges. It also brings the best out of man not only in terms of his handwork but also brings to the front the best of his artistic and creative capabilities.” 
I believed this was indeed very true as I was aware that some of the greatest works of art and literature in the world were inspired and propelled by Love.

I am essentially a non-creative person by birth and am indeed a big Zero in subjects like Art and Craft or Painting and Drawing. After I read that article on Van Gogh about Love transforming a plain, simple and ordinary man to a creative and artistic person, I started wondering if such a thing ever happened in my life as well. I could not remember myself falling in Love ever in the last 20 years of my life nor could I could recollect any endeavor of mine over 20 years that can be even remotely called as creative or artistic. Besides no one ever complimented me even once about my tastes or choices in areas related to art or creativity.  I tried thinking a little harder and further re-winded by a year.

My mind then came to a screeching halt at the “Summer of 1994”, exactly 21 years into the past...



SECTION -1

Instantly an image of a pretty, elegant and graceful girl came to my mind and it occurred to me that it was that of a girl on whom I had a massive crush in the “Summer of 1994”. The next recollection was that of the ‘most creative and artistic piece of work’ that I had ever done in my life. I truly believed that it was a masterpiece of art that was both wonderful and marvelous at the same time. Probably a work of such high excellence that no one in my college at that time would have even dared to dream or envisage. The masterpiece of art was a “BIRTHDAY GREETING CARD” for the creation of which I had worked hard incessantly for 30 days during my summer vacation.

It was her birthday in a month’s time from then… And I started making plans on how to impress her on that special day. I was extremely poor when it came to understanding the psyche of girls at that time and I had no idea at all as to how to go about impressing her. I racked my brains for two full days and all I could think of was to give her a ‘hand made’ birthday card. I then realized that my nearest competitors would buy her a nice gift like a teddy bear or at the minimum a top of the line greeting card which would be 2 feet tall and 1 feet wide and came with a lot of multi-colored designs and pre-printed with very sweet and mushy words. I intended to beat the competition hands down. I planned to surprise her by giving both a ‘lovely pink colored teddy bear with a red ribbon around its neck as well as a jumbo greeting card’ such as the one I described above. I went to the biggest Archie's Gallery in Hyderabad and narrowed down on the two items that I wanted after spending 2 hours of deliberations as to what color combinations and fonts or background text would impress her the most. I checked with the guy at the billing counter about the total price. The number he told me made my head spin for a moment and I became grumpy and started criticizing the Prime Minister for high inflation in India over the last 5 years of his rule.

I went back home and decided to ask my father for the money to buy the gift. There were two issues though:
Issue 1: I had never lied to my father till that day and did not want to lie even then. At the same time I could not tell him the real reason as to why I needed the money.

Issue 2: Assuming I convinced my father by giving some fake reason, the bigger problem was about where I would store the gifts till her birthday. I could keep them at a friend’s place but then this was meant to be a ‘top secret’ operation not even to be told to the closest friend. I could also hide them in my bedroom but it would be impossible to escape the prying and sharp eyes of my younger sister. I knew what a big disaster would happen if she discovered those gifts in my room.

After all these deliberations I was again back to square one. I decided that a hand made birthday card was the best option under the constraints I had and thus sadly froze on that option so that I could the start the actual job of making the greeting card. I started with a few A4 size sheets and a box of sketches. I did come out with 2-3 variants of finished greetings by the end of the day. They were not that great but knowing my artistic abilities, I had to be content that it was as best I could get to. I relaxed for a few hours and then my eyes fell on the PC in my room that I had rented for a month with an intent to practice some advanced algorithmic implementations using complex data structures. Remember those were the summer days of 1994 and there was no Windows operating system available to me in Hyderabad. My PC which was supposed to be a top end machine with “color monitor” and running MS DOS 4.0 which was the latest OS at that time. Was I thrilled? I would admire the beauty of my PC atleast three times a day and would feel very proud about its processing speeds and memory.

SECTION -2

I then had a brain wave, I felt that to be able to beat my competition hands down, I must leverage the power of technology. Technology was the in thing in those days and applying it for real life applications and that too using a custom designed program would be considered super cool and I was sure that my girl would be completely bowled over by my intelligence and creativity. The idea was to write a simple C program using “printf()” functions that would print out a nice message for her on the computer screen and then I would take a print out of the screen content and hand over the print out to her on the special day. Remember those were not the “Windows Graphical User Interface” days and all I had was a MS DOS machine at my home or even in the college for that matter which was completely text or character based and worked in command prompt mode. I did write a beautiful program to print out a nice message for her and also used basic MS DOS tricks to make a beautiful border for the message as well. I loved using a lot of color combinations for words and sentences while writing in those days using sketches. I also used the same style and ensured that the heading and other lines in the message are of different colors. When I executed the program it worked beautifully and the screen was full of messages displayed in multicolored words. I then fired a print out on the dot matrix printer available in the college lab.  The print out was OK but I realized that the printer works only in black and white mode and there was no way to get color print outs. I hid the print out in my bag so that no one would come to know of it (remember it was a top secret operation) and took it out only once I reached home and locked myself in my room.

I intently looked at the print out examining every fine detail. It finally boiled down to 6 lines of text one after another and all the characters were of same size in black color. The printer being a dot matrix one could only produce characters made of dots and the resolution was not good. I still thought that I would be far ahead of the competition as I had used a custom C program written by me especially for her.

That evening I was sitting with my father and chatting about some movie. Next to him were a bunch of papers neatly typed and the print looked awesome. They did not have computers in his office at that time and he told me that they were from an electronic type writer whose print quality and character clarity was awesome though it was all in black ink. There were a few other papers that he said were from an old 1980s Remington typewriter and even that look dark, bold and clear when printed on a bond paper. I took one of the sheets as a sample from him and went into my room to compare it with my precious print out that leveraged the state of the art technology of that time. Besides it was a custom program that I had written!!!  The print out from a 1980s Remington type writer on a A4 bond paper looked 100 times better than that of my  sophisticated dot matrix print out on a third grade quality computer line feed paper.

I came to my senses very soon and decided to drop the technology based option and revert to the original plan of giving a hand crafted greeting card. Atleast, I thought she would be able to appreciate all the hard work that I had to put in despite my very limited creative capabilities All said and done I was able to finally produce a reasonably good quality greeting card.  Besides I had used multiple colored sketches including one colour that was called as ‘fluorescent’ in those days.  A sense of pride and success filled my heart and the warmth spread all over my body.  It was indeed a proud moment for me.

The next day one of my sister’s friends came home and showed me a greeting card that she had made for her brother’s birthday using simple colour pencils. It was indeed awesome. My sister was 5 years younger to me. I would typically dismiss away my sister and her friends calling them little kids and would ask them to go and play in the verandah. When I asked her friend if she was the best painter in her school, she said that this was nothing at all and they were some girls and boys from senior classes who could make awesome paintings which looked like colour photographs. And they did not even have the fluorescent colors that I was so proud of!!!

I knew that I could not make a better card than what I had already made and truly believed  that my girl would certainly be impressed by the fact that I had toiled hard to make the card while my competitors had just bought ready made cards and gifts from Archie's (although expensive ones).



SECTION -3

The next day I went to a friend’s place. He was rich dad’s son and had a cool computer with expensive and coolest accessories like a joy stick fitted to the CPU and 4-5 latest games pre-loaded on his PC. It came with a top of the range high resolution colour monitor as well. He showed me a game and what I saw swept me off my feet. It was a simple game based on MS DOS operating system, compared to what we have these days but what struck me as a wonder then was the beautiful backgrounds in multiple colors that kept changing and the fonts were also in different colors and in various formats and sizes. And to top it all, it had an awesome background music though it was a very simple tune in varying pitches and sounding melodious. I had never seen anything like this before. I had certainly seen some older versions of games in college that worked on MS DOS machines but this was a whole new experience. I asked him how one could make these games with all the colorful graphics, awesome animations and sounds and displaying multi colored and varied sized text characters and that too in 2 different fonts which look like cursive writing. He had absolutely no clue what so ever. I tried asking him using all possible ways but he really did not know except for the fact that his cousin sent him Games Floppy Disk from the US.

I went back home and was really restless as to how does one make a program that runs the way as the game program at my friend's place. I was in third year engineering then and had done quite some complex programming on various languages and platforms. They were very complex algorithms and needed intense processing and deep systems programming but the output of all those was only in text or character mode. At that time I truly believed that I could write a program for any functionality using C or C++ and could make the computer do all that is possible to be done by it and can get the correct results or output. I was then young with hot blood and for some reason had a killer confidence about my grasp of computer science. The fact that I could not figure out how the animation and graphics were being programmed, what was the programming language used and what code using what algorithms needs to be written, really put me in a complete discomfort zone! I had now lost my confidence completely on my so called ability to do any thing on a computer by writing a program for the same.

We did not have access to internet in those days and hence there was no Google as well. The only way to get information on any topic was to buy a book on that topic. On these advanced computer science topics it was not very easy to get the latest editions of books in India. Even if an imported book was available it would be extremely expensive in rupee terms.

I spent a day quickly trying to visualize in my mind the logical blocks of functionality that I had seen in that awesome game in my friends house and based on my overall knowledge about computer science that I had so far picked up, I was able to clearly put logical and functional blocks needed for developing that functionality (including hardware and software). That gave me some confidence that I atleast now knew what I need to learn or areas and subjects that I need to dig more deeply to build the functionality.

The next day morning one of my friends called me and I woke up with a start. After some chitchat he asked me if I knew that it was that pretty girl’s birthday next month. I was taken aback, immediately went into ‘alert mode’ and replied that I do not know that girl all that well and I do not know or care when her birthday was. I then tried to get some details as to why he had to wake me up in the morning and talk about that pretty girl. He confessed that he was in love with her and he was planning an innovative present for her birthday. At that moment, my heart literally sank. I remained silent. My friend went on to say that he wanted to show the present to me first and take my opinion on it. He also added that he had a lot of respect for my judgement and taste. I told him that I will come over to his house that evening and hung up the phone.

My birthday card was anyway ready and I was also sure that this friend of mine would have bought an expensive teddy bear and that it could not compete with my handcrafted and custom designed card which also had words written in ‘fluorescent’!!!

I casually went to his house that evening and the idea was to appreciate his choice of gift, wish him good luck for his Love and then return home. I planned to be a perfect gentleman that day and not get jealous about the fact that I now had an extra competitor.  When he showed me his present, I was dumb founded. It was an awesome painting in oil colors on an A4 size paper with a very scenic background of a mountain valley with a river flowing thru it. And our pretty girl was seen sitting peacefully on the river bank exuding natural beauty and pure grace in a traditional Kashmiri dress. I gazed intently at the painting for a few minutes and this time honestly and genuinely complimented him on his talent. When I wished him good luck, he talked about competition. I philosophically replied that competition exists in all walks of life and the best man will finally win. However I did not mention even a word about my interest in that pretty girl.

I went back home and I just thought about my pretty girl and looked at the chances of winning over her vis. a vis. the rest of my competitors. I knew my strengths well (or atleast I thought so) and at that point in time I had certain clear convictions on what would impress a girl. I believed the following attributes would play a role in the evaluation criteria from a girl’s perspective: good family background, reasonably good looks, engineering branch (as it impacts job potential), good academics (as it is indicative of future performance), good nature, nice manners and ability to make an interesting conversation.  All that unnecessary worry about the gift and trying to impress her on the basis of the gift was not all that big a thing at all. A girl does not marry a boy just because he gave her a great gift. However it does create a nice starting impression if a thoughtful gift is given on her birthday and it does not really matter whether it is expensive or not.

Having resolved the conflict in my mind and having regained confidence, I felt much lighter as I thought I was the most suitable boy based on all the parameters mentioned in the criteria above. And I concluded that competition was no match for me on any count.



SECTION -4

My thoughts returned to the impressive computer Game that I saw at my friend’s house a few days ago. I recalled that my friend’s brother had sent him the game in a floppy. A brainwave struck me instantly that if I write an impressive graphics program for her birthday, put the executable in a floppy and hand it over to her to run it on any PC based on her convenience, it would be the best and most thoughtful gift that one could give her. It would also be probably the most ‘technologically savvy’ gift a boy would have ever given to a girl till date atleast in our college. And it would not cost me a thing as the only thing needed was the hard-work for programming.

I then sat down with my drawing board and listed down the activities to be performed. I first needed to get the content ready as irrespective of the technology used it is the content that is most important. I took sheets of A4 paper and put a wireframe of the messages that I wanted to clearly convey to her. I decided that there will be 5 sections in my overall message which need to be shown in a logical sequence or order. I designed the rough high-level layout of each section on a separate paper thus ending with a set of 5 papers at the completion of the endeavor.  I spent a lot of time reflecting on her personality, her likes and dislikes, what would she want to know about me, what aspects of my character or traits of me should I lay an emphasis on, how do I succinctly talk about my core values and ideals, what is more important to her and what is less important to her and so on….

I stepped into her shoes completely and reflected deeply for long hours and tried to visualize as to what exact content and choice of words would sweep her off? I tried to figure out her mindset and once I got some clarity, I tried thinking the way she thinks on all of the aspects and questions that I mentioned before.

After 2-3 days of deep reflection and pondering over again and again multiple times, I finally was able to exactly figure out what the theme of each of the 5 sections should be and also put the sentences and words under each of the 5 sections to the best of my satisfaction.  I am not creative at all and I am a big zero on arts and painting. However in those days I was confident about appropriately expressing what I want to using a pen and a paper. At this point I firmly believed that the content and the actual message is far more important than some fancy bells and whistles using graphics and sound.

After struggling till late nights on trying to experiment with graphics and animations, I could not make much progress. After a lot of deliberation and comparing different programming languages, I settled down with Turbo C/C++ Environment which not only made advanced systems programming using C needed to access sound cards, video cards and other hardware possible but also boasted of an efficient  C++ based graphics library that was compatible with MS DOS. I also bought books on topics such as Advanced C++ Object programming, Advanced Systems Programming and Computer Graphics Algorithms (actually prescribed for final year Computer Engineering) and spent late nights reading them and trying to grasp them. I felt that I did understand the concepts quite well but when I converted them into an algorithm and then to C++ code, a lot of unexpected behavior started happening and system had to be re-booted multiple times. Systems Programming is quite complex compared to the usual programming as we operate at a level very close to the hardware and actually invoke the OS kernel or device driver functions directly from our code.

After my initial failures I realized that this would take a lot more time than what I had ever imagined. 2 weeks had already passed by and not much visible progress was seen on the graphics, animation and sound related functionality. I did have some success with the sounds but I had no knowledge of music to be able to combine sounds of different frequencies to form a full octave. However I was able to play small bits of melodious sounds each lasting 2 seconds. My idea was to be able to play the first 2 lines of ‘happy birthday to you’ tune on the computer….But this looked to be a remote event….

As I had only 2 more weeks left, I changed the strategy slightly, I decided that as a first step I will create a pure text or character mode based program which displays the content of the 5 sections, one after the other. I could also use a nice background and font colours to make each of the 5 sections look unique and have a nice blend of contrasting or matching combination of colours. There will be no graphics or sound used at all and it would be purely text or character mode.  It is a simple screen by screen display of 5 sections with changing colours one after the other….I knew this is not really any great or advanced technology but then it was certainly innovative. And all I need to do is give her a floppy with the executable program loaded and she has to just insert the floppy into the A drive, change the system command prompt to A: > and  then type the program name at command prompt and press enter. Then the first screen comes up with the desired colour combination and the characters are displayed on the screen with desired text justified to the middle of the screen. It says “press any key to continue” at the bottom of the screen below the text.  She then presses a key and then the second screen shows up and so on for all five screens.

Since I had the content ready, it took me less than a day to program the above functionality and get it working. However I then wanted the background and font colours on each of the screens to align to her tastes and likes and also suit the theme being displayed on the screen. I wanted to use the colour combinations that she would love seeing and use the correct blend of colours that would be very impactful, appealing and pleasing to her eyes at the same time. I spent another full day in working with the colour combinations and all types of blends in a trial and error mode. I kept working on this till late night  till I was fully satisfied that she would indeed love the colour combinations used and probably would be even delighted at the way they have been blended.

Now I had the Plan B ready and all set to be handed over. I got a brand new 1.44 MB floppy diskette, formatted it and installed the latest OS and copied the executable of my ‘birthday program’ titled ABC.exe to the floppy. I also took care to ensure that the Floppy LABEL after formatting was given her first name so that when floppy is loaded, her name would be shown instead of some default floppy name displaying on the screen…I thought small things like this would add to the thrill of the overall experience….


SECTION -5

Now I was more relaxed as the Plan B was ready and it was actually in quite good shape….And I started my intense R&D again on the graphics and animation side of things. After struggling for hours at a stretch, I figured out that I had difficulty in implementing ‘free curve’ based images but could implement geometrical shapes such as polygons and ellipses or circles and lines. This was good enough for me as I was any way not good at drawing free curves even on paper and there was no way I could make sense with them on a computer screen. Graphics in those days involved writing our own algorithms and code for lighting up every pixel on the screen. You need to know what colour every pixel on the screen is going to be finally to give the needed background design and colored text in the front.

The background used in Plan B was a simple plain screen of a specified colour. There was no background pattern or design to it. I started working first on the background design of each of the five screens and finally came out with 5 unique backgrounds each having different patterns or designs based on geometric shapes. This needed me to draw each of the background designs first on paper, then figuring out what pixels are to be of what colour to create the pattern or design drawn on paper and then lighting up the pixels on the screen. It was quite a painful task to create these colorful pattern base backgrounds as I needed to work at pixel level but not as difficult as one might imagine as we have the wonderful invention called FOR LOOP.

For(i=1;  i++;  i > 10000;)
{
FillPixel( i, colour=CYAN );
}

The above statement lights up 10000 pixels to CYAN colour at one stroke….

And needless to say I carried out multiple iterations of tweaks and changes to the background patterns or shapes or designs and the colours used for each element or object in the background all the time keeping in view the exact colours which would delight her and the the patterns of designs and their colour combinations or blending of colours which would thrill my girl and be very appealing and pleasant and at the same time impactful to her eyes.

Once the 5 backgrounds were done to my best satisfaction or what I thought would really thrill her. I had to always try to get into her shoes and attempt  to  think with her mind to envisage what she would like and what she would not and what would delight her the most. The next step was about the characters to be displayed on each of the 5 screens. The simplest way would be to use simple text based characters as I had done in Plan B, but I believed to really delight my girl the way I was delighted when I saw the huge cursive characters on that computer game at my friends place, I should doing similar kind of stuff. I initially tried drawing the characters pixel by pixel so that they appear in big font and in cursive style but it was looking very shabby and ugly.  I then did some deep research and figured out that MS DOS supported 3 types of fonts: Arial, TimesNewRoman and MS Sans Serif. After burning some more midnight oil, and writing a couple of hundred lines of code, I was finally able to render characters of all these fonts exactly at the size I thought my girl would like and the colour that she would like.  Finally after many fussy trials  and altering the code multiple times to get the exact shade and tinge of the colour or adjusting the contrast or matching to the correct RGB  levels that would probably exactly match my girls liking, I finally froze the background and text on the 5 screens. All this had probably taken a few thousands of lines of code...

All 5 screens were now ready with great backgrounds and fabulous text of varying font types and sizes and colours on different screens. I thought a set of 5 screens; each one with a distinct theme indicated by a heading and 4-5 well spaced and succinct sentences following it with big enough font size and all justified to the center of the screen. Added to this was the splendid background colour combinations and patterns. It was in really good shape now…. I ran and re-ran the program multiple times to see the over all effect it made. I did not like that “press any key to continue…” at the end of each screen to go to the next screen. I replaced that with a timer and pause functionality which automatically moves to the next screen after a set time. I had to keep in mind her probable reading speed with good comfort while determining the time needed to pause...By the way this timer functionality and move to next screen actually needed code to be written and in those days it was not possible to just set parameters and get work done.

All looked fine now but when I started thinking as to how I can further improve the look and feel and ease of use, I remembered that adding some simple animations would be more attractive and enhance the appeal like it did in that Game at my friends house several weeks ago. I created 2 transition effects similar to what we have today such as zoom in or zoom out or dissolve. That also required writing of code and the pixels actually had to be actually moved in a certain direction simultaneously for the effect to be realized.  I initially thought that I should have a different transition effect for each of the 5 screens. It would have needed additional programming but I was more constrained by lack of creativity in terms of being able to create additional effects. So I just used these 2 transition effects alternately for the 5 screens.

I ran the program again and again for a few more times. All was OK, but I somehow felt that when a screen was displayed all the 4-5 lines on that screen appear all at once and could possibly divert the attention of my girl. I then wrote a bunch of code that would display one line, pause, then display the second line, pause and so on…..I was very mindful of her reading speed with comfort even while setting the pause time…

Now the final run of the program….I intently watched every minute detail including spacing, position on the screen, the pausing time, transition effects, overall look and feel at screen level and  at the entire program level and so on…..All looked good now and it appeared as if it was all set to launch….


SECTION -6

At this point I suddenly remembered the ‘happy birthday to you’ tune. I actually felt that I should now just forget it as it was getting too late and only 4 days were left. But I felt she would be really thrilled with the ‘happy birthday’ tune being played…. I had mentioned earlier that I could not compose the tune using C or C++. However I tried the same using BASIC programming language and it worked.  Now the issue was how to connect these two programs. I tried using System.Exec ( ) system call in C++ code to invoke the BASIC program but it was abruptly terminating. This was the popular method of invoking an executable file from within another executable as per the books I had purchased and it just refused to work. I really got frustrated and almost gave up. However my intent to do  a perfect job from an end to end perspective got stronger in the last few days and I wanted my girl to have a seamless and complete experience which will leave her delighted and very pleased on all aspects. I figured out an old hack in MS DOS wherein both .exe files are invoked serially from a .bat file one after the other. The hack worked and I was indeed very proud of my accomplishments.

Now it was time was a strategic decision to be made. I had to now take a call on signing my name at the end of the last screen.  It was usual to add FROM in any greeting card. But I was sure that my girl would be using the college lab for running the program and I did not want anyone around to know that it was from me.  Immediately I got on to ‘STEALTH MODE’ and decided not to add my name anywhere in the greeting. And finally the last strategic decision: I had designed the program to prompt for password when it starts up so that it cannot be accessed by general public. I now decided that the password will be DEEPAK. Atleast there would be some association to my name when she runs the program. There was certainly a romantic air about her typing MY name on the computer….

Time flew without my realising it as I was deeply involved in the design of the program and was trying to ensure it works as perfectly and seamlessly as possible. Her birthday was just the ‘day after tomorrow’ and there was no time left for dry run in college environment. That day I stayed back after college and started the dry run in the lab.  I was indeed shocked at the results. Since it was a graphics intense program, the screen layout in some cases fit the screen exactly or occupied only a part of the screen or exceeded the screen size. I tried executing the program on different computers and the behaviour would be different depending on the computer. I was completely upset seeing this behaviour and it appeared as if all my work had gone down the drain. I then started looking at the OS logs and realised that the problem was due to the graphics adapter in the computer. There were different types of graphics adapters in those days if I remember: VGA, EVGA, SVGA or something like that. Since MS DOS was not a graphics based operating system the code for handling of the adapter types and invoking the appropriate device driver for each adapter had to be written in my program. This is not needed in Windows as the handling is done automatically by the OS. Anyway luckily I could solve this problem by writing code using a CASE statement for handling the different adapter types. It took around an hour to write code and 2 hours to test this code on different machine types and all was well now.

I went back home fully happy and then after dinner ran a final dry run of the program. All went fine with the program except that when the program execution was completed, the PASSWORD which was DEEPAK still continued to remain displayed on the Command prompt. My strategic decision to work in ‘STEALTH MODE’ would have bombed if I had not noticed it. I immediately made code changes to display ****** but the scanf() function in C and C++ which is invoked to get user input is very primitive and it took a great deal of effort to be able to achieve what I wanted. Further runs and everything was very smooth.

I have to mention here that my girl was rather dumb when it came to handling a computer and probably had never written a single line of code or ever typed a single command on the MS DOS command prompt in her life. My earlier idea of giving the floppy to her, asking her to change the drive to A:> and then type the executable name at the command prompt and then pressing ENTER appeared very cumbersome from her perspective. And I thought she will not be able to run the program and all my effort would have been in vain. I was not even sure if she knew which was A:> and which was B:> which further added to my woes.

With just one day between that day and D Day, I had to do something radical and out of the box so that it makes her job very easy. I did come with up something very neat and simple solution that night. I converted my floppy diskette to BOOTABLE mode running the SYS A: command on MS DOS command prompt.  And then I created an AUTOEXEC.BAT file to refer to the executables of my birthday greeting program. And I was all set…..

The next day I ran the program nearly 20 times on different machines with different types of graphics adapters.  All was smooth and perfect and all set to be launched. I was actually euphoric as I had turned around the situation completely and was able to make the program do everything I wanted. However I realised at home that night that all my focus in the last few weeks was only on handling technology related aspects and I did not even remember completely what the content in the 5 screens was. I quickly ran the program at my home PC and carefully focussed on the sentences and each of the words. I then reflected if she might not like or feel uncomfortable with any of the words used. After mulling over for some time, I found everything to be perfect….

The D Day finally came and I was all set with my most precious Amkette 1.44 MB Floppy Diskette safely ensconced in my shirt pocket. I did not meet my girl in the morning as I knew there would be many fans around her offering their wishes or presents. And I always liked being very discreet in such matters. I met her at the beginning of lunch break, quickly wished her ‘Happy Birthday’ and then pulled out my most precious Floppy Disk from my shirt pocket and handed it over to her.

I told her to do the following:

1.      Switch Off the PC
2.      Insert the Floppy into any drive
3.      Switch On the PC


The computer will then boot up and welcome you by your name and ask for the password.  Type in DEEPAK and then “Watch the show…..”.

I then added, “Choose a PC with a colour monitor for best effects….

Saying so, I left her there still wondering what that Floppy Diskette was all about!!!!

That evening when I reached home, my father reminded me that the lease period of 30 days for the PC would end the next day. I replied, “No problems at all. I have no further need for it….”



EPILOGUE

Six months had passed by….

I was in the Computer Engineering class listening intently to my professor talking about the “Design of the Operating System”. She was an authority on that subject and explained the concepts of multi-programming, multi-processing, multi-tasking, multi-threading and time slicing in great amount of detail. I suddenly felt a jolt and then experienced a “Eureka” moment as I had just figured out why I had issues in running BASIC and C++ programs together on that MS DOS 4.2 machine while creating that “Birthday Card”.

And then instantly I remembered my pretty girl. It was 4 months since she had very politely told me to “take a walk…

I will summarise 2 key conversations that I had with her which will give the entire crux in the least number of words….

The next day after I gave her the “Birthday Card” or Floppy diskette or whatever one might call it, she met me and was simply ecstatic. She exclaimed that she was thrilled by those wonderful animations and superb graphics unfolding like magic one after the other in beautiful colours that very exactly as per her taste. The intertwining of music, messages, graphics and animation and the lovely blended patterns and spectrum of colours displayed was truly a wonderful experience and the first of its kind for her. She asked me as to where I obtained that amazing graphics program from. I told her that I wrote it all myself. She asked me “you mean you made it yourself?” I replied “Yes”. She complimented me on my computer science talent and then went her way.

After a month and a few casual conversations with her, I met her again one afternoon. The most crucial conversation went as follows:

SHE: What is your career ambition?
ME: I aspire to do an MBA from a premier B School in India and take up a job in a leading Indian corporate
SHE: Why do you want to stay back in India? Everyone in our college is going to the U.S. and there is so much future there for Computer Engineers. People from all branches of engineering are aspiring to take up jobs in Computer Science field in the US and despite being a Computer Engineering student, you intend to stay back in India?
ME: Yes I want to stay back in India
SHE: But why?
ME: Two reasons: 1. I want to stay closer to my parents 2. I have a great conviction in the India growth story especially after the liberalization and reforms of 1991 and I really want to be a part of that growth story and see it unravel before my eyes… I am sure that will be a great feeling and nothing else in the world can beat it…
SHE: Isn’t that too idealistic? You seem to have good talent in Computer Science and you could make a lot of money in the US and have a really lavish life style that one could not even imagine in India…
ME: Doing an MBA from a premier B School ensures that one gets a well-paying job and a very good career on the management side. In the MBA class of 1994, the highest salary offered at a top B School was 30,000 Rupees which is very good and is many times more than the highest salary offer in our college for the Engineering Class of 1994 which was 4,500 Rupees.
SHE: Do you realise 30,000 Rupees a month is 500 Dollars?
ME: Actually that is the highest salary that was offered across all premier B Schools that year. Probably 16000 to 20000 Rupees is a more realistic number. 

No sooner had I said that than I realised what she was trying to subtly get to……

I came out of my reverie and my mind switched back to the “Design of the Operating System” class and our professor was then explaining the concepts of Segmentation and Page Faults.

 I thought about the efforts and hard-work that had gone into the “creation of that Birthday Card”. I once again felt very proud about my creation and warmth filled my heart. However my regret was that due to the ‘top secret’ nature of the endeavour, I could not even talk to anyone and proudly explain the cutting edge technology that I had used, the complexities in the design, key technological challenges that I had overcome and all other exploits that I had made on the computer in my endeavour of conceptualising and creating the most thrilling experience ever only for her sake.

The thought of spending an hour with her and talking about all these technological aspects did occur to me at times as I thought that it would atleast give me some solace. But then I realised there is no point in doing that as she would not be able to understand or even appreciate the complexity and challenges involved at all. Perhaps I should have fallen in Love with a girl in Computer Engineering so that even if she had asked me to “take a walk..” she would have atleast understood and appreciated the hard work, immense efforts, challenges faced and technological complexity behind the “Birthday Card” !!!