North Carolina is not the outlier everyone thinks it is. Thirty states have constitutional amendments defining marriage as between a man and a woman. Personally I believe the amendment is stupid and a waste of time. If marriage is so self-evident, why does it need to be defined?
The main reason for the amendment and other movements like it is fear. Fear drives all of these social issues. Obviously this is not something government should waste its time on. Government should focus on schools, police, roads and infrastructure. But social issues are an easy distraction, and they blind us from our government not doing its job.
Yes it is unfortunate North Carolina enshrined discrimination in a document meant to protect peoples' rights. As a practical matter, the amendment is so poorly worded it won't make much of a legal difference. Same sex marriage wasn't legal before the amendment. So not much has changed.