ThinkBlog

philosophy :: psychology :: theology :: technology

22 November 2003

now that’s just hilarious

01:54:35 :: [technology &c.] :: 38 words

My intuition kept telling me to hit the `3′ key instead of `2′ when describing Gaim’s version number; here’s why! A new version just hit SourceForge not even forty-five minutes after I posted that review of Gaim. That’s too funny.

Gaim 0.72 - behold the power of Open Source!

00:14:20 :: [technology &c.] :: 1776 words

For a long time, I’ve been wanting to do a review of Gaim, but held off because I was intimidated. Why? Because there are so many features to this Instant Messaging (”IM”) program that documenting them all properly is a daunting task, and since I cannot help but be thorough, I wanted to wait. But it’s become quite a task in and of itself to tell people by literal word of mouth for the same exact reason. Thus, this review will be my answer whenever someone asks me about one of the best programs for any operating system I’ve Ever Used.

First, an introduction to the context and terminology (jargon). Gaim (pronounced “game”) is an IM program that can connect to various messaging protocols. A protocol is, in this sense, all the rules for transmitting data (in this case, IMs) over a network (again, in this case of course, the Internet). There are generally a couple of different protocols for each service, but so as not to be picking nits, I’ll refer to “service” and “protocol” interchangeably because no one but geeks like me care about the difference.

I’ve been a Linux junkie since January of 1998. Linux in a nutshell is a free, Open Source operating system that is very stable, UNIX-based, and whose learning curve from Windows or Macintosh is becoming less and less steep as time goes on. To put it in perspective, whereas I’ve had to reboot my Linux box once every month or so just for good measure and not for anything critical, often with Windows if you don’t reboot at least once or twice a week, MAX, it’ll crash or throw errors. Furthermore, there’s no Linux “virus” in the sense of a Windows “virus” … but I digress. Frequently.

Said all that to say this: back around 2000, when I started using Linux full-time as my favorite OS, I had to have an IM program to be able to talk to all my buddies. (For the sake of continuity, let’s just assume I had buddies.) So I found Gaim. Since that time it has grown and developed fantastically. Now in version 0.72 and due out with another release very soon, it has since expanded its horizons to include Windows-based computing environments (while retaining its Linux component, of course) and has myriad features for your messaging pleasure.

Okay, the grit

I will, of necessity of time, only go over the Windows version of Gaim. (Because generally everyone who knows enough to use Linux knows enough to use Gaim!)

1. Multiple protocols, virtually infinite accounts.
Gaim supports all of the following IM protocols:

Zephyr and Trepia support have existed before and may yet again. But the most relevant to American users will be the first two (or three, ::gag::). I have numerous screen names for the first two protocols; I can sign onto all of them at once, with Gaim, if I so choose.

2. No ads, no blinkies, no fluff. This one speaks for itself!

3. Logging. You can log, in HTML or plain text, every interaction you have with anyone, even to the point of logging everyone on your buddy list’s away, idle, and online states with time stamps and color-coding to boot. Big Brother may or may not be watching—but you sure are, with all that stuff!

4. Buddy List structure. You can choose whether to show numbers of buddies in your groups; whether to show groups in which no buddies are signed online; and even whether to show buddy icons in the buddy list! From the Gaim website, “The buddy list can optionally show your buddies’ buddy icons. This makes locating your buddies in a long list much easier. When buddy icons are shown in the list, a second line will provide more information about the buddy (status messages, idle times, warning levels, etc.)” Also, there is an option as to how to order your buddy list - unordered, or by online status, or by log size (the people you talk to the most on the top at all times).

5. Aliasing. Remember how I mentioned I had all those accounts? Well, several of my friends online are in the same situation, a different avatar for every occasion! If you want, you can group all of these screen names together so that, if you or your friends sign on with any or all of their screen names, one and only one name will pop up. Furthermore, there is an ability to have an alias for every screenname on your buddy list! Can’t ever remember those funky names like “Cut1eP1eXoXheehee” or whatever kind of ridiculous? Just right-click and give that one an alias!

6. Tabbed IM windows. You can have an arbitrary number of conversation windows open at any given time, and there is an option to put all your conversations on one tabbed window. Even where to put the tabs is optional! These guys thought about everything! There is a color-coding scheme for when a person is typing to you, when they’ve stopped, or when they’ve sent messages; and, of course, the obligatory sound scheme that can be easily disabled or changed with a few simple clicks of the mouse.

7. Themes. You can theme everything from the interface itself (make the Buddy List look all shiny and cute!) to the smileys. Come on, folks, let’s face it: AIM just doesn’t have enough smileys to express those particularly ambivalent and/or mixed emotions! You can download theme packs that will enable all sorts of different emoticons.

8. File transfer. A highly usable file transfer interface.

9. Buddy Pounce. If you’re using a protocol like AIM that doesn’t support offline messaging (or even if you are), you can set buddy pounces. At whatever event you specify (sign on, return from idle, go away, &c.), for any screen name, you can have Gaim pop up a conversation window, signal you with an alert, send a message, you name it. Excellent tool for those times when you want to say something quick to someone who checks their email once a month but can’t be there to tell them in realtime.

10. Different options for idle time. This is HUGE, folks. Let’s say you’re so highly esteemed among your multitudinous colleagues that you’re in danger of being bombarded with IMs every time you bump the mouse or come back from idle to check the weather or your favorite news site to see the goings-on. Or, if you just don’t want to talk to people but still want to be online. You can tell Gaim to figure idle time by Gaim usage—that is, from the times you send IMs to people—instead of Windows usage. So whereas with AIM you’re out of luck, Gaim will retain your idle state no matter what, unless you send an IM. This, of course, is optional, but it can help when you’re just not in the mood to talk (or in other, more sinister cases, of course—ahem).

11. Plugins. Auto-reconnect, system tray icon, history insertion, iconification-on-away, and several other useful tools come bundled with the Windows version to make Gaim more user-friendly.

Interface options. Let’s do a quick rundown of the features this thing offers, the ones that haven’t already been covered.

- Disable/enable graphical emoticons.
- Disable/enable timestamp on all messages.
- Disable/enable highlighting of misspelled words and auto-creation of hyperlinks.
- Ability to ignore colors, fonts, or font sizes (good for people that don’t want to try to read 6pt navy-on-black text).
- Various keyboard shortcuts (Ctrl+{I/U/B} makes text italic, underlined, bold).
- Disable/enable Buddy List buttons (the fat ones that take up all the space, you know the ones)
- Ability to show (or not) idle times, warning levels, &c. in buddy list window.
- Internationalization. What if you’re Polish and have American, Russian, German, Israeli, and Japanese buddies? Neverminding for a moment the fact that if that’s the case and you can speak all of those tongues you need to be a professor of linguistics at a major research institution, you can IM those buddies in their native languages, even if you have all of them in the same tabbed window!

- Proxy support. If you don’t know what a proxy is, don’t worry about it. :)

One man’s treasure…
Gaim is not for everyone, however, and there are certain drawbacks that some may not be willing to accept. Away messages and profiles can contain HTML, but there’s no formatting toolbar to do it automatically, so unless you know color codes and/or formatting tags in HTML and you like cutesy profiles and away messages, you might be disappointed. Of course, if you’re a cutesy geek, then that’s not a problem! Also, whereas with AIM, idle time and away messages are retained upon disconnection and reconnection is optionally seamless, Gaim will let you know whenever you get disconnected by popping up a little dialog box explaining what went wrong and at what time. Useful, but perhaps annoying; and, unfortunately, even when it reconnects you, it doesn’t retain idle time or your away message (there is a workaround—email me, or I might put it on the site). This is not usually a problem with most people, but in cases where roommates are sharing a connection with a faulty Ethernet router or the like, it can become obnoxious.

Still, these are reasons that it’s in version 0.72, and progress is being made by leaps and bounds. It remains the most useful program for either Windows or Linux I’ve ever used, and I hope you find it useful as well.

Gaim - website.

13 November 2003

Linux Tip 005 - “more” or “less”

01:14:35 :: [Linux] :: 503 words

When you’re at a Linux (or UNIX) command line, there are several ways to view a text file without having to open up an actual text editor. One of the most commonly-employed options is “cat”, a program designed to concatenate two or more files together that can also be used to display a byte stream (like a text file, or any other kind of file for that matter!) in text on a terminal. Alternately, the output text of cat can be piped through to another program that acts on that input. There’s no way to stop the flow of text, though, so if you’re reading a text file that’s more than a little under two kilobytes (2KB), this isn’t the best option. Another program is tail, which takes the last ten (10) lines (or, using the -n switch, whatever number you specify) of a text file and prints them out. While this is useful for manually scanning through a large file like /var/log/messages and looking for minutewise changes and other such applications, that’s not suitable for everything either. The most popular choices fall to two applications: more and less, the latter of which is a word play on the former. Neither less nor more read in an entire text file all at once, so if you’re so inclined, you can load up a plain-text copy of Shakespeare’s complete works and read it line for line without worrying about the fact that it won’t all fit into your small bit of RAM.

The “more” program takes a text file, reading it in line-by-line, and prints it to the console (the screen of the command line). It can step through a file on a per-line basis, or on a per-screen basis, but you can’t move back and forth within a file. Furthermore, the types of terminals that more can run on are somewhat limited because of its simplicity.

“less” picks up where more fails, allowing backward as well as forward movement within a file (you can scroll up or down), and there is support for a wide variety of terminals, even limited hardcopy terminal support.1 Furthermore, with `more’, when a ^D is reached (End of File, or EOF character, remember?), the program will “bottom out”—it will terminate, having come to the end of the file! If, for some reason, there are multiple ^D characters, this can perhaps cause you to log out of your terminal (if, for instance, you’re using bash and $IGNOREEOF is set to 0). “less” is not affected by these issues.

Thus, in this case, it can be said (as it has been2!), “less” is more!

[1] A hardcopy terminal is one that prints to (usually) paper, as opposed to a video terminal which prints to a monitor screen. Obviously, Shakespeare’s complete works would be an obnoxious thing to browse on a hardcopy terminal.

[2] mRgOBLIN, on the hh-unix Yahoo! Group, 24 April 2003.

10 November 2003

Linux Tip 004 - 2 ways to quit bash

16:34:15 :: [technology &c.] :: 1108 words

     Most people familiar with Linux or UNIX have become, by necessity or curiosity, have become acquainted over the course of their usage with the Bourne Again SHell, known to most simply as “bash”.1 A shell like bash is a way for the user to interact with the machine locally (sitting at the machine physically) or remotely (as across a network or the Internet as such) without all the superfluous “blinkies” and graphical augmentation that can slow even a LAN2 connection down.3 But the advantages of bash or a text-based connection should be discussed at length at another time.

     When one wishes to exit the bash shell, one usually types “exit” and presses Enter, at which point the shell itself will terminate and, in the case of SSH connections (Secure SHell across a network—encrypted data so as to keep passwords and data private), the connection will be dropped and that instance of the server terminated.

     There is another way of exiting bash that may or may not be more efficient: Ctrl+D is the EOF, or “End Of File” character. When you have a file on your computer, it ends with this invisible character to tell the program that’s reading the file “Okay, you’ve reached the end; don’t go any farther.” Well, so it is with bash. If you want to exit the shell quickly, you can hold down the “Ctrl” (Control) key and press `d’4 to send an EOF character to the shell and force it to terminate.

     Sometimes, though, this is unacceptable. If you want to terminate an instance of `cat’ because, for instance, you forgot to pipe the output to grep so everything from oh, say, /var/log/messages is spewing to your console!5 You can terminate that program using ^D. But if you accidentally press that twice, it could cause bash to exit, which is not necessarily acceptable.

     The bash shell uses an internal variable called IGNOREEOF which, if set to a positive number, will ignore that many ^D characters from the standard input (that is, the keyboard). If you want it to ignore zero EOF characters, you can add to your ~/.bash_profile6 the line “unset ignoreeof”. Or, if you want bash to ignore them, set it to some number in that same profile such as, for example, 10: “ignoreeof=10″.

     Hope that helps; and happy computing!

My thanks to the Happy Hacker - UNIX Yahoo! Group for this information; this Linux Tip comes from the thread on that list from mid-April 2003.

[1] You may notice that I will consistently use quotation marks inside of periods when referring to Linux programs or anything having to do with the command line, even though this is not proper English. This is a deliberate attempt to help the reader understand exactly what commands must be typed—”bash” on the Linux command line will invoke another instance of the shell itself, whereas “bash.” will render a “command not recognized” error.

[2] LAN stands for Local Area Connection; when you are connected through a network as at a corporate office or any way that chains several machines together in a common network that is literally localized (within a room, or floor, or building, &c.) and need not be accessed through the Internet proper. Thus, when you are at work in an office building or dorm room as at a college, you are said to be on a “LAN connection.” Much more loosely, the term “LAN” may become exceedingly generalized to include a direct, peer-to-peer connection between two (or more) computers linked over broadband connections such as DSL or cable. I will avoid the latter definition because of its extremely colloquial (and thus confusingly jargonic) nature.

[3] For those instances in which a GUI (Graphical User Interface, like Windows) is necessary or where bandwidth is not such a concern, VNC is an excellent and highly recommended tool.

[4] To depress the control key and then press another key on the keyboard can be written with a caret and that key in uppercase, though it is understood that unless specified you need not depress the SHIFT key at the same time in order to capitalize it. Hence, `Ctrl+d’ can be simply written as ^D. Furthermore, if you see in any text shell the caret character followed by another visible character, that is another of what is known as a “control character.” A common example is the telnet escape key, ^[; another is the backspace key, ^H. Perhaps the most common is that control character that sends an “interrupt signal” to programs: ^C. If a program is going out of control and locking up your shell, you can usually terminate it with ^C. Try those sometime when you’re in a shell!

[5] Let’s say you have a firewall script running that logs each wayward IP that tries to scan your computer’s vulnerabilities. Well, if you want to scan that file for a specific IP (say 10.20.30.40, for instance), you can run as root—that is, superuser—the following command:
# cat /var/log/messages | grep 10.20.30.40
This is a simple example; notice also that the pound sign (#) is understood, not typed. If you forget to type that last part, you could end up sending all the text of that file out to the terminal (what you’re looking at)—potentially many megabytes of text. Hence, ^D can be advantageous to terminate such a process that reads a text file like that.

[6] That is to say, the hidden file named .bash_profile (yes, that leading dot is necessary) in your home directory, denoted by the tilde (~) in most Linux shells. Another option is, if you’re root, to modify /etc/profile to modify the option globally (that is, for all users).


[powered by WordPress.]

For the discussion of current and historical trends in the liberal arts, information technology, and religious thought. "Of all human pursuits, the pursuit of wisdom is the more perfect, the more sublime, the more useful, and the more agreeable."

Think.

navigation

categories

search

archives

November 2003
S M T W T F S
« Oct   Jan »
 1
2345678
9101112131415
16171819202122
23242526272829
30  

meta

ThinkBlog.org has been on the web since August 2003, with 292,449 words in 846 posts.

It is presently 09:31:03 on 09 May 2008, server side. All content except where otherwise noted Copyright © 2000-2006 Michael Phillips.

detail of Plato and Aristotle from 'The School at Athens' by Raphael

affiliations

Get Firefox! News for Nerds. Stuff that Matters.



Blogarama - The Blog Directory
Listed on Blogwise Listed on BlogShares

Blog Home

Login

31 queries. 1.921 seconds