Please talk while gaming, with VoiceChatter

Playing a game with friends over the Internet is great, but typing conversations lacks the immediacy of a real conversation. That’s the filled by VoiceChatter, a free voice communication application primarily designed to be used during games, though it can be used for all sorts of purposes. It allows you to vocally talk to groups of other people over the Internet.

Developer Chris Weiland says he created VoiceChatter about two years ago because the available alternatives didn’t offer all of the features that people want. “Ventrilo does not allow you to run your own servers with full functionality and does not have a Linux client. TeamSpeak2 has inferior voice quality and does not have an official Mac client. Mumble suffers from what many open source projects suffer from: a GUI that could use some streamlining, software dependencies, and releases that are too frequent to keep up with. I just felt like there was a lot of room for improvement.

“My goal is to make something that is fully featured, yet so simple and intuitive that anyone can use all of the features without reading any documentation.”

VoiceChatter uses several open source libraries, such as wxWidgets for the GUI, PortAudio for audio, Speex for the voice codec, eSpeak for text-to-speech, and libsndfile for audio file I/O. “I chose the tools mostly because of their licenses. I could have used Qt instead of wxWidgets, but I liked wxWidgets better because it used the native GUI toolkit for maximum performance and minimum resource usage, all without sacrificing the user’s familiarity with the look and feel of their native platform. All of the other libraries were simply the best that I could find that were cross-platform and free as in beer and free as in speech.”

Weiland hosts the project’s code on SourceForge.net, but not its web page. “A SourceForge page is simply a must for open source projects, in my opinion. It’s a great way to get your project out in the wild and provides a lot of the services that a project needs to be successful. I didn’t host the web page there simply because I felt that I could have a more professional web site if I used a professional hosting company. I could have more disk space and have more control over things like domain names, PHP, and MySQL databases. Web hosting is also very cheap, to the point of approaching free these days, so a little coin goes pretty far.”

One cool feature that was added in the latest release lets you click on URLs to join VoiceChatter servers automatically. For example, after you have installed the VoiceChatter client, you can join the public server by clicking on voicechatter://Public%20Server@vcserver.dyndns.org:8787/. That will also import the server into your personal server list so that you can easily connect to it in the future.

Weiland says last week’s 1.4 release addressed most of the main features that he planned to implement. What comes next, he says, will depend on community requests. “One thing I know will be included soon is the ability to access and search the server logs using the client. This is useful, for example, if an admin is not online but is notified of a misbehaving client. The admin can search the log to find the IP address of the misbehaving client, even if that person is no longer on the server, and ban the IP.

“I’ve generally made a new release every two to five months, unless a major problem is discovered, in which case I fix the problem and release a new version right away. However, now that most core features have been implemented, that schedule may slow down a bit.

“I could always use some help, especially from a sound artist. There are many event notification sounds that are still missing. The graphic art is pretty good, but I’m open to contributions. I plan to make skins and sound packs a part of VoiceChatter. I’m also looking for hosting companies that are interested in hosting VoiceChatter servers. The best way to get in touch with me is through email or a post on the VoiceChatter forums.”

A simple, optimized open source document management application

In 2001, Stephen Lawrence, Jr., was looking for a document management application for his department at the University of California, Davis, to help with ISO 17025 compliance. “There really wasn’t much out there at the time, so I figured I would try to piece something together,” he says. Thus OpenDocMan was born.

OpenDocMan is a simple browser-based document management system designed to help organizations that need a centralized location to store their digital documents. It was written specifically to have the required features for the ISO 17025 standard for testing and calibration. It doesn’t have a lot of bells and whistles in it to muck up the core features, Lawrence says, but one nice feature is an automated upgrade tool. When a new version comes out, admins just need to click on the appropriate upgrade link for their current version and the upgrade tool takes care of all the changes needed for all versions as far back as 1.0.

OpenDocMan lets you have a group of “approvers” that review each new file, and each edit to a file. Those in this group can approve or reject each change. The application uses document permission settings that allow fine-grained access control, so each individual user can have his own rights to a file, and each department can also have its own levels of access. The software also includes functions you can turn on to turn the URLs into a hash value, thus making them more secure, because end users can’t then edit a URL to access other files or pages.

You can add any file types to the list of allowed files in OpenDocMan’s config file, so you can configure the system to accept any document format your company needs. You can – and should – use comment and description fields when you add a new file to make it easier to search later on.

Most of the application was written in PHP and JavaScript using Vim, and more recently using Zend Studio. Version 1.2.5.5 came out this week. Lawrence says version v2.0, in the planning stages right now, is going to be a re-write to:

* Move to MVC design, possibly using Zend Framework or something similar
* Utilize templates for all HTML using Smarty
* Create a new default user interface theme and allow for third-party themes
* Migrate the existing JavaScript to use the jQuery library
* Add a database abstraction layer – possibly ADOdb
* Add an API system to allow for third-party modules to be written to expand the core features

Lawrence is happy to accept help from creative folks who might want to create a new logo or some new themes. “I could also use another PHP pro to help with the 2.0 re-write.” If you’d like to help, you can find him on the OpenDocMan forum.

LimeSurvey is a peachy polling program

On the Web you can find many little utilities for doing quick polls, but if you want a professional open source survey tool, the first name on your short list should be LimeSurvey. It lets you create web surveys with many different kinds of questions, employ skip logic (that is, show a follow-up question only if a previous question had a certain answer), define open or closed surveys, and monitor the whole process with participant administration tools, quotas, a WYSIWYG HTML editor, email invitations and reminders, assessments, basic statistics, and more. Last week the project released its latest version, and this week it’s among the top 120 most active projects on SourceForge.net, with more than 400,000 total downloads and about 20,000 downloads every month.

LimeSurvey is especially useful for people who aren’t hesitant to code an additional line or two of JavaScript to make the tool do exactly what they want it to do. Because its source code is available to every user, it can be more powerful than any closed-source commercial tool – not to mention a lot cheaper.

Australian Jason Cleeland started the LimeSurvey project in early 2003, and worked on it for more than a year almost alone (besides user-submitted patches). Eventually other developers joined the project, and Cleeland turned over project leadership to Carsten Schmitz, though Cleeland is still an active team member.

Schmitz says the core team today includes three to five developers, a project and quality manager, at least three members helping in forum support, about 10 steady translators, and a horde of casual translators. LimeSurvey is available in more than 50 languages and dialects. To coordinate everyone’s efforts “we have a weekly development meeting on IRC (channel #limesurvey on Freenode.net) where talk about our next steps,” Schmitz says. “We are like a big family; I try to have an open ear and open mind all the time.”

While each team member decides what tools he will use for PHP development, the project was “lucky to get some free PhpED licenses sponsored by NuSphere, which we really appreciate since it is a great PHP IDE. We pay close attention to the HTML output, so LimeSurvey is 99.9% W3C complaint (XHMTL transitional). For that we are using mainly Firefox and plugins like HTML validator, the web developer toolbar, and Firebug.”

While Schmitz says “the project was basically born on SourceForge.net,” it has outgrown the site in some areas. “In the beginning we used almost all of the sf.net resources, like the forum, tracker, etc. But we found these tools to be very limited in function, so we set up our own server to install Joomla! and needed components. We also moved the documentation to our own wiki and the bug tracker to Mantis.” But the project retains a presence on SourceForge.net. “It’s a great platform to be ‘seen.’ We appreciate the file hosting and Subversion hosting very much since it is reliable and fast. We also use the mailing list functionality, which is working great.”

LimeSurvey is under very active development. “We have two main branches: one is the actual 1.x branch, the other one is the future 2.x branch which is still under development and completely written from scratch. For the next 1.x versions we will focus mainly on usability issues we learn about from users via feedback from LimeService, which is our own ASP platform for LimeSurvey. Thanks to LimeService I am able to work full-time on the LimeSurvey project; because of the huge number of LimeSurvey users and downloads, and the big load of project management, it would not be possible to do this part-time.

“For LimeSurvey 2 we will continue and focus development during the Google Summer of Code.”

Schmitz says, “We follow the basic line ‘Release early, release often.’ To be able to give people the latest fixes we have weekly so-called ‘Plus’ releases. They are the same basic release version but with all fixes applied so the version is rock-stable after a few weeks. Bigger versions are released about every three to six months.”

The project leader says LimeSurvey could use help in a couple of areas. “We need a translation community manager – someone to take care exclusively of translations and translators. We also need PHP developers who can commit on a steady basis and who maybe have experience with surveys. We also have a list with many more tasks. LimeSurvey usually does not attract lots of coders, since the topic ‘surveys’ is usually not so close to the coding geek. Therefore we are always happy to welcome new people to our team.”

WordPress Themes