There’s a great word in German. It’s called “Arscharbeit”. It literally means “ass work”. But what it really means is a task that basically just sucks. Is brute force, requires very little thinking, and is just boring and tedious.
Today and tomorrow I have to do some “Arscharbeit” because we didn’t plan localization well enough and now want to re-organize a lot of the way it is done.
We chose a wishy-washy, not clearly defined key-naming system. In the end it wasn’t quite clear what context the key was defining, so we just had a mash-up of weird key names. The task now is to rename all of these, put certain keys into specific tables so that re-use will be easier. And I know that in the end the entire app will still require a complete visual inspection because of values for keys gone missing.
I won’t go into the details of the refactoring job because it got messy. I will provide you with two links and just say “Don’t waste time and money. Read these and do something about them AT THE BEGINNING OF YOUR PROJECT.” Fixing later is annoying, boring, and expensive.