BabelKit Requirements and FAQ
Q. What are the requirements to run BabelKit?BabelKit should run anywhere that PHP or Perl run, on Unix, Linux or Windows.
BabelKit will run on any database management system with an SQL interface. A sample MySQL schema is provided. If you use BabelKit with another database send me your schema and I will add it to the next release.
The Perl version needs the DBI.pm package. You can use any CGI library such as CGI.pm.
The PHP version will work out of the box using the PEAR, ADODB or phplib database libraries. Porting to a new database library is trivial. Let me know if you need another one.
CodeKit is licensed as free software which means that you can use it for any project. If you do, send me a note saying how it went!
Q. We are developing a multilanguage portal at the moment. How could I take advantage of this utility?BabelKit was originally developed for a multilanguage portal. They do user surveys in multiple languages and keep registered user demographics. The answers to those questions are kept in database tables as coded fields. "1" means "Programmer", "2" means "Web Designer", etc.
The multiple choice questions are displayed to the users in their browser display language as HTML web page select elements. The resulting data is also presented in any language using BabelKit method calls to look up the appropriate description translation.
BabelKit is made for any database application which keeps coded values in database fields and needs to be able to display the descriptions of those codes in multiple languages. It takes all the programming work away from that part of the project :-)
Will BabelKit work with a templating system?The BabelKit.php class file will generate very nice user language sensitive HTML select elements. You should be able to call $babelkit->select(...) from within the templating system. It returns the select element as a string which you can print or insert into the page:
$str = $babelkit->select('offered_courses', $user_lang); print $str;Even if you do not use BabelKit to generate HTML, it is still useful as the interface to enter, translate and maintain all of your database the codes and their multilanguage descriptions.
When is English a good choice for the 'native' language?There are two primary issues to consider:
1. You only want to translate code descriptions once from a single source language rather than provide translations of translations which may become less accurate. So if possible choose a source language which will ease the translation process. You many find it easier to find English to Chinese translators for example than Finnish to Chinese translators.
2. When a translation set is incomplete the missing language descriptions will be filled in with the 'native' language. English may be a good choice for the 'native' backup display language because many people can understand it.