my blog

Category: Tech

A small firefox tip

In firefox, when you type a search query in the Location bar it goes to the Google’s search by name service.

This rocks. For example: you type IMDB departed in the location bar and hit Return, it will go directly to the IMDB page for The Departed. No more navigating 2-3 pages for looking up an IMDB movie 😀

technorati tags:, , ,

Wireless LAN : How to prove that it sucks

We all know that WLAN is sucking. There may be reasons (valid / invalid) but I somehow feel that the concerned authorities still feel that it is not “their” problem, or it isn’t slow enough to be a “major” problem yet. (Logically that could be the only explanation that accounts for the inaction – assuming that the “concerned” people are rational hbs). .NB -> hb = human being

How to benchmark WLAN’s performance

Lets make a utility. That sits in the system tray. It monitors the AP you are connected to, your signal strength, your ping time to 200 and your packet loss. Let this utility upload the data to some server. Or a webservice running on a server. We can make the methods of this web-service public.

Then, we would have some data to show that wireless actually sucks and sucks enough for the “concerned” people to do something about it.

Technically, since we all feel that it sucks, the “concerened” authorities should write this. Anyhoo, if for some reason they are reluctant then let my gre finish. I will write this utility. Or if someone wants to write it please do go ahead.

the internet

This post is a complete fabrication. No portion of this post is true. It is intended in best of humour.

What if you were the sysadmin? And you were asked to explain why the internet was so slow. Here are some responses …
Response 1

Since we have a wireless connection, the actual throughput depends on the weather.

Response 2

Since we have a wireless connection, mobile phone signals interfere with it. So, if everyone was to stop using mobile phones we would get better speeds.

Response 3

We have implemented a dynamic load balancing algorithm at the proxy server. Any IP that is not using the internet gets priority. We are going to publish this in a reputed journal. And then you all can kiss our asses.

Response 4

Its not the problem with our internet connection. Its just that the particular site that you want to open is being DOS’d at that time

Response 5

Its the ISP

Response 6

We are running a warez / pr0n site. We are going to be floating in $$$$. So long jackasses.

Response 7

Read BOFH. Your life is way better than that.

Response 8


Response 9
Because we also like to use the internet. At full speed

Response 10


PS – If anyone has a smart ass comment please do comment 😀

PS1 – This post was inspired by siddarth ravi M

PS2 – I have not studied for a day.

PS3 – If someone can implement Ranta’s idea it’d rock.

the french beard and secure p2p

going home soon. each time I go home its the same story. people comment on either I have grown thin, or my pant's trimmings at the bottom are torn, or some other such thinga-ma-jig.

So, this time I am thinking of being proactive. Giving people something to comment on …

The only decent idea I have come up with thusfar is growing a french beard 😀

Now, if I had a digicm or something I would post pictures of before and afted ….

anyway, will do it before I leave so people who want to cheer up can have a look at around 11 tomorrow …


On the internet it is possible to be anonymous on a peer to peer network. However, when we consider such a network on a LAN anonymity becomes harder to achieve. The fact that someone can just do a reverse lookup on your IP and find out who you are can be irritating to some.

Tipo suggested authentication as an alternatvie. Authentication based on some public serverr. The problem with such a scheme seems to be the irritation that it would cause. Imagine having to type a username / password each time you log in. Furthermore it again is not very secure.

The crux of the problem is that identification is easy based on an IP / MAC address. The only way that I can see of circumventing that is to put a proxy in the middle. Of course, with the amount of data transfer that occurs over a p2p network there would be huge load on said proxy.

So, if someone can come up with a way to implement security and anonymity over p2p please ping me …

PS – parag woke me up at 1130 today. I thought it was 1:00 PM and am quite pissed

PS1 – bad luck for lab 328 people who have to endure constant shouting at night.

PS2 – going to rewrite the indexers when I come back
PS3 – target for the post is 13 ps's

ps4 – dota rocks …

ps5 – my keyboad is really dirty

ps6 – the room is a mess

ps7 – arun has mnm's. they are like foreign gems. they rock.

ps8 – siddarth studying the whole day for CAT. damn u

ps9 – i cant think of more ps's …

ps10 – oh yeeh, there is a    squeak in my room,

parag woke me up, i thought it was 1 instead of 11

Unicode and Internationalization

This is something that they dont teach in college.

So, rather than learning it the hardway and spending a good three four hours struggling with it (if you are lucky), or fighting a lawsuit by some japanese guy who cant understand his mail or something because your software cannot read unicode (if ur unlucky), i'd suggest you give this document a look.

listviews in win32


This is a highly specific and technical post. You may get bored out of your skulls.


Recently have worked a little with listview controls in win32 …

  • In icon mode listviews tend to chop off the first pixel with LVS_EX_BORDERSELECT enabled. Dunno why, seems like a bug.
  • In icon mode if you want to display checkboxes next to the items with BORDERSELECT enabled then you are in trouble. THe checkbox is drawn so close to the icon that the border overlaps it and it looks ugly. So, create a state image list and add it to the listview with two icons of a checked and unchecked state, leaving enough space around the right for the line of the BORDERSELECT to draw over 😀
  • IF you enable flat headers by changing the style of the header to style & (~HDS_BUTTONS) then you wont get LVN_COLUMNCLICK notifications
  • TO change the background colour of listview headers put a custom draw header. Subclass the listview and in the OnNotify handler look for NM_CUSTOMDRAW. There in CDDS_ITEMPREPAINT put in a SetBkCOlor(<hdc>, <color>) to set the background colour of the listview

Hopefully this helps some poor soul when he is trying to get listviews to work well. Mostly, I spent a heckuva lot of time on google looking for the above issues. 


PS1 – got a lot of work

PS2 – oblivion rocks. it simply does 

a project

over the past few days it seems to me that we need a better way of categorizing files in IIIT.

THe situation here is different. With a LAN, there seems to be a lot of media around. However there is no effective way of finding this media. IMHO, this should be provided by the filesystem. However, in my knowledge there is no filesystem that enables users to share files and search them quickly. Maybe WinFS may address that problem. THe inherent problem with current filesystem’s seems to be the inability to locate data that is required.

Therefore we use applications on top of the OS to provide us this functionality. We use DC or Google Desktop Search or something like that to do this. And all these softwares do is index the files for faster search.

Anyway, at the rate at which new stuff is being added in IIIT its almost impossible to keep track of who has what and where to find that. What is required is an application that can solve the following

1. Allow users to share files

2. Allow users to download files

3. Have a system that enables a user to inform everyone else of something new.

This could be of the form of a subscription based thing wherein a user just tells the system – “I am interested in movies” and whenever someone adds a new movie the system pings the user saying “so-and-so added this movie”

The system should also be able to track the history of a file i.e. we should be able to tell who had what so that if someone actually went and backed it up on some removable media the system should be able to tell that. (what a bad sentence ;()

Technically, implementing this would be a nice thing to do. Direct Connect already has a lot of such functionality. What we need is a server side plugin which keeps track of media and improvements in the UI for DC which will make it easy to add information about new stuff.

DC++ btw is open source. Also, we do have a basic indexer for files on direct connect. Also, there is a library for the Direct Connect protocol. I have all the above stuff on 14.6 except the source for dc++ (which can be dwnlded from the net ). So if anyone wants to give it a shot just mail me and I will send the source ….


PS – exams over, SE was an unqualifiable disaster. It just doesnt get worse than that

PS1 – life sucks as of now, too much work

PS2 – canteen opening yaay

PS3 – normal posting will resume from next post …

tagged and stumbling around

The internet is a big place. Literally.

I never actually realized how big it is until I downloaded Stumble. Its an extension for firefox. What you do is pick some categories that you like and Stumble. It will then take you to a web page matching that category which other users have liked. And trust me, the bloody thing actually works. I’ve spent a total of 6 hrs in 2 days just browsing on arbitrary websites (which has led to serious neglecting of all types of work). Some of the stuff I have found is given in the post script.

Now to the harder part. I was tagged by Spawn. The tag is to post five weird things about myself. And this is kind of a hard tag, not one of the standard tags which say list five celebs you like and all that fritter fratter rot and what not (nice phrase isn’t it).

  • Weird thoughts randomly float into my head. Really weird thoughts. For example, me, manish etc .. were jabbering abt the new walkway being constructed right through the round thingie in front of OBH. Manish in particular was saying that BLN would just knock into the lamppost anyway so why build it. As soon as he said this, I (it must have been me because no one else is capable of thinking for me :?) thought what if we put kerosene on the grass and set it on fire. Would that help them build it faster??
  • I plan alot. Specifically, I create a brilliant monthly, weekly, daily and hourly schedule. All my tasks are well listed. I even have an “Active Desktop Calendar” to aid me in this. Sadly, for the past 20 or so years this planning has never succeeded. There have been so few instances when I have actually stuck to the plan that I think that someone is actively plotting against me. Consider today (Sunday). My plan was
    • Wake up at 11:00 AM
    • Play chess / do BC till lunch
    • Eat Lunch
    • Finish Robotics
    • Read WDM
    • Eat Dinner
    • Play CS
    • Sleep

What happened was something like this ….

    • Woke up at 1230
    • Ate Lunch
    • Did BC
    • Played CS
    • Ate Dinner
    • Played CS
    • Played Warcraft
    • Slept
  • My impeccable (is that the right word?) belief that someday I will learn to either sing or draw. However as of now that seems a distant dream. Given my hand-eye co-ordination (which is undoubtedly better than an emu’s) this may seem to be an impossible task …
  • The ability to sleep a heck of a lot is downright weird I’d like to say. A good chunk of the populace at this place seems to manage just fine on six hours of sleep. I on the other hand like a healthy 8-9 hours for good measure and an extra 1.5 in se / compilers / robotics is like dessert 😀

Anyway, its 0200 hrs and I’m sleepy. Also, of late I’ve been sleeping at 0400 hrs, a routine that I’d like to break. So good night ppl …

Oh, and before you go, I pass this tag on to …

1. Vishnu Kumar Modi

2. Sriram A.

3. Anjul Patney

4. Anand Vasudev (even if he does not blog he’d have smthng interesting to say here…)

5. Siddarth Ravi M.

6. V. V. Harish Baba

PS – some links found while stumbling
Homer Simpson’s Words of Wisdom

Movie-A-MinuteSoftware Engineering

communication skills – zefrank

The Art of Computer Game Design

How to Design Programs

How to be a Programmer: A Short, Comprehensive, and Personal Summary

Computer Languages History (preview)

enabling remote desktop :D

go thr to enable remote desktop on a pc where remote desktop is disabled.

-thx to fauji