An interesting observation that I will make is that when don't ask don't tell first passed, both sides declared victory, but it was still a defeat for gay rights. This is the problem with compromise, you take a good idea (allowing gays into the military by not asking questions) and a bad idea (kicking them out if they admit it), you get a bad idea. If someone took a shit in a birthday cake, would you eat it? The cake has shit in it, but we are taught that it is good cause it's a compromise, so eat up!
Vulgarity aside, DADT also pissed off the right until they realized that it fulfilled a hateful niche to allow gays to stay in the closet and hate who they are. Now the right has embraced DADT as their own and are claiming that its repeal would let gays in even though there are already gays in the military, but they can't admit it yet. Obama and Democrats have been flaunting the DADT repeal for years, but haven't gotten around to it. This position seems cowardly and hints that they are afraid of a backlash from the right over it. Doing the right thing has never been easy, especially when those doing the wrong thing have convinced themselves they are also doing the right thing.