I use a pseudo point buy. You get a certain number of points to spread among your abilities. For each point value, for each point value you can either take a set ability score or roll a specified set of dice. For example, 6 points gets you a 12, or you can roll 4d6. 9 points gets you a 14, or 5d6 rerolling all 1's. In general an even stat costs 2 more points, and an odd stat costs one more point. So a 12 costs 6 points, then a 13 costs 7 points, and a 14 costs 9 points. Also, on average you'll do slightly better rolling dice (you lose a little to get certainty in your abilities). The only exception is 15 points, which gets you 18 points or 2d6+1d8. There the average for the roll is lower, but you do have the chance of getting a 19 or 20.
It's complicated, but it solves a lot of problems. Characters are balanced without being cookie cutter; people who like point buy can do point buy and people who like to roll can roll; you pay more to get the even stats where the bonus goes up, but you don't have to pay through the nose to get good stats. Generally players buy a few important stats as set values, and then roll the rest (depending on how comfortable they are with dice).