Instability

The problem is that the "world out there" is constantly changing, everything is impermanent and it is impossible to make a permanent relationship with anything, at all.

From a brief introduction to Buddhism by Mike Butler.

Introducing gettext and .PO files

poedit screenshot
As I said recently, i18n and l10n are best carried out using the right tools...

I've looked around somewhat and it turns out there seems to be an absolute reference in the area: the GNU gettext framework.

This framework actually comprehends several things:

  • A set of conventions about how programs should be written to support i18n;
  • A directory and file naming organization for the translated strings;
  • A runtime library to display localized text;
  • A set of utilities to handle the l10n process;
  • A special mode for Emacs which helps preparing the sources for i18n.

Read more »

The idea behind open source

Karl Fogel has it pretty much clear in Chapter 1 of his book: "Open Source Development with CVS - 2ND EDITION":

Imagine a science-fiction device that allows any sort of food or physical object to be infinitely duplicated. If somebody then tried to sell you a tire for your car, why in the world would you buy it? You could just throw your friend’s tire into the duplicator! However, you might want to pay somebody to design a new tire for you or perhaps to install the tire on your car. Or to help you when some other part of your car breaks, you might want to buy a warranty for future support. Or maybe just hire a personal mechanic.

Similarly, in a world where all software is in the public domain and infinitely reproducible, programmers and software companies are able to make a good living not by restricting the flow of software, but by providing a service. Users pay the programmers and companies to design and write new public domain software, as well as install, maintain, customize, troubleshoot, and teach others about it. A programmer or company sells labor, not products — much like a mechanic, plumber, or electrician.

Introducing i18n and l10n

When you develop a piece of software or a website up to a certain point, there comes a time when you try to reach an international audience.

No doubt your first move will be to provide an English version of your software or website.

However, you will soon realize this is not enough. Of course, many people do understand English to some extent; but you have to realize how painful it can be for them. Maybe you don't even realize how easily you can understand English compared to the average. Of course, if you are yourself a native English speaker, you need to try and imagine that every software you use comes in French or German by default! How would you feel about that? :P

Furthermore, you may have spent some time on making your software or website accessible. Users can now change the font size and enhance contrast if they have trouble reading those lines of funky rendered text... That's fine... but what's the use if their problem is not with the formatting but with the language!?

Read more »

MagpieRSS

MagpieRSS provides an XML-based (expat) RSS parser in PHP.

MagpieRSS is compatible with RSS .9 through RSS 1.0, and supports the
RSS 1.0's modules (with a few exceptions).