That the electoral college is obsolete is more than obvious. That it was ever a good idea is more than questionable, but as the rest of the world grows more democratic, it is a quaint vestige of a less-democratic era that hobbles the United States in many ways. In this most recent election, the vast majority of campaigning took place in about ten swing states. The rest of the country was largely ignored. This impacted voter turnout, which in turn impacted Congressional and state elections. So the mere fact that it is undemocratic is not the only reason why it has to go.
But that doesn't mean that it's easy to do it right. A lot should change before a national popular vote replaced the electoral college system. While some states have laws that pledge their electors to the winner of the national popular vote if and when more than 270 electoral votes are governed by similar laws, that is more of an expression of desire than a practical plan. We haven't amended the constitution in years and it's potentially a dangerous process, but it would make more sense to do one amendment that makes all of the required reforms.
Let's start by figuring out how a national popular vote for President would work. Would it be "first across the post"? That would allow the winner of a plurality, even one with less than 40% of the vote, to win. Unimaginable? Look at Maine, where teabagger Paul LePage became governor that way. The President should have a majority. The electoral college requires one, though to be sure the current fallback to the House is horribly dangerous and is one of the biggest reasons to redo the system.
So what would be the best way to ensure that? The old-fashioned way is to hold a runoff. But that requires that all of the votes be counted quickly and the determination be made. That's not impossible (see below). But given how long and disruptive our campaigns are, do we really want to have a second runoff campaign? A lot of elections have been won by someone with <50% of the total (Clinton, for instance).
So I'd suggest that we use instant runoff voting (IRV). This allows voters to pick a second choice. If their first choice is out of the running, their second choice vote becomes a "transfer vote" and is now counted. IRV has been used in a few places for a long time. Cambridge, MA uses it for city council elections. The downside is that it is a slow, complex process to count by hand. But if voting were electronic, then it would become practical. IRV would allow voters to vote their true feelings for first choice -- Nader, Buchanan, Stein, whomever -- and then vote for a possible winner. It would provide an avenue for third parties to start up, helping break the hold of often corrupt or extremist majority parties.
Who would get to vote? A national popular vote would take away the advantages of the small states, but they'd still have their two senators. It would also supersede the 23rd Amendment which gave the District of Columbia as many electoral votes as the smallest state. One citizen, one vote. Campaigns would become national, not focused on swing states. Small states would still count, as they're cheap media buys, but presidential campaigns would finally visit California, New York, Texas, and Illinois, large non-swing states.
And it would be time for the citizens living in non-state territories to get the vote too. A Puerto Rican can't vote at home but if they go to Florida or New York, they can vote there. Is that the way to treat citizens? Let citizen-residents of Puerto Rico, the USVI, Guam, American Samoa, and the CNMI also vote for President.
Now it's time to whack-a-mole. The problem with voting now is that it's technically a state matter, as states choose the electors. That is a constitutional relic that has to change. Perhaps states should have the right to control their own elections (though is it really democratic to allow states to distort their own political processes in this age of one person, one vote?), but they should not be allowed to mess up federal elections. So voting should be subject to federal regulation, not political state-level Secretaries of State. Congress would then have the authority to impose uniform standards. That should take care of tricks we've seen such as insufficient voting machines in urban precincts, short voting hours, and untrustworthy DRE machines (I'm looking at you, South Carolina!). Of course this can go wrong, but it is better to have a chance to legislate honest voting than to allow a few states to mess up the national vote.
And for that matter, why should people have to vote in one designated location? Voting by mail may be a viable option, but actual voting places are more than a tradition; many of us prefer that kind of voting. But that leaves lots of room for mischief too, not to mention honest screw-ups. My voting place was moved this year as part of post-census redrawing of precinct boundaries. I met one woman at the poll who had voted for 50 years at a spot right near her house, but she was redistricted to a polling station elsewhere in the city, and needed to take a taxi ride to vote. Why? Our telecommunications infrastructure, while not perfect, should be adequate to allow every voting place to be on line. So you should be allowed to show up anywhere, identify yourself, vote, and be logged as having voted so you can't do it again. (I'd allow exceptions for the Alaskan bush, where online is still problematic, but who's going to get to more than one polling station up there?) These are the kinds of details that don't belong in the Constitution, but belong in federal law.
While we're at it, I'd make one tweak to Congress. (I'd love to redo the Senate but that's not part of this process.) Since DC would vote for President like everyone else, let them have Congressional votes too. When the DC was established, it was represented in Congress by the states (Maryland and, at that time, Virginia) from which it was taken. Just allow DC to be treated as part of Maryland for purposes of representation in Congress. Then their license plates would no longer say "Taxation without Representation".
So in sum, I'd suggest we amend the Constitution to have a nationwide popular vote, with instant runoff voting, uniform national balloting standards, and votes given to all citizens, in territories as well as states. It would bring that aspect of our democracy up to modern standards.