Brussels / 4 & 5 February 2023


20 years with Gettext

Experiences from the PostgreSQL project

PostgreSQL has supported national language support (NLS) (that is, message translations) with Gettext for over twenty years. This has been a valuable feature, but naturally not without challenges.

I have been involved in this effort as a toolsmith, organizer, and translator.

We have had interesting challenges making Gettext work reliably in a client/server system and to make it cooperate with the other internationalization facilities in the system. We also had to write a lot of our own tooling to manage the translation work, merges with the code, and so on. We also have translations of the documentation, which use separate workflows. PostgreSQL is a relatively small community and the software is mostly not facing end users, so the possibilities for recruiting translators and other volunteers for this are limited.

In this presentation, I want to give an account of the work we have done in the PostgreSQL project to make translation and internationalization in general an integral part of the project and start a conversation with other practitioners about best practices and the future of the tooling.


Photo of Peter Eisentraut Peter Eisentraut