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