Chicken of the VNC: Silly Name, Great Software


This entry’s just a quick recommendation for the free VNC client “Chicken of the VNC”. When I was searching VersionTracker for a VNC client, I steered away from it because of its gonzo name, but on my friend E–’s advice, checked it out. It is in fact superior.

VNC, if you don’t recognize the acronym, stands for Virtual Network Computing. It was originally designed for X11 but since it has its own network protocol can work for any VNC server no matter what the underlying graphical toolkit. X11 is already a graphics network protocol but was designed for low-latency, high-throughput LANs, and most often the quick loopback sockets on your own machine. VNC was designed for dealing with ratty old modem connections and employs clever compression techniques to ease your latency pains. The other neat thing VNC does, which X11 does not, is allow multiple clients to view and/or control the same desktop.

There are a number of VNC clients available, for various platforms; what I wanted was a client for Mac OS X that was native Aqua, to let me connect to VNC servers at work running X11. I started out with something straightforward called “VNCViewer”. It’s OK, but commits the sin of “busy-waiting”, that is, hogging the CPU even when it’s idle.

This is a sin most commonly committed by games, which assume that you aren’t using the computer for anything else, and whose architects are used to shouldering aside the entire operating system in order to command the full resources of your box. This basically means that the program is constantly saying “Ready? Ready? Ready?” a hillion jillion times a second, instead of using the provided operating system to await a proper user interrupt. You can tell this is happening by using something like Activity Monitor.

For productivity software, busy-waiting is a serious pain because it makes all the other programs you’re using run more sluggishly, and increase response time globally, so that your entire desktop feels like it’s coated in a light layer of molasses. Worse, with a CPU like the G5, which draws power based on demand, programs that busy-wait end up literally wasting electricity and heat.

All of this background is to point out how important it is that VNCViewer busy-waits and Chicken of the VNC does not, creating a much more civilized and pleasant user experience. The actual native GUI of a VNCViewer is perhaps a little better, but this is hardly the point of a VNC client. Like a good butler, a VNC client should be invisible: it’s a portal to the remote server and its desktop. Chicken of the VNC does this best. Just another reminder that one shouldn’t judge a book by its cover or a program by its name.

Posted: Sun - August 14, 2005 at 01:02 AM        


©