I haven't commented publicly about this because I feel it's been adequately covered by the standard sources. The NDAA for 2012 contains very troublesome antiterrorism provisions, provisions that stand at odds to some of the better parts of American government: our philosophy of jurisprudence. It's not entirely accurate to think that we haven't faced challenges like this before, in that during times of the revolution we were facing (really making) hostile action on our (British colonial) soil, and dealing with (and making) terrorist attacks. Britain was a state actor in the full sense of the word though, America was not, and America's military tactics violated established traditions of war. Nontheless, because our revolution was significantly about incomplete civil traditions in the colonies, proto- and early- americans were sticklers for civil liberties, doing trials even in cases where in modern times we no doubt would prefer military-style jurisprudential action. This was not a less dangerous time; Britain represented an existential threat to the revolutionaries, and yet we remained civilised and kept to our traditions. The NDA2012's anti-terrorist provisions undermine our traditions by providing for indefinite detention without trial for citizens and foreigners alike (personally, I don't think foreigners deserve significantly different treatment in this regard), permitting it for US citizens and requiring military custody for others. It also permits this in the United States.
Obama signed the bill, adding a signing statement that he did not intend the provisions to be under effect during his administration. This obviously fails to be useful for preserving our traditions as it still permits later administrations to exercise these powers.
Why would he do it? A NDAA is required every year to fund various important government agencies. These typically involve some political struggle and grandstanding, and a failure to permit one to go through presumably would have highly negative effects. Obama might've decided to stick with his initial plan to veto any bill that contained this, but at a great political and national cost. Was it the right thing to give in on this? That's a complex question of political judgement.
Obama is a scholar on constitutional law; we might be more bothered that he would sign this than that congress would pass it. However, we might believe or hope that the controversial portions will be struck down by the Supreme Court (now or later) for being unconstitutional. Can we count on that? Is it damaging to keep tossing things like this at the Judiciary and see what they're willing to toss out?