VNIT has always presented us with challenges. Be it walking nearly 200 meters to take a shit (block 6 two years ago) or mugging up meaningless slides which have nothing whatsoever to do with the subject matter. At VNIT, we also deal with incompetence of astronomical magnitudes at different levels. The various levels of the VNIT administrative hierarchy are inundated with such colorful individuals. Ease of reference and lethargy compel us to refer to them as “Oompa Loompas” as short hand for the more detailed description given above.

Moving on, we have divided this recent experience in two parts. We will call Chapter 1 “The Mystery of The Missing Mouse” and Chapter 2 “Ancient Computer meets Antediluvian Printer”.

Chapter 1 – The Mystery of The Missing Mouse

Some (most) of you must know what VSF is/was. Fewer among you will be aware, however, as to how much preparation (insanely large) went into VSF and how much time (let’s just say not quite enough) we had for it. In order to facilitate the smoother working of the organizing team, we decided to have a base of operations in the erstwhile TT room (soon to be returned to its former glory… after we’re done cleaning up, of course 😀 ). This involved setting up a computer there (Note: we use the term “computer” lightly here). So, in order to obtain said “computer”, we go into the HOD office (in future, we will refer to him as Oompa Loompa-1 or OL-1) from where we fetch a machine which would not look out place in a museum of modern history. We will spare you the details but suffice to say that we set the darned thing up in aforementioned base (which did not even have proper plug point). Now comes the fun part. OL-1 apparently had a hitherto unknown attachment to his mouse. Once, we were done setting up the computer, OL-1 decided to regain possession of his precious while we were out. In the meanwhile, we had managed to obtain a printer (once again, we use the term “printer” very lightly here) from OL-2 aka Kaanya. All the pieces in place (except the mouse of course) all we had to do was to make the printer work (sounds easy, doesn’t it?)

Chapter 2 – Ancient Computer meets Antediluvian Printer

Little did we know that fate had other plans. We live in an age where all one has to do to make a printer work is to plug it in the USB port of the computer. However, this “printer” and “computer” are remnants of an older age. As the technologically inclined among you may know, to facilitate this interaction, we needed software which is popularly known as a device driver. Now a few facts in order to get you up to speed on what we were faced with.

Fact 1 – Computer is old and has a virus which would have made the ebola virus look harmless
Fact 2 – Printer (I know this is hard to believe) is even older.
Fact 3 – There is no mouse.
Fact 4 – We did not have the device driver.
Fact 5 – There was no internet.
Fact 6 – Did we mention there is no mouse?

Any non-computer literate (we wanted to use the term “geek” but we were given to understand that this term has negative connotations) would be daunted by the task at hand. But we being who we are (we’ll be putting up a resume page soon :D) took it up as a challenge. Few among you will know how difficult it is to use a computer with a GUI without a mouse (if you don’t know, take our word for it). This would have been moderately complicated with no virus involved. Definitely not complicated enough to merit a blog entry. But the computer virus gave it that extra “zing” which we all want in life. We will try to spare you the harrowing details. Here is the basic summary:

Step 1 – Insert pen drive (which contains printer driver), install pen drive driver software, go to pen drive location and copy paste printer driver on to C drive.

Step 2 – Navigate to printer driver location and complete setup.

Step 3 – Realize that it is wrong driver.

Step 4 – Hence, go back, get correct driver and redo step 1 (we may take the liberty to remind you that there was still no mouse).

Step 5 – Initiate device driver setup.

Now, we thought we had completed our work and were happily sitting back only to see the setup paused to inform us that one of the files was not present in the driver directory. We went to the said directory and saw that the file was indeed present (we later realized that the virus was injecting code into the files which screwed up the CRCs thus corrupting those files…#$@!#@$ virus). We recopied the file from the pen drive to the same location. Doing this once was a pain in the ass. Imagine doing it 20 odd times and restarting the setup each time because the virus made setup window inaccessible. After an indeterminate amount of time had passed the driver was finally set up and we were only left with the comparatively menial tasks of making the printer the default one and testing it. Once we got that done we felt a great sense of accomplishment… some might say disproportionate to what we had achieved …to them our humble response will be ‘_l_’.

After this mind numbing experience, we have a renewed appreciation for the importance of the Mouse in our lives. VNIT has once again succeeded in its mission of forcing us to recognize new paradigms in life which we hitherto took for granted.

This was a joint article by yours truly and pseudo football captain aka Tantrik Assassin 😛

Advertisements

V-Scroller jQuery plugin

January 12, 2010

I was looking for a decent jQuery horizontal news scroller plugin when I came across liScroll. I liked it a lot but it had a small problem – the difference between the last item to scroll-out and the first item to scroll-in had a lot of gap (equal to the width of the scroll area). This means that the wait can be annoying long when the width of the page is 100%. In my opinion, liScroll cannot be modified trivially to reduce the gap (That’s because of the principle on which it works). I decided to make my own plugin based on a completely different principle and call it VScroller (short form for VNIT-Scroller). It is still very primitive (I happened to make it in less than 4 hours ;)) and some parts of the code may not be very elegant. But it works. I don’t intend to add more features to it soon. However, if anyone wants to finish off the hover event for me, I will be more than glad to add their code and give them due acknowledgment.

Features:

1) Lets you specify the width of the gap between the last element and the first element.

2) Lets you define the speed of the scroller.

3) If the gap specified in the CSS is insufficient because the news items are less in number, it adjusts itself.

The HTML markup is as follows:

<!--To be included in HEAD-->

<script language="javascript" src="jquery.js"></script>
<script language="javascript" src="vscroller.js"></script>
<link rel="stylesheet" type="text/css" href="vscroller.css"/>

<!--To be included in BODY-->

<ul id="VNIT-scroll">
<li><a href="#">This is my first news item</a></li>
<li><a href="#">This is my second news item</a></li>
<li><a href="#">This is my third news item</a></li>
<li><a href="#">This is my fourth news item</a></li>
<li><a href="#">This is my fifth news item</a></li>
<li><a href="#">This is my sixth news item</a></li>
</ul>

The following is the CSS code inside vscroller.css:

<script language=”javascript” src=”jquery.js”></script>
<script language=”javascript” src=”vscroller.js”></script>
<link rel=”stylesheet” type=”text/css” href=”scroller.css”/>

html {
overflow-x: hidden;/*Apparently needed for IE*/
}
.news-wrapper{
width: 100%;
height: 1.3em;
overflow: hidden;
}
ul.news-ul{
position: relative;
left: 100%;
list-style-type: none;
margin: 0;
padding: 0;
}
ul.news-ul li{
float: left;
margin:0 0 0 2px;
padding: 0;
}
ul.news-ul a{
white-space: nowrap;
margin: 0 50px 0 0;
}
ul.news-ul li.gapcreator{
width:100px;
}

The Javascript code in vscroller.js as follows:


function max(arr){
var max = arr[0];
var len = arr.length;
for (var i = 1; i < len - 1; i++)
if (arr[i] > max) max = arr[i];
return max;
}
jQuery.fn.VScroller = function(settings){
settings = jQuery.extend({
speed: 0.2
}, settings);
return this.each(function(){
var scroller = $(this);
scroller.addClass("news-ul");
var gapclass = "gapcreator";
var gapcreate = "<li class=\""+ gapclass +"\">&nbsp;</li>";
scroller.append(gapcreate);
scroller.wrap("<div class=\"news-wrapper\"></div>");
var scrollerwidth = 0;
var wrapperwidth = scroller.parent().width();
var widths = new Array();
scroller.children("li").each(function(i){
scrollerwidth += $(this).width();
widths[i] = $(this).width();
});
var numofelements = widths.length;
var newgap = $("."+gapclass).width();
if(scrollerwidth < wrapperwidth + widths[0]){
scrollerwidth -= newgap;
newgap = wrapperwidth - scrollerwidth + max(widths);
scrollerwidth += newgap;
$("."+gapclass).css("width",newgap);
widths[numofelements - 1] = newgap;
}
scroller.width(scrollerwidth + max(widths));/*For some reason, IE 7 and 8 need max(widths) to be added.*/
var initwidth = wrapperwidth + max(widths);
var inittimestep = initwidth / settings.speed;
var currentcount = 0;
scroller.animate({left: '-='+ initwidth}, inittimestep, "linear",function(){
scroll();
});
function scroll(){
var currentwidth = widths[(currentcount % numofelements)];
var timestep = currentwidth / settings.speed;
var schildren = scroller.children("li");
if((currentcount % numofelements) != (numofelements - 1)){
scroller.append("<li>" + schildren.eq(0).html() + "</li>");
}
else{
scroller.append("<li class=\""+ gapclass +"\" style=\"width:" + newgap + "\">&nbsp;</li>");
}
schildren.eq(0).animate({width: "0"}, timestep, "linear",function(){
$(this).remove();
currentcount++;
scroll();
});
}
scroller.hover(function(){
},
function(){

});
});
};

This plugin is released under GNU GPL v3.

VNIT vs IIMB

November 8, 2009

I had gone to Bengaluru to give my AGRE during 4th to 7th November, as some of you might be aware. During this period, I got to stay in the hostels of IIM Bangalore. In this article, I intend to make a comparison  between VNIT and IIMB. I start off  by saying that their campus is beautiful. Not VNIT beautiful, actual beautiful. Following is a list of comparisons that I made between IIMB and VNIT in no particular order.

1. Toilets at IIMB have working flushes.

2. Washing machines for washing clothes 😛 . I am sure that the girls of VNIT won’t have any issues since they have the luxury.

3. Profs over there don’t raid hostels and take photographs of booze bottles and cigarette packets.

4. They use paint on their walls… PAINT!

5. IIMB has 24 hour wi-fi throughout the campus and an ethernet cable in each room. Students can even use laptops in classrooms. Also, they don’t have firewalls that crash every now and then, thus ensuring that they remain connected to the world at all times.

6. Supply of hot water is inside the bathroom.

7. They have an ATM and a bank INSIDE the campus. Not inside-outside like at VNIT. This ensures good service and shorter queues at the ATM.

8. Their mess is great. They ACTUALLY  serve food there. They follow the buffet system instead of the mess-workers-walking-around-throwing-stuff-into-plates system.

9. They have pool tables in the hostel. Need I say more?

10. They have a Java Green right next to the hostels which is open 24 hours a day (For those of you who don’t know what Java Green is, it is an equivalent, only better, of Cafe Coffee Day). It is also about 20% cheaper than CCD.

11. Pranay, this is for you – They have an Amul ice cream store right next to the hostel.

12. They have a canteen and a provision store that are open 24 hours. The canteen is small but they serve really nice Maggi and sandwiches (the quantity of the Maggi is good unlike in VNIT canteen). The difference between the provision store at IIMB and the co-op store at VNIT is that the IIMB guy stocks what the students need, while the VNIT guy stocks what he thinks students would need.

13. Their buildings follow a certain theme. All of them look uniform and have a stone exterior which give them a classy, ancient look.

This will hopefully serve as a review to candidates who aspire to get into the IIMs, particularly IIMB. I would like to thank Pranay for proof reading this article and giving valuable inputs.

Hello world

October 30, 2009

Hello all.

I have started blogging after a long long time. Hopefully this time it won’t be a technical blog. This reassurance from me is necessitated by the fact that people bear the impression that I talk only about technical drab and that I am nothing more than a mechanical robot. People also seem to be under the impression that I am a free-of-cost technical service available 24×7 (some of them actually had the audacity to wake me up in the middle of the night while I was in deep slumber saying “Arey yaar, mera windows boot nahin ho raha hai. zara dekh na?” ). Getting back, I intend this blog to be more about events in VNIT and my association with them (if at all there is any). I hope that you enjoy reading it as I keep updating it regularly.

Regards.

Meher Anand