The art of programming is the art of organizing complexity.
You may have to fight a battle more than once to win it.