Practical Technology

for practical people.

Instant Messaging Clients

Somehow, some way, people who are new to Linux have gotten the idea
that Linux has limited IM choices. Since the Unix family was the first
to have popular IM clients (with “talk” leading the way), that’s more
than a little silly. It is true that if you want the latest AOL
Instant Messenger (AIM) features or MSN Messenger you’re out of luck,
but there are many other clients to choose from, and some will let you
talk to your buddies whether they’re on AIM, MSN, or even Yahoo!.

That last part is very important. People sometimes think that IM
clients are chosen for their technical excellence or features. No,
they’re not. Forthcoming research from Ferris Research shows conclusively
that we choose our IM clients based on what services our friends and
coworkers are already using.

If it’s for business, many other factors come into play, such as
security, message archiving, logging, and interoperability. Even so,
I suspect that the services that the CIOs and CEOs use at home
probably get as serious a look as the corporate IM packages.

Linux IM clients do tend to have fewer features than their Windows
counterparts. On the other hand, some IM users aren’t crazy about IM
clients that include video conferencing, file transfers, games, N’Sync
wallpaper, and the kitchen sink. If all you really want is good, solid
IM service that will let you talk to the people you want to talk to,
then there’s sure to be a Linux IM client for you.

How I tested

While this isn’t a comprehensive survey of Linux IM clients (by my
count, there are at least a dozen ICQ clients alone), it is an
overview of some of the best and most notable IM clients available
today.

I connected, when supported, with users on AIM, Jabber, MSN, and
Yahoo! servers for chatting and any other basic functionality that
the client claimed. To all the developers’ credits, I rarely found a
feature claim that their clients didn’t back up to at least a usable
level.

That said, most of these programs are still in beta, and you will run
into glitches. None of these blemishes ever got in the way of using
the clients for their main purpose, but if you push their limits,
don’t be surprised if you run into some oddities. None of them,
however, were so bad that simply closing and reopening the client
didn’t repair the problem of the moment.

Another thing to keep in mind is that if you expect these text
messaging clients to also work as videophones (as their Windows
cousins do), you’re in for a disappointment. Yes, you can do text
messaging. Yes, you can do file transfers with most of the clients.
But if you want to see and hear grandma in Nebraska, none of these
clients are able to do that job as well as the Windows clients. For
my tastes, that’s not a problem. If I want to do video-conferencing, I
want a real video-conferencing program, not an overloaded IM
client. Your viewage may vary.

The programs

AIM

If you want it, you can have AIM
running on your Linux workstation today. You might not want to,
though. The latest Linux edition dates from August 2001 and is several
iterations behind its Windows big brother. Last spring and summer, AOL
was taking AIM on Linux seriously. Today is a different story. While
no one at AOL would come right out and say the project is dead, it’s
pushing up posies.

Still, once installed, with a modified GTK library, it does give you
all the AIM basics, and if that’s all you need, it’s all you need. It
should run on most Linux desktops of July 2001 or later vintage.

Gaim

You may not want bother with AIM for Linux, though, because Gaim out-performs
it. This Open Source IM client works with AIM, ICQ, Jabber, MSN,
Yahoo! Messenger, and more IM systems than any of the others. If you
want one client to talk to everyone, Gaim is it.

The newest version, despite its beta number, is much more stable than
previous versions and is now as steady as any IM client I’ve
encountered. While Gaim is meant for GNOME, you can run it flawlessly
with KDE with the appropriate tweaks.

It’s not as feature-packed or as pretty as Trillian on Windows or Epicware‘s Open Source Fire.app on
Mac OS X, but another point in Gaim’s favor is that you can add to its
utility with plugins like a spelling checker or an RC5 encryption
system. You can only encrypt sessions between Gaim clients, but more
and more business users want that kind of protection, and relatively
few clients deliver it today.

Everybuddy

Everybuddy is
another Open Source project that tries to talk to all major IM systems
and it does a pretty fair job of it. While not as full-featured as
Gaim and slightly rougher around the edges, it’s a fine program in its
own right.

Transferring files over it can be daunting, with some uploads and
downloads unsupported. For example, the site says you can download
files from your MSN friends, but, in the current RPM, you can’t. That
feature is still being tested.

On the other hand, Everybuddy does have a few interesting features
that, to the best of my knowledge, are all its own. For example, you
can use a filter with it so that you can try to talk to someone
in another language using AltaVista’s Babelfish as your translator.
Thanks to Babelfish, this is more amusing than useful, but it does
show that the developers have an eye to the future of IM.

Gabber

Gabber is a
GNOME-based IM client for the Jabber family of Open
Source, XML-based IM programs. Jabber is the most popular IM service
after the corporate threesome of AOL, Microsoft, and Yahoo!. You can
use gateway programs with it to talk to AIM, MSN, and Yahoo! users,
with the usual proviso that these may not always work.

Gabber, unlike Gaim, is much more picky about running in GNOME than
KDE. While I was finally successful in getting it to run in KDE, more
casual users should be running GNOME if they want to use Gabber. That
said, once up, Gabber ran fine, although I did run into some odd
crashes. Still, Gabber is a young program and shows promise,
especially with its very attractive user interface.

Kinkatta

Kinkatta is a
pure AOL IM client without the other IM service trimmings. It is a
solid, reliable client.

A labor of love by chief developer Benjamin Meyer, Kinkatta has a few
features that other clients don’t have, including the ability to print
directly from the chat window and some advanced message logging
features.

Licq

The ICQ for Linux
site
declares that Licq is the best ICQ
client around. Who am I to argue? I’ve tried the others, too, and if I
had to have one client and it had to be just for ICQ, Licq is the one
I’d pick.

Why? Well, not to put too fine a point on it, but the program just
shows that more elbow grease has been applied to its look,
functionality, and speed than most of the other ICQ
clients. Specifically, I like the skin support, the file transfer
mechanism, the user search capacity, and on and on. If you want an ICQ
feature and it’s not in Licq, it may not be worth the having.

Yahoo! Messenger

One of the major IM companies, Yahoo!, is taking Linux IM
seriously. Its neat Linux
client
, while not as fancy as its Windows clients, includes such
bells and whistles as access to user profiles, stock reports, and
email access.

Of course, using the Web and HTTP for this instead of packing it all
into an IM protocol helps a lot. The program is, however, optimized
for Netscape. If you use Konqueror or another browser, you may have to
do some tweaking to get Yahoo! Messenger and the browser to
work well together.

Yahoo!, unlike AOL, is updating its Linux client on a regular
basis. The latest build is from this summer, and I’m told newer
versions will be out shortly. Alas, it’s not Open Source. Despite
that, YM actually has the widest OS support of all these programs. In
addition to its Linux builds, YM also comes in versions for SunOS and
FreeBSD.

YM is also limited in that it only works with Yahoo!. The good news
about this, though, is that YM will still be working come the day
that the more universal IM clients are having fits with the major IM
services.

The one for you?

Again, it really depends on what services your friends are on. For ICQ
fans, Licq is the one to beat. For personal use, though, and as
someone with friends and coworkers on all the IM networks, Gaim is my
favorite.

If you want a business IM client that works with the outside world, YM
deserves your careful attention because, unlike AIM- and MSN-dependent
clients, it’s the most likely to work today and tomorrow.

You should also think about Gabber because Jabber seems posed to
become a major, open IM server force in its own right. Its other
advantage is that if you want an internal business IM system, you can
simply install a Jabber server, and, with the right firewall settings,
you can have your own internal Open Source IM system for a minimal
investment.

Mission interoperability improbable

Gaim’s one big problem, along with all the universal clients, is that
the major IM server companies, AOL (which owns both AIM and ICQ),
Microsoft, and Yahoo!, have no reason to want unauthorized clients to
use their systems. Worse still, they have several good reasons to
block IM programs like Gaim, Everybuddy, and Kinkatta from their
servers: advertising revenue from their proprietary clients, traffic
on the last mile to their servers, perceived security holes, and
cross-licensing deals with other software vendors, such as AOL
enabling Lotus to use AIM servers with Lotus’s Sametime client.

Because of this, AOL and Microsoft have both blocked access to their
servers from non-authorized clients at times. While users want
interoperability, IM companies aren’t interested in supporting clients
that don’t contribute to their bottom line.

Currently, message protocol changes are used to block unwanted
clients. AOL, for example, uses two protocols for AIM. OSCAR is the
proprietary protocol, and there is no published specification for it.
IM clients that use OSCAR, like Gaim, can find themselves blocked from
the service if AOL fiddles with the protocol. So far, the free IM
client programmers have been successful in reverse engineering these
changes so that new versions of their clients will work with AIM
again. TOC, on the other hand, is a simpler, well-documented Java
protocol that AOL uses in its Java-based “Quickbuddy” AIM client, so
many free AIM clients, like Everybuddy, use TOC.

The bad news for TOC developers is that AOL hasn’t worked on TOC for
some time, and it’s not nearly as functional as OSCAR. For example, a
TOC-based client can’t support buddy icons or voice. On the other
hand, AOL hasn’t shown any signs of blocking access to its AIM servers
with TOC, while OSCAR is changed fairly often.

While open protocols like Jabber and Simple
(which is likely to be adopted by AOL and Microsoft) offer a way out
of this programming problem, it’s not likely to stop IM service
providers from eventually blocking non-authorized IM clients using
server-based authorization schemes, like Microsoft Password and
Project Liberty, which is supported by AOL.

Editor’s addendum: Console Clients

This review was adapted from a NewsForge article which only
discusses GUI IM clients, so I want to put in a word for some of the
more popular console clients.

The Unix console, of course, is where realtime Internet
communication began, and you’ll find talk/ytalk/etc. in most *nix
distributions if you need it to talk to someone or if you and a friend
just want to feel retro.

The more mainstream console IM clients, like the GUI clients, are
divided between those that are made to connect to one IM system and
those that work with several.

mICQ

mICQ is the
grand-daddy of console ICQ clients. It still has the same minimalist
look and IRC-like interface that it had when I used it years ago, but
has developed a respectable feature set over the years. If you want
simple ICQ access, it may be for you.

naim

naim is a
wonderful AIM client with a unique and easy-to-use interface. Since
it uses TOC, it’s continued to work while other clients have scrambled
to catch up to protocol changes. If you want a simple, stable AIM
client, naim is it.

Ari’s Yahoo Client and gnuyahoo

The traditional choice for dedicated Yahoo! chatting on the console
is Ari’s
Yahoo Client
. Unfortunately, it’s recently become a victim of
Yahoo!’s ceasing to support clients based on older versions of
Messenger. Until that’s worked out, you may want to try your luck
with the newer gnuyahoo.

centericq

IMHO, the greatest of all console IM clients is the multi-protocol
centericq.

I’ve sometimes wondered why a good console Jabber client has never
appeared. The only one that’s even worked for me is IMCom, which is rather
primitive. I was using Everybuddy when I first heard about Jabber,
and I expected a console Jabber client to appear quickly; I thought it
would be a common geek itch waiting to be scratched. Unfortunately,
nothing surfaced, and when I cut back on my use of GUI applications, I
ended up with three screen windows devoted to IM clients.

centericq, despite what the name implies, came to my rescue at
last, not as a Jabber client, but as the child of someone who was
willing to add support for many protocols on his own. centericq now
boasts support for ICQ, Yahoo!, MSN, AIM, and IRC, and has an
excellent interface and a huge number of features and configuration
options. The centericq mailing list is lively, and development is
continuous. No matter which IM service(s) you use, give centericq a
try.

A version of Instant Messaging Clients was first published in FreshMeat.

Comments are closed.