The so-called "straight-talking" senator John McCain, who often finds himself behind all sorts of bi-partisan efforts in Washington, has become a favorite of many centrists, moderates, and independents for obvious reasons. He also, however, seems to alienate the wings, including that of his own party. Staunch conservatives grumble that he all too often compromises on issues for which there can be no compromise, and therefore don't trust him to advance the conservative agenda. Many on the left still see him for what he really is: a pro-life Republican. This combination has made McCain into a real contender for the presidency in 2008 (as it did in 2000), but has paved an extremely hard road for him through the primaries.The logic goes that in the general election, all the Republicans will grit their teeth but vote for their own party (it would take a lot more than a maverick Republican to get them to vote for Hilary). In addition to getting the Republican base by default, McCain would also dip enough into the traditionally Democratic but centrist pool to win the White House.The question, then, for those of us who want to see McCain end up as president is to figure out how to get him through the primaries. McCain would be going up against "loyal" Republicans, with no track record of compromise on the most important conservative issues. While it can probably be counted on that Republicans will vote for McCain over Hilary in a potential general election, it probably can't be counted on that Republicans will vote for McCain over "true" conservatives in the primaries because he might face Hilary later. In addition, we can expect nothing less than a Bush-Rove style attack machine to come out again; this is what doomed McCain in the 2000 primary and lead to Bush's first-term victory.So, should I--a centrist Democrat with conservative leanings on foreign policy and economics--switch parties and have the opportunity to cast a vote for McCain in the Republican primary? It's looking more and more like that is the case.