I personally think it's better to break backwards compatibility if you're removing or changing something that was bad in the first place. Otherwise, there is no need, and thus it never breaks. Much like in the case of your list of non breaking programs.