I just watched Conrad Wolfram's (WolframAlpha) TED talk called "Teaching kids real math with computers" and thought he had some great ideas. Wolfram advocates teaching kids to solve math problems like they will in the real world, with computers, instead of stressing learning how to calculate by hand which in today's world is more or less useless.
The topic of math education reminds me of my own experience with public school math. In 3rd through 6th grade I was in a "gifted" program where, among other things, we were allowed to go at our own pace in math. The minimum amount of assignments that needed to be turned in a week was set, but you could complete as many as you wanted beyond that. As a result, I was working on the 6th grade math curriculum in 4th grade, and by 5th grade had finished it and worked through books on algebra, geometry, and trigonometry. In 6th grade, my teacher, having run out of books, assigned me and another student to build a scale model of the school - which was a little too much freedom for a couple of 6th graders, because we never actually got anything done that year.
After 6th grade, the system started to fail me. In 7th grade I easily tested into an "honors" math class, which consisted solely of arithmetic and some "pre-algebra." For the next several years I took pre-algebra (again - after moving and switching schools, this was once again the most advanced option), geometry, algebra, and pre-calculus, covering very little material beyond what I had taught myself in elementary school. In 12th grade I took AP Calculus, dropped the class halfway due to boredom and still managed to pass both parts of the AP test - because I understood the fundamentals, and didn't need to spend half a year drilling them.
The lack of advanced options for smart students, in my experience, turns them into slackers. There is absolutely no merit in doing three years' worth (or even a single year) of drills in "pre-algebra" once you grasp the concepts you're working with. It becomes grunt work, and this is why, until college, I viewed math as something that I was naturally good at but found dreadfully boring.
Anyway, I think that Wolfram's suggestions have a lot of potential for keeping advanced students more involved in learning about math. I liked the idea of being given free reign to solve a real problem - for example, "what type of car insurance should I buy?" This is a real world application of math that will stick with a student much longer than quadratic equation drills. Give the students some parameters (what type of car, mileage) and let them gather data and solve the problem on their own. I think this type of approach to education is needed to generate students that are computationally literate - which is more important in today's world than being able to crunch numbers by hand.