Well, obviously first-past-the-post is a joke, but what's better?

The first thing to mention is of course the two great theorems of electoral systems: Arrow's theorem, which shows that no system can be perfect, and the Gibbard-Satterthwaite theorem, which shows that no system can prevent tactical voting.

The simple answer is to use straightforward, proportional national closed lists for electing parliaments, and instant runoff voting for single positions like presidents. Simple, easy, workable, deeply flawed.

The gratuitously complicated answer is to use the two following systems.

For parliaments, the answer is PR Squared; this is a rather clever para-proportional constituency-based system, which maintains the geographical link between representatives and electors, but also allocates seats proportionally to the total national vote (or rather, proportionally to the square of the national vote; however, you can use any exponent, including one, and thus have it purely proportional, or three, and have it behave like FPTP). See also discussion.

For single positions, the answer is probably acceptance voting; i'm not sure about this, though - it seems to be strictly less powerful than a preference system. I still quite like it, however.