j n tata and unix.

On a fine Friday afternoon, bhOndOO receives a one-line email from his advisor, Prof Krishnamurthy.

bhOndOO, can you meet me immediately in my office?

bhOndOO, as you can guess, is terrified. Within two minutes, he has thought of all the dangerous possibilities:

  • He wishes to scold me for no progress on the algorithm.
  • He will stop signing my scholarship bill.
  • He heard me consulting the junior.
  • Gullu mailed him something against me.
  • He came to know about my blog.

bhOndOO closes eyes, reassures himself that he will face anything boldly, takes a deep breath, opens his eyes, and rushes towards his advisor’s office.

“May I…”.
“Yes bhOndOO, come in.”.

After half an hour, bhOndOO comes out of Prof Krishnamurthy’s office. He is walking slowly towards Computing Lab, looking down, face gloomy. BenJi comes from the opposite side and smiles — bhOndOO does not notice him. BenJi is surprised, but goes past bhOndOO, since he is in a hurry. bhOndOO enters Computing Lab.

“Hi.”, the familiar (and special) voice makes bhOndOO come back to his senses.
bhOndOO smiles and hears himself saying, “Hi!”.
“Is everything alright?”.
“Ya…, no…, I mean, Yes, everything is fine.”.
“Any problem?”.
“No, no. I am coming back from my advisor’s office.”.
Shami leans forward and asks softly, “Did he say something?”.
“No, no. He just wants me to prepare a webpage for registration of the Centenary Conference during the weekend.”.
“Oh! Then why are you tensed? Because of lack of time?”.
“No, I am just wondering what technology should I use such that I can impress him with my work! Dotnet, JSP, or PHP?”.

Shami keeps looking at him, without getting impressed, “bhOndOO, this is not your research work. You should give minimal time for this. Don’t try to impress anybody. Just finish it. What web technologies do you know out of this?”.

“Actually, I know nothing. I only know some CGI programming with PERL”.
“Then just do that. Don’t try any hi-fi stuff. It will take longer.”.
“Okay.”, bhOndOO agrees.
“Where will you host the webpage?”.
“Currenly, I will prepare it on my homepage in CSA. On Monday, we will host it on Alumni Cell website of IISc. It seems it is a bit urgent.”.

bhOndOO, with full concentration, starts working on the webpage.

What all will I need? Well, I need CGI access, which I have. And what else? Oh! Ya! I need a backend database to store all information about new registrants.

He checks the machine hosting his homepage and comes to know that it does not have mysql, postgres or any other database. Good start., bhOndOO gets frustrated. He decides to store the information in flat text files and write function wrappers so that he can change the implementation without much trouble if he has to use a database on Alumni Cell website.

At the end of Friday, he has prepared a layout and a form to fill in for new registrants. He goes back to hostel, sleeps and comes back early on Saturday. He resumes work and by the end of Saturday, his website can register new people and they can login and change password. bhOndOO is very happy. I think, I will meet the deadline.

On Sunday, bhOndOO adds a few more capabilities and a few more checks to the registration website and in the evening sends a mail to Prof Krishnamurthy:

Dear Sir,

You can check the registration page at http://people.csa.iisc.ernet.in/nasre/cgi-bin/cc/login.pl. Please let me know if any changes are required.

bhOndOO.

bhOndOO gets relaxed, goes to hostel in a joyous mood, and after dinner, sleeps peacefully.

On Monday, he receives an email from Prof Krishnamurthy, praising his work, which bhOndOO reads 8 times. After day-dreaming, he realizes that he has to move the code to Alumni Cell server whose login details are given in his advisor’s mail. He quickly copies the PERL files to /var/www/html/centenary/ and checks the Alumni Cell website: http://alumni.iisc.ernet.in/centenary/index.pl. Oh! The layout has changed, bhOndOO exclaims. When he reads it, he realizes that it is Error 404: Page not found. bhOndOO checks directory again, double-checks file names, permissions, tries to refresh the page 8 times, but it does not work. bhOndOO gets frustrated and exclaims, Who is this TOMCAT?

Finally, bhOndOO, our techie, tries this, locate index.jsp and finds that the index page of Alumni Cell website is /opt/netbeans-5.5/enterprise3/apache-tomcat-5.5.17/webapps/ROOT/index.jsp. “What a predictable path!”, bhOndOO replies.

He then copies his PERL files to a directory and tries again, but TOMCAT says Error 403: Forbidden. bhOndOO tries several stupid ways, and ends up failing in every one. Finally, he realizes that May be, CGI is not enabled on this server!. Google comes to the rescue and within five minutes, bhOndOO has uncommented a few lines in the APACHE configuration to enable CGI. TOMCAT is stubborn, Error 403: Forbidden.

bhOndOO Googles and does not find any relevant information. Finally, he takes a break, goes to T-board and a spark of common sense hits him. He rushes towards CSA department and does something on Alumni Cell machine. He checks http://alumni.iisc.ernet.in/cgi-bin/cc/login.pl and it works. bhOndOO starts dancing in the lab. And by the way, the something is simply restarting apache.

After bhOndOO confirms that everything is working on Alumni Cell website, he goes to his advisor and tells him happily that the registration page is up and running. Prof Krishnamurthy is very happy with bhOndOO’s quick solution and tells him that he would show it to other conference committee members.

bhOndOO gets into the mood of Advisor praises and Experiment succeeds. He goes to mess for lunch and comes back to see a mail from his advisor.

Dear bhOndOO,

I showed your registration page to other committee members and they appreciated it well. However, one suggestion is to have it in JSP, since it will look much neater and is supposed to have better security. So, can you migrate the pages to JSP? It would be nice if you can finish it by Wednesday.

bhOndOO knows that the reasons cited are not at all true and he feels that remaking the webpage in JSP is actually unnecessary and waste of time. He goes into the mood of Why did I choose this advisor?

Frustrated, bhOndOO logs into the Alumni Cell machine and checks the existing JSP code. bhOndOO has never programmed in Java and various classes and long function names explain to him that JSP is not his baby. He thinks for some time, decides something and opens pine:

Dear Sir,

I do not think, I have expertise to code in JSP. I can learn it, but won’t be able to meet the deadline of Wednesday. I suggest, you ask someone from webteam to code it. If any assistance from my side is required, I am ready to help.

I am sorry.

bhOndOO.

bhOndOO, before sending the mail, reads it again and again. He feels bad, not because he could not impress his advisor, but because his efforts have all gone waste. He starts cursing JSP, various web technologies available, TOMCAT, his advisor, IISc and J N Tata. He feels like crying, presses Ctrl-O (to postpone the mail) and leaves the lab.

His feet take him to the statue of J N Tata in front of the main building (some people in IISc believe that if you get frustrated during your research life, you should come to this place — you will be inspired and rejuvenated). He looks up at the statue and asks, “What’s the use of this institute? What’s the use of celebrating 100 years? Why do we have such faculty members in the centenary committee? Why did you create such an institute where people who don’t know the security aspects of JSP and PERL dictate what technology to use?”. bhOndOO looks down, nods in negation and sighs, “But why am I telling all this to you? How will you understand? You won’t know the difference between JSP and PERL!”.

Eight seconds pass. There is a silence. bhOndOO’s last statement is echoing back in his ears, You won’t know the difference between JSP and PERL. A sudden thought interrupts bhOndOO’s thinking: How will UNIX know the difference between JSP and PERL?

bhOndOO’s eyes get bigger, his heartbeat rate increases, he quickly turns and starts running towards CSA dept, he looks back at the statue of J N Tata and says, “Thanks!”.

He does something, feels happy, and sends a mail to Prof Krishnamurthy:

Dear Sir,

Please check the link: http://alumni.iisc.ernet.in/cgi-bin/cc/login.jsp

bhOndOO.

Prof Krishnamurthy praises bhOndOO again, the conference committee agrees, and the page gets linked from the Centenary Conference website for Online Registration.

So, what bhOndOO did is this: ln login.pl login.jsp.

Advertisements

Tags: , , , , , , , , ,

12 Responses to “j n tata and unix.”

  1. Satish Says:

    Excellent.

    This technique is very much required for most of the software engineers.

  2. iisc Says:

    Thanks Satish. I am sure, being a hacker yourself, you liked the trick more than the story.

  3. Sanchit Says:

    but see… don tell me the profs didn realise that the .jsp file was in the cgi bin folder… which is absolutely clear a thing… ummm…

  4. iisc Says:

    Your doubt is valid, Sanchit. But professors have one small problem with technologies — they feel that they are never fully abreast with them, unlike theories. bhOndOO got benefited exactly with this attitude.

  5. Vamsi Says:

    i still can’t believe this !

  6. iisc Says:

    :). Thanks Vamsi. bhOndOO likes to receive such responses!

  7. Urv Says:

    Awesome thinking bhOndOO 🙂 And Tomcat path errors are hell annoying!!

  8. iisc Says:

    Thanks a lot, Urv.

  9. Prachee Says:

    Cool idea!!

  10. iisc Says:

    Thanks Prachee.

  11. Heartburn Home Remedy Says:

    Not that I’m impressed a lot, but this is a lot more than I expected when I found a link on Digg telling that the info here is quite decent. Thanks.

  12. gokul Says:

    awesome trick 😀

    What I’ve learnt from several of your blog posts is that it might be a good idea to talk to statues of JN TATA whenever you’re in trouble.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: