Is boilerplate code really so bad?