Friday, December 10, 2004

I am an Engineer

Some days back, the thought of writing something on the blog flashed in my mind and it appeared as "Diwali blasts off in office". Now my mind is again pushing me to write. What to write and where to start????? Few events seem good to write about now… "A day in my brother's home", "Am I indecisive?", "Don't loose your mobile on weekends" or can it be "Engineers work smart". Yes. I will present this to you now. "Engineers work smart".
You might have read many jokes about Engineering's life. No girl friends, always thinking logically, deep thoughts all the time. This bog is something like that. No no…. don't think I am saying "No girlfriends and no parties!" This is an entirely different story. Keep reading….
It was another typical morning in college hostel for me and Gokul. We were playing with our computers powered by the broadband internet. I got bored of downloading movies and games and went to download fonts for a change. A single search in Google revealed a good website with hundreds of fonts for free.
Wow!!!!!! Its Time to squeeze the internet bandwidth. The devil came out of my mind. But wait a minute. How to download??????
A simple calculation to provide the effort required to download all the fonts from the website…

  • Right clicking on the font,
  • Choosing Save Target As,
    Press 'Ok'
    After the file is downloaded click 'Close'

…will take an average of 5.67 seconds.

And there is this moving to next pages too.
Suppose there are 100 fonts and time to download each font is 2 seconds. The total estimate to download all fonts will be around 800 seconds which is 13.5 min approximately. I am not ready to waste the time. So I looked for an alternative method.
There came Win HTTrack website copier. The devil is still awakening. With the mention of the link of the homepage in it, there came the whole website to my desktop…. with all the FONTS. All work done in 5 minutes.

"We Engineers don't like the "Follow the steps" way of doing work.
We have an open mind always looking for alternatives and try to make one if nothing is found.
We like creation more than execution."

Now comes the next task. How to extract these hundreds of fonts? Opening and extracting each file one by one is not the way I like to work. I am an Engineer. I like to explore new things rather than examine existing things. I started exploring newer ways. A sudden thought flashed. Why not write my own program to extract all the files in a single click. I can customize the program to allow the user to choose the folder with the zip files and the destination where the files are to be extracted. Sounds cook! With no other work to do, I placed my hands on the keyboard.
My hands grabbed the mouse and keyboard and the monitor obeyed my commands. Visual basic is open. The folder location controls have been designed. The interface is complete. Now is the important part to be done. Implementing the zip operation. I have no idea how to do it. Do I have to learn how zip technology actually works? Do I have to study the algorithm of it? How can I implement this myself?

"There are two ways of doing a work.
You can work harder and harder
Or you can work smart"
We, Engineers like to work smart.
Implementing the actual algorithm is working hard. So what could be the 'Working smart'?
My mind looked at the controls and references section of Visual Basic. There might be an inbuilt control that handles zip operations in windows XP. There has to be something like that.

I searched the whole list of controls and references available and still couldn't find one for zip operations. Now my search extended to the Internet. Still no controls. My mind looked for other options. Luckily, the search in the internet showed that the infamous WinZip is providing add-on for performing zip operations from command prompt which means you can extract files by specifying it in the command prompt itself.
The intelligent brain clicked. I can call this add-on from my application, which will in turn extract the files I choose. This is great. With the analysis and design completed, coding is not far away.
Its time for lunch, but nothing can interfere my work and so the lunch is forgotten. The codes went on and on and so was the time.
At last with few hours to spare before the sun sets, the application is ready.
Project successful.

And now for the guest of honor to show my creation, I invited Gokul who have no idea what I was doing all these hours. I explained the objective and logic of this Zippo project. Then I presented a live demo of the project by extracting 100 zip files by a single click that too providing the user the ability to choose the source and destination folders.

Gokul's face went brighter and brighter every minute seeing my invention and suddenly it changed…..
This is when it happened. The end of all. The time to end this story and say the moral to all engineers.
……. Gokul's face seemed thoughtful and he gave me a puzzled look. I know he is thinking of something obvious to him but couldn't put it clearly. He was starring at me for sometime and he said THAT….
"Isn't this already available?"
I gave a plain but clear answer, "No".
He took the mouse and started selecting all the zip files in the folder. Then he right clicked it.
All this time, I was wondering what he was trying to do.
He went to the WinZip menu and clicked "Extract to". It asked for the destination. My face started to pale. "No! Not that", I said to myself. He gave some destination folder. "Please!!!!!!!!! I was trying this for hours. This mustn't happen" Then he clicked "Ok". (((((((((((((DOOM)))))))))))))
All the zip files were extracted to the destination folder.
My marvelous Zippo Project was already implemented in WinZip. Please with his work, he smiled at me and left.
He came!!!! He saw!!!! He screwed it up!!!!!

Moral of the story:
Its nice to explore new things. But before that, examine if its already explored.
Don't search for Ghee when you have butter at hand.