Before the first string is translated, a project has already made choices that are expensive to reverse: where translations live, who can change them, how they are loaded, and what happens to them at deploy time. Lang files in the repository, a database table, a package with an admin screen and a hosted translation platform each answer those questions differently.
The articles in this category compare the options on the things that decide it in practice: what each costs at request time, how it behaves with many locales, what breaks at scale, and where each stops being the right tool.