Computers as thugs

user warning: Table './drinking_drpl2/watchdog' is marked as crashed and last (automatic?) repair failed query: INSERT INTO watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'flickr', 'Could not connect to Flickr, Error: Forbidden', 'a:0:{}', 4, '', '', '', '', 1519127560) in /home1/drinking/public_html/rothwerx/modules/dblog/dblog.module on line 146.

Jeremiah - Posted on 15 February 2008

Zeroconf (bonjour) seems to have a lot of potential and it's something I've wanted to learn for a while now. So I checked the book out with my O'Reilly Safari Bookshelf account and started reading what I thought would be another dull, dry networking book. I'm not far into the book, but so far I've been pleasantly surprised at how entertaining it is. I've even laughed out loud a couple times.

Here's a sample from a discussion on link-local addressing:

Two devices fighting over the same IP address is like two people in a half-empty cinema fighting over the same seat. They can either sit in different seats and enjoy the film, or they can spend the entire time continuously punching each other, in which case, neither will get to see any of the film and they'll disrupt the people around them too.

The analogy of someone trying to make you move to another seat is the way many people think of the situation, and while it's accurate to an extent, such anthropomorphization of computer situations often leads people to incorrect conclusions. As a person, if you were sitting in a half-empty cinema enjoying a film and, halfway through, some thug came and hit you, then quietly moving to another seat might seem like a weak, cowardly response. The manly thing to do would be to stand your ground and refuse to move. Computers are not people, though. They have no feelings or ego. A computer programmed to meekly select a new address is not going to feel bad about it. If, instead, the computer were programmed to fight forever, then it would do just that. It would fight forever, without any regard for the consequences or benefits. Two computers programmed to fight forever over the same IP address would do just that. Neither could do anything to stop the other from trying to use the address; neither would give up trying to use the address itself. Neither would succeed in achieving anything except causing disruption on the network.