I think that the way we choose candidates is one of the biggest problems with our current political system. It’s bad enough that we have a two-party system, but allowing them to choose our nominees from strictly within the parties lends itself to extremism.
As I see it, the party primaries encourage extremism on both sides. The most extreme members of the electorate tend to be the most likely to participate in the primaries, which means that candidates have to appeal to the extremists to get nominated. There were Republican candidates that I actually would have voted for if they’d been nominated in 2012, but they weren’t hardcore-conservative enough, so they were eliminated early in the primaries.
The party primaries always set up moderate, centrist candidates for failure, even though (in my arrogant opinion) the moderates would have far better chances in the general election, where most of the voters are moderate independents. The candidates with positions closest to the general population are always pushed out by the extremists.
The solution I see is to have open primaries instead of party primaries. On a specific date (probably in August), there’s a general election, and the two candidates with the most votes go to a run-off in November. If someone gets more than half of the votes in the primary, there’s no need for a run-off; that position is already decided.
The open primary would force candidates to try to appeal to the entire electorate during the “primary season”, instead of trying to appeal to the subset of their own party that they consider most likely to get them nominated, and I think that would result in better elected officials.