For the last few months, I have been preparing The Hablator “Rose” 0.5 for a release. That release is finally here! This release is significant because it is the first time I have added features that innovate instead of ones that just copy other chat scripts. Of course, it still maintains its low server and client side requirements, and easy installation. Lets take a look at some of the newest features The Hablator has to offer.
My personal favorite feature, and the feature that was the most difficult to add, is translation support. If you live in the United States and you have friends in China, Russia, and Portugal, you can all log into The Hablator and see the chat messages displayed in your native language. It relies on Google Translate to perform the translations, so a massive number of languages are available. In addition to translating just the chat text, the user interface will be displayed in whatever language the user requests. Since human translations are much better than automated ones, it is possible to create translation files for the user interface. The Hablator will look for a user interface language file before going to Google Translate.
Another major feature is the addition of “topics”. During chat sessions, especially larger ones, groups of people will start talking about different things. In many current chat rooms, this is solved by prefixing the message with the username of the person they are replying to. This is okay, but has many disadvantages. First of all, it can get kind of annoying to map out the usernames. If you enter the chat room while people are having a discussion like this, you will have no idea what is going going. In many cases, certain people don’t care at all about what is being discussed in one discussion, but has to sort through all of the messages anyway in order to find what he/she is looking for. “Topics” solve all of these problems. When somebody is posting a message, they simply click a radio button indicating what topic they are discussing. Moderators can create and delete topics on the fly. Each topic is displayed in its own color, so that users can see at a glance exactly what is most relevant to them. Each topic can also be hidden dynamically, so if some people are not interested in hearing about a certain topic at any one moment, they don’t have to.
A bunch of usability improvements have been made as well. Most importantly, all history is scrollable. I made a serious mistake last time by only allowing 10 history lines to be shown at the same time. Now, just like previous versions, all history will be scrollable again. This version requires less bandwidth, and it has a much more efficient update method, resulting in a faster update. There is an optional notification displayed when someone posts a new message. This notification is unobtrusive. It either blinks or scrolls in the taskbar, an equivalent notification to what a desktop application may do. The messages are now formatted in a way that is easier to scan. The new swear words filter is not only easier to set up, but it also makes filtered swear words look nicer. In addition, you can finally tell exactly who is typing a message, because each user now has his/her own typing light.
One question you probably still have is, “Why, Max, is the codename ‘Rose’? The other code names, sounded so much tougher.” Well, I’ll tell you. One of the major features, as you already know, is translations. The Rosetta Stone has turned into a symbol of multilingualism in modern culture. If you want to insist on a “tough” name, just remember “Rosie the Riveter“. The previous code-names have been: ‘Stone’, ‘Bronze’, and ‘Iron’. They are all named after different ages in human history. I didn’t plan them very well, mainly because I expected “Iron” to be my last release. I ran out of ages! I could have named it “The Hablator 0.5 Neo-classic”, but that might have sounded strange. Instead, I decided to get off the “ages” system. I wanted to choose a name that still had some connection, yet one that could still be interpreted as completely irrelevant (or at least for those well-versed in Shakespeare):
What’s in a name? That which we call a rose
By any other name would smell as sweet.
Another question some may have is, “So, why is it called the “0.5 release” if it is stable?” Version numbering, especially in software projects that do not need specific names for advertising reasons, do not need big numbers. Ubuntu names its releases by the release date, Linux (the kernel) keeps its version number on 2.6.x, and Firefox just kind of chooses a number. I just go up 0.1 for every major release. Any maintenance releases will increase the version number by 0.01.
There are a bunch of other goodies that I didn’t talk about. If you made it this far, you might as well take another couple minutes to try the demo. Also, make sure to check out the home page. I hope you enjoy using it as much as I enjoyed developing it!