Что предпочтительнее, таблица-связь или несколько доп. поля?
Зависит от того, что вы ставите во главу угла.
Если производительность, то все равно в итоге придете к частичной денормализации.
Ваш пример с translateAuthor - если запросов к статьям очень много, то есть смысл сохранить имя автора прямо в таблице статьи, чтобы не лезть отдельным запросом за ним.
А если немного - то и хрен с ним. Чувствуете? Все от задачи зависит.
И еще есть PostgreSQL и hstore ;)
Как показывает опыт при использовании реляционной БД флаги (isXYZ, etc) добавляют гораздо больше проблем, чем выгоды. Для документно-ориентированных БД такой проблемы нет. Также можно посмотреть в сторону наследования таблиц в реляционных БД (например в Postgres).