So I already stated one of the problems with the public education system (such as it is)--that teachers aren't given the time or the motivation to teach the ways that are most effective for learning concepts. Another problem is the "that's the way it's always been done" syndrome. Take grades/ages for example. There is NO GOOD REASON to have an arbitrary cutoff age for any given grade. It makes zero educational sense.
In fact, it makes little education sense to have, say, "first grade math" taught at the same time as "first grade reading" and "first grade social skills." Not every kid is ready for 1st grade math at the same time as social skills. We need to have developmentally appropriate subject matter taught--even if it means Johnny (age 9) is learning math with 12-year-olds and reading with 6-year-olds, IF THAT IS WHAT HE'S READY FOR.
tying what you learn to how old you are is stupid. Assuming every kid can learn the same level of every subject at the same age is equally stupid.