I long thought having different school starting/ending times is the way to go. Like one cohort starting at 8 and another starting at 10 or even 11. Standing up at 8 is hard for me and I'm happy to be in a job where I can start working at 10, but here in Bavaria school starts at 08:15 and I had to set my alarm to 06:30 for a huge part of my life even tho I rarely fell asleep before 00:30,sometimes much later. The result was that I regularly missed a day of school, because I was just too tired to go. Luckily my parents were supportive.
Also my performance on the 8am classes was much worse than on later classes. In university I skipped all 8am lectures and even skipped early exams and waited for a "better scheduled" exam.
The worst part about it was how non-understanding all the early-birds are. They just didn't grasp that asking me to be awake and productive at 8am was like asking them to do work after 11pm and that "just go to bed earlier" isn't a working solution. Just ignorance of a different rythm.